このガイドでは、MATLAB で非線形方程式系の解を計算する方法を説明します。 fsolve() 関数。
MATLAB で非線形方程式システムを解くにはどうすればよいですか?
の fsolve() は、問題を解くために使用される MATLAB の組み込み関数です。 非線形方程式系 複数の変数を使用します。方程式の数が未知数の数と同じ場合、次の系の解は次のようになります。 非線形方程式 数値になります。それ以外の場合、解は目的の変数に関して記号的なものになります。の各変数 非線形方程式系 順序に基づいて 1 つまたは複数のソリューションを持つことができます。
構文
の fsolve() 関数は単純な構文に従って問題を解決します。 非線形方程式系 MATLABで。
x = fsolve ( 楽しい、x0 )
x = fsolve ( 楽しい、x0、オプション )
ここ:
関数 x = fsolves(fun, x0) 点から始まる非線形方程式系を解きます ×0 。
関数 x = fsolves(楽しい, x0, オプション) オプションで指定された最適化手法を使用して、非線形方程式系を解きます。
注記: オプションはデフォルトで使用します。 ニュートン・ラプソン 非線形方程式系の解を計算する方法。信頼領域などの他の方法を指定することもできます。 レーベンバーグ=マルカート 、 その他。
例
与えられた例に従って、 fsolve() MATLAB の関数。
例 1: MATLAB で 2 つの非線形方程式を解く
指定された例では、最初に という名前の MATLAB ユーザー定義関数を作成します。 非線形システム 2 つの非線形方程式系を含む。
関数 F = 非線形システム ( バツ )F ( 1 ) = 経験値 ( 平方メートル ( ( バツ ( 1 ) +x ( 2 ) ) ) ) - バツ ( 2 ) * ( 1 + 平方メートル ( バツ ( 1 ) ) ) ;
F ( 2 ) = x ( 1 ) * それなし ( バツ ( 2 ) ) +× ( 2 ) * コス ( バツ ( 1 ) ) - 0.1 ;
次に、別のスクリプト ファイルの関数を呼び出して、定義された非線形方程式系を次の式を使用して解きます。 fsolve(楽しい, x0) 点 x0 = (0, 0) から始まる関数。
楽しい = @nonlinear_system;x0 = [ 0 、 0 】 ;
x = fsolve ( 楽しい、x0 )
例 2: 点 [-5,5] から開始する非線形方程式を解く
ここで、ユーザー定義関数ファイル nonlinear_system.m で定義された連立方程式を考慮し、点から開始してその非線形方程式系を解く関数を呼び出します。 x0 = [-5, 5] を使用して fsolve() 関数。
楽しい = @nonlinear_system;x0 = [ - 5 、 5 】 ;
x = fsolve ( 楽しい、x0 )
詳細については、これをお読みください ガイド 。
結論
非線形方程式系を解くことは、数学と工学において最も一般的な問題です。 MATLAB は組み込みの機能を提供します。 fsolve() 非線形方程式系を解くことを可能にする関数。このガイドでは、初心者が非線形方程式の仕組みを理解するのに役立つ、非線形方程式系の解法に関する基本を説明しました。 fsolve() MATLAB の関数。