ダッフィング(Duffing)方程式の感度

初期条件に対するダッフィング方程式の感度を調べる.

後に続く計算を簡単にするため,ParametricNDSolveValueで初期条件だけをパラメータとして使い,他の値は固定のものを使う:
ab についてのParametricFunctionの導関数は,それぞれ x とその導関数であるx の初期条件に対する感度である:
{0,0}で始まる解のプロットと,感度の対数プロットを示す:
非常に高い感度は,どちらかのパラメータを少し変えただけでも,解に大きな変化が見られることを示す.以下に示すのは,原点から両方の方向に少し摂動した場合の解である:
感度を可視化するもう一つの方法は,位相面の軌道の方向に平行と垂直なコンポーネントに局所的に分解する方法である.
時間の関数として軌道に垂直なベクトルを返す関数を定義する:
今度は,平行と垂直の方向に,x の初期値についての感度のコンポーネントの大きさを返す関数を定義する:
この方程式については,2つのコンポーネントが同じ程度に増える.
コンポーネントを分解することで,位相面の可視化をうまく行うことができる.感度のスケーリングを変えることによって,さまざまな時間区間についてこれを見ることができる: