次のテンプレートを適用するためのコードを記録
オプション= optimsetを( 'MaxFunEvals'、1E4、 'MaxIter可能'、1E4); [X、FVAL、れるexitflag] = fsolveは(@(X)myfun1(X)、[75; 1.5]、オプション) 関数F = myfun1(X ) F =タン(X(1)* PI / 180) - ((1025 * 9.8 * PI * X(2)/ 4から980)/(0.625 * 4(2-X(2))* 24 * 24 ));%つの未知数のX(1)とx(2)、着信にパラメータを渡す 端
オプションセットの要件、精度範囲として理解、デフォルトはありませんが、あまり問題ではありません。
[75; 1.5]は、初期値の近傍における最適解を見つけるために、初期値x(1)、X(2)は、同じ番号が初期値と異なる場合、[75 1.5 701]です。理解するために:より最適解があるかもしれない、初期値と同じでない場合は、最適な解決策は同じではありません。ほとんどすべての非線形近似解。初期値の設定方法としては、このようなむしろ1020年度よりも約60度以上の壁にポールの傾斜角、として、問題の分析と組み合わせます。
ケースmyfun1関数を解くと、F = 0です。
FVALは小さく、より良い、エラーを表します。
exitflagをは理想的な時間1のための反復終了基準を表します。
1 fsolveはルートに収束しました。
Xで2変更小さすぎます。
残差ノルムで3変化は小さすぎます。
4コンピュー検索方向小さすぎます。
関数評価または反復の0が多すぎます。
-1出力/プロット機能により停止。
-2ルートではない点に収束します。
-3信頼領域の半径が小さすぎる(信頼領域ドッグレッグ)。
2未知数X(1)とx(2)、それぞれ、最終の2つの値を見つけます。
複数の式は、一般的にリンクされている場合、他の相対的な未知の式により要求した後に得られました。