Mathematica 製品
-----
 /
Mathematica
*密な線形代数の高速処理
*疎な線形代数の高速処理
*大規模線形系
*大きな数の演算
*64ビットのプラットフォームのサポート
*スピードアップしたMathLink
<微分方程式の数値解法
*数値方程式の解法
*データのフィット
*数値最適化
*DSolve
*RSolve
*Reduce
*Resolve
*FindInstance
*記号的大域的最適化
*領域指定の幅広いサポート
*接続テクノロジー
*インポートとエキスポート
*統計のプロット
*評価中の式の累積
*新しい線形代数関数
*代数的数オブジェクト
*著作と発表
*新機能の一覧
*このページについてのお問い合せ

微分方程式の数値解法

Wolfram Mathematica 6の新機能をご覧ください

一体型の数値微分方程式ソルバである関数NDSolveが完全に書き換えられました.パフォーマンスが顕著に向上し,新しいクラスの方程式も解くことができるようになりました.また,解を最適化するための方法は,広範に渡るメソッドの中から自動的に選ばれます.上級ユーザには,ソルバの進行状況を監視するための新機能による高度な制御の他,評価およびメソッド選択での数多くのオプション,ユーザ自身のカスタムソルバをNDSolveに実装する方法までも提供します.

詳細 戻る進む

最も重要な改良点として,以下のようなものがあります.

  • より効率的な実装による,多くの種類の微分方程式の大幅なスピードアップ
  • NDSolveで一部の微分代数方程式を解くことが可能に
  • 陽的ルンゲクッタ法,任意次数の陰的ルンゲクッタ法,外挿法を含む新たな解法
  • NDSolveで(n+1) 次元の偏微分方程式を解くことが可能に
  • NDSolveがべクトル変数および配列変数をサポート
  • 新オプションのEvaluationMonitorおよびStepMonitorにより,解の進行状況の監視および解法の絞込みが可能に
  • ユーザ定義の方法を含むための新しいフレームワーク
  • NDSolveの適用,メソッド,オプションを含むアドバンスドキュメントの追加

NDSolveは問題のタイプによって,自動的に最適のメソッドを選択します.また,方程式が硬い系から硬くない系に(あるいはその逆に)変わった場合等,評価過程でも必要に応じてメソッド変更します.

例:偏微分方程式を解く

以下のアニメーションは,Korteweg-de Vries方程式を解くための新しいアルゴリズムである線の方法による数値解法を適用し,孤立波の相互作用が非線形であることを示したものです.この例では,擬スペクトル離散化メソッドを使用することで,卓越した空間分解能が得られています.

例:行列微分方程式を解く

ここでは,行列微分方程式をX' (t) == A . X (t)を初期条件X(0)で解きます.ベクトルおよび配列変数がサポートされるようになったため,NDSolveに直接入力することができます.この方程式は線形なので,返される解は. 基本解行列の数値近似です.もちろん,NDSolveはベクトルや行列変数を持つ非線形方程式も扱うことができます.

NDSolve[{X' (t) == -( [row 1] 1  2  3   [row 2] 4  5  6  [row 3] 7  8  9 ) . X (t), X (0) == ( [row 1] 1  0  0   [row 2] 0  1  0  [row 3] 0  0  1 ) }, X[6], {6, 0, 3} ] ;

解のグラフ

例:微分代数方程式を解く

以下のプロットは,反応装置の中の化学物質の濃度が,反応過程でどのように変化するかを示したものです.NDSolveが自動的に方程式のタイプとメソッドを選び,1ステップで化学反応をモデル化する微分代数方程式を解きます.

NDSolve[{
   y1'(t) [LongEqual] 10^4 y2(t) y3(t) - 0.04 y1(t),
   y2'(t) [LongEqual] -3 10^7 y2(t)^2 - 10^4 y3(t) y2(t) + 0.04 y1(t),
   y1(t) + y2(t) + y3(t) == 1,
   y1(0) [LongEqual] 1, y2(0) [LongEqual] 0, y3(0) [LongEqual] 0
}, {y1, y2, y3}, {6, 0, 1000000}];

グラフ:3つの反応物質での理想的な化学反応


関連リンク


Mathematicaブックからのドキュメント Mathematica ブックからのドキュメント
Mathematica における数値計算的な数学
微分方程式の数値解法
発展:アルゴリズムのモニタと選択
  
「アドバンスドキュメント」からのドキュメント アドバンスドキュメント
NDSolve
  
「組込み関数」からのドキュメント 「組込み関数」からのドキュメント
NDSolve
EvaluationMonitor
StepMonitor
  
その他のリンク その他のリンク
アルゴリズムの自動選択(主要テクノロジー)



トップへ 戻る進む



 © 2008 Wolfram Research, Inc.  Terms of Use  Privacy Policy | [en]