NDSolve::ndnum NDSolveValue::ndnum ParametricNDSolve::ndnum ParametricNDSolveValue::ndnum

詳細

  • このメッセージは,微分方程式に非数値の式が含まれている場合に表示される.
  • このエラーの原因は,通常NDSolveの第1引数の型をチェックし,すべての記号パラメータに数値が割り当てられていることを確かめることによって特定できる.
  • 非数値式は,入力中の変数,解,全ての導関数に乱数または一般的な値を代入し,評価の結果から数値ではない式を探すことで見付けることができることが多い.
  • このメッセージの原因が特定できない場合には,テクニカルサポートまで事例をお送りください.
  • Off[message]はメッセージが表示されないようにし,On[message] はメッセージが表示されるようにする.(例:Off[NDSolve::ndnum]

例題

  (3)

エラーが起るのは,入力が数値を持たない記号パラメータを含むからである:

パラメータに数値を指定すれば,計算は成功する:

以下の入力を評価すると,解のプロットが得られる:

方程式の解かれた形は初期条件で特異であるのでエラーが起る:

1つの可能性として,0の代りに小さな で始める方法がある:

SolveDelayed->Trueと設定することによって,方程式の解かれた形で特異点を避けることができる:

解が位相面プロットからの解とほとんど同じであることが分かる:

SparseArrayの内容が評価するには不明瞭であるのでエラーが起る:

NormalSparseArrayで使う: