![]() | ヘルプをダウンロード(Windowsのみ) |
所有クラス: ode
要件:MathScript RTモジュール
[t, y] = ode_rk45(fun, times, y0)
[t, y] = ode_rk45(fun, times, y0, options)
従来名: ode45
ルンゲ・クッタ45ODEソルバーを使用して、ODEシステムのy値を決定します。ode_rk45(fun, times, y0)は、ODEソルバーに対して、デフォルトパラメータまたはodepset(name1, value1, ..., nameN, valueN)で指定したパラメータを使用します。ode_rk45(fun, times, y0, options)は、ODEソルバーに対して、オプションで指定されたパラメータを使用します。
名前 | 説明 |
---|---|
fun | .mファイルで定義および保存された、ODEシステムを表す関数の名前を指定します。この関数は、function dy = fun(times, y)の形式でなければなりません。 funは文字列です。 |
times | [0, 20]など、時間範囲について開始時間と終了時間を指定するか、または1:20など、時間ポイントのいずれかを指定します。timesは完全に単調である必要があり、倍精度実数ベクトルです。 |
y0 | 開始時間でのy値を指定します。 y0は倍精度実数ベクトルです。 |
options | ODEソルバーのパラメータを指定します。optionsは、ODEソルバーのパラメータを含むストラクチャです。 |
名前 | 説明 |
---|---|
t | LabVIEWがy値を評価する時間値を返します。 tは倍精度実数ベクトルです。 |
y | 概算するy値を返します。 yは倍精度実数行列です。 |
timesで時間間隔について開始時間と終了時間を指定する場合、ステップごとのエラーが指定された相対および絶対許容範囲に残っていることを確認する計算を介して、時間ステップサイズを自動的に調整します。timesで時間ポイントを指定する場合、より確度の高い計算確認のため、時間ステップサイズを自動的に調整します。ただし、指定する時間ポイントではy値のみを返し、tはtimesと等しくなります。
funパラメータ用に定義して保存した.mファイルが文字列定数の場合、この関数はLabVIEWランタイムエンジンまたはRTターゲットでサポートされます。
次の表には、この関数のサポート特性 が記載されています。
LabVIEWランタイムエンジンでサポートされる | はい(出力を要求した場合) |
RTターゲットでサポートされる | はい(出力を要求した場合) |
RTで制限付きの実行時間に適する | 特性なし |
% The lorenz function is defined by:
% function DY = lorenz(times, y)
% DY = zeros(3, 1);
% DY(1) = 10*(y(2)-y(1));
% DY(2) = 28*y(1)-y(2)-y(1)*y(3);
% DY(3) = y(1)*y(2)-8/3*y(3);
[T, Y] = ode_rk45('lorenz', [0, 5], [1; 1; 1])
odepset('AbsTol', 1E-3, 'MinStep', 1E-8, 'MaxStep', 1)
[T2, Y2] = ode_rk45('lorenz', [0, 5], [1; 1; 1])
options = odepset
[T3, Y3] = ode_rk45('lorenz', [0, 5], [1; 1; 1], options)
役に立った
役に立たなかった