• 締切済み

フォートラン

次のような問題 質量mの質点が、次の運動方程式にしたがって1次元的に運動しているとする m*(d^2x/dt^2)=-αx+βx^2 (♯1) ここでxは質点の位置座標、αおよびβは適当な次元を持つ正の定数である。 という問題を 任意の初期条件から出発して数値解を求めるための手順書を作成したいのですが、Fortranで書きたいのですが どのように書けばいいのかわかりません。 考えたこと数値計算に適した形に直すと ((♯1)の無次元化 x=(m^a)(α^b)(β^c)X t=(m^d)(α^e)(β^f)T a,b,c,d,e,fは未知数。これを、微分方程式に代入して(d^2X/dT^2)=X+X^2)

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

「Fortran じゃなくて他の言語なら書ける」というのであれば, 他の言語で書いておいて (本でも参考にしながら) Fortran に変換する. そもそもどうやって微分方程式を数値的に解くのかがわからないときには, そっちを先に調べる.

  • noocyte
  • ベストアンサー率58% (171/291)
回答No.1

誰も回答しないようなので…. 数値計算には詳しくないのですが, 常微分方程式の数値解法であれば「ルンゲクッタ法」で検索されてみては? ルンゲ=クッタ法 (Wikipedia) http://ja.wikipedia.org/wiki/%E3%83%AB%E3%83%B3%E3%82%B2%EF%BC%9D%E3%82%AF%E3%83%83%E3%82%BF%E6%B3%95 ルンゲクッタ法とは http://www.ccad.sccs.chukyo-u.ac.jp/04Presen/kouichi/runge.htm

tarepan
質問者

お礼

ルンゲ クッタ法でやってみました!! ありがとうございました