
溝口純敏様著「Maxima を使った物理数学基礎演習ノート」(PDFファイル、以下「演習ノート」と略)を拝読中。今回読ませていただくのは28ページ。「3.2 一階微分方程式 3.2.2 同次形」です。過去回でも同次形やってはいたのですが「変数変換」せずに解けるところばかり。今回は変数変換必要な演習させていただきます。
※ MaximaおよびそのGUIであるwxMaximaの以下バージョンを使用させていただいております。
-
- wxMaxima 22.04.0
- Maxima 5.46.0(x86_64-w64-mingw32)
- SBCL 2.2.2 (SBCL = Steel Bank Common Lisp )
※ Maxima を使った物理数学基礎演習ノート は以下のバージョンをダウンロードさせていただきました。
令和4 年3 月 第八回改訂
過去回での一階同次微分方程式
過去回でも同次微分方程式、一応練習はしていたのです。
忘却の微分方程式(130) 反復練習93、ODE2で同次微分方程式など一撃よ、Maxima
そして、教科書から引き写したお言葉として以下を掲げてます。
この形の微分方程式であれば変数変換によって変数分離形に帰着できる
そして教科書的なステップとして以下を書き連ねてます。
-
- まず右辺を変形してy/xの関数であることを確かめておいてから変数変換
- そして変数分離形の公式に当てはめて微分方程式の解を求める。
しかし、ode2関数は切れ味鋭く、上記の回の例題は、最初からode2()関数にお願いしてもちょいと後処理で形を整える必要があったものの、解にたどり着いてしまいました。アカラサマな変数変換など使わないで済んでました。
解けね~ずら。
今回の例題
「演習ノート」の要変数変換な例題をやるために必須のおまじない(依存関係の宣言)が以下です。
yはxの関数ですが、変数変換につかう u もxの関数であると。これを抜いてしまうと、uは定数みたいに扱われるので、うまく処理が出来ないみたい。
ここでよゐこが直ぐに気づくのは、黄色のマーカ部分です。上にかかげた「ダメな例」のEQ009では’diffなどとしていたのに、直上のEQ000では diff とクォート不要です。これもdependsで宣言しているご利益の一環かと。
さて変数変換自体はシンプル?です。「演習ノート」のお教え通り。
solveしているFUYの方は、最後の結果からuを取り除くときに使うものです。最初はFYUね。まずはFYUを使ってyをx+uで置き換えます。こんな感じ。
このとき、上記の黄のマーカのところに、dx/dxみたいなものがあるのが煩わしいので、dx/dxを評価してもらって定数1にしてしまうようです。
目論見どおり、左辺からdx/dxは滅したので、これをode2にお願い。そして出た結果の中のuをy-xに戻せば解が得られると。
お惚け老人には十分複雑な式ではあるけど、解けてはいるみたい。ホントか?