Simulation of Shive wave machines using GNU Octave, Python and C++ / Simulation von Wellenmaschinen mit GNU Octave, Python und C++


الملخص بالإنكليزية

In Shive wave machines - Wave propagation, dispersion, reflection, simulation (arXiv:1503.02088) technical details of Shive wave machines are discussed. Wave propagation on these machines is simulated using the commercial numerical computing environment MATLAB. The MATLAB functions are compatible with GNU Octave, a free MATLAB alternative. The lower execution speed compared to MATLAB can be somewhat compensated by converting the underlying differential equations to matrix form. With Python or C++, these and similar simulations can also be performed easily. Suitable vector and matrix libraries, ODE solvers and plotting libraries for these programming languages are available free of charge on the internet. ----- In Die Wellenmaschine - Grundlagen der Wellenausbreitung, Dispersion, Reflexion, Simulation (arXiv:1503.02088) werden die in Schule und Hochschule verbreiteten Wellenmaschinen naher betrachtet und die Wellenausbreitung auf solchen Maschinen mithilfe von MATLAB simuliert. Die kommerzielle Software MATLAB ist freilich nicht uberall verfugbar, sodass sich die Frage nach freien Alternativen stellt. Der MATLAB-Quelltext im genannten Artikel kann zum Beispiel mit GNU Octave ausgefuhrt werden. Die im Vergleich zu MATLAB geringere Ausfuhrungsgeschwindigkeit lasst sich durch Umformung des zu losenden Differentialgleichungssystems in Matrixschreibweise zumindest teilweise kompensieren. Aber auch mit klassischen Programmiersprachen wie Python oder C++ lassen sich diese und ahnliche Simulationen leicht durchfuhren. Passende Bibliotheken zur Arbeit mit Vektoren und Matrizen, zum Losen von Differentialgleichungen und zur animierten Darstellung der Simulationsergebnisse werden im Artikel vorgestellt.

تحميل البحث