Cet article est de Steven H. Strogatz ["Strogats Non-linear Dynamics and Chaos"](https://www.amazon.co.jp/%E3%82%B9%E3%83%88%E3%83%AD% E3% 82% AC% E3% 83% 83% E3% 83% 84-% E9% 9D% 9E% E7% B7% 9A% E5% BD% A2% E3% 83% 80% E3% 82% A4% E3 % 83% 8A% E3% 83% 9F% E3% 82% AF% E3% 82% B9% E3% 81% A8% E3% 82% AB% E3% 82% AA% E3% 82% B9-Steven-H -Un résumé de la dynamique non linéaire et du chaos créé à partir de Strogatz / dp / 4621085808) et du code d'implémentation en utilisant Python. Pour donner une brève auto-introduction, l'auteur de cet article est un étudiant en mécanique dans une université nationale locale, et les mathématiques qui apparaissent dans cet article ont été essentiellement apprises par lui-même. (Donc je m'inquiète pour l'exactitude.) Je pense qu'il vaut mieux y penser comme un mémorandum qu'un amateur a implémenté les équations qui apparaissent dans ce livre en pensant seul. Nous prévoyons d'ajouter le contenu des autres chapitres un par un. Si vous constatez des erreurs, je vous serais très reconnaissant de bien vouloir les signaler!
Tout le code de l'article est celui exécuté par Python3.8.2.
Dans cet article, conformément au livre de Strogats, Nous traiterons les équations unidimensionnelles → équations bidimensionnelles → équations tridimensionnelles (apparition du chaos) dans cet ordre. Considérons d'abord une équation unidimensionnelle, c'est-à-dire une fonction qui peut être exprimée sous la forme suivante.
\frac{dx}{dt} = f(x)
Pour trouver la solution de *** $ x '= f (x) $ *** à partir de n'importe quelle condition initiale *** $ x_0 $ ***, utilisez une particule virtuelle *** $ x_0 Placez-le dans $ *** et observez comment il est porté par le flux. Au fil du temps, ce point se déplace le long de l'axe *** $ x $ *** selon une fonction *** $ x (t) $ ***. Cette fonction s'appelle la ** trajectoire de la solution ** à partir de *** $ x_0 $ *** et représente la solution de l'équation différentielle à partir de la condition initiale *** $ x_0 $ ***. Celui qui représente toutes les activations qualitativement différentes du système est appelé ** diagramme de phase **. Dans ce diagramme de phase, le point où *** $ x '= 0 $ *** est appelé ** point fixe **.
example1_1.py
import sympy as sym
from sympy.plotting import plot
x = sym.Symbol('x')
dx = x**2 - 1
plot(dx, (x, -10, 10), aspect_ratio='auto', title='example1.1', xlim = (-5, 5), ylim = (-3, 25),ylabel="x'")
Maintenant, considérons une méthode pour analyser la stabilité près d'un point fixe comme le montre l'exemple précédent. *** $ x ^ \ ast $ *** comme un point fixe, *** $ \ eta (t) = x (t) -x ^ \ ast $ *** comme *** $ x ^ \ ast $ Que ce soit une petite perturbation de ***.
\begin{eqnarray}
\dot{\eta} &=& \frac{d}{dt}(x-x^\ast)=\dot{x}\\
&=& f(x)\\
&=& f(x^\ast+\eta)\\
&=& f(x^\ast)+\eta \cdot f'(x^\ast) + o(\eta^2)\\
&\simeq& \eta \cdot f'(x^\ast)
\end{eqnarray}
Par conséquent, la linéarisation autour du point fixe est
\dot{\eta} \simeq \eta \cdot f'(x^\ast)
On peut voir qu'il peut être exprimé comme. (L'expansion de Taylor a été utilisée dans la transformation de la 3ème ligne à la 4ème ligne dans l'extension d'expression) Basé sur ce résultat
De là, un théorème très important pour considérer un système mécanique non linéaire.
*** $ \ dot {x} = f (x) , x (0) = x_0 $ ***. Supposons que *** $ f (x) $ *** et *** $ f '(x) $ *** soient continus sur l'intervalle ouvert R sur l'axe *** $ x $ ***. On suppose que *** $ x_0 $ *** est un point dans R. Ensuite, ce problème de valeur initiale est résolu par *** $ (- \ gamma, \ gamma) $ *** en se promenant *** $ t = 0 $ ***. *** $ x (t) $ Avec ***, cette solution est unique. En d'autres termes, si *** $ f (x) $ *** est suffisamment fluide, la solution existe et est unique </ font>.
Recommended Posts