4

(3x ^ 2 + 4xy)dx +(2x ^ 2 + 2y)dy = 0

私はこの方程式を次のように紙で解きます。

解決

結果は次のようになります。

f(x、y)= x ^ 3 + 2x ^ y + y ^ 2 = c-c_1

Matlabでf(x、y)関数を見つけたいです。dsolveコマンドを使用して見つけようとしました。

dsolve('(2 * x ^ 2 + 2 * y)* dy =-(3x ^ 2 + 4xy)'、'x')

しかし、それは間違った結果をもたらします。

別の解決方法はありますか?

4

2 に答える 2

1

MATLAB が間違っているわけではなく、y(x) または x(y)のODEを解いています。正確な微分方程式については、大学院レベル (少なくともエンジニア向け) で詳しく説明しました。これをプログラミングの質問として提起する前に、数学をさらに説明すると役に立ちます。何らかの説明がなければ、f(x,y) がどのように関与しているかは明確ではありません。

別の方法でポーズをとります (少し概念的なストレッチですが、F が潜在的な関数であることをよく示していると思います) ...

div({F})= \frac{\partial F}{\partial x} + \frac{\partial F}{\partial y} = (3x^2+4xy) +(2x^2+2y) = 0

MATLAB はこれを直接解決しません。しかし、F の関与は明らかであるため、このように尋ねられた場合、結果はすぐに検証可能です。

MATLAB では、diff(f,x) と diff(f,y) を評価することでシンボリックに検証できることに注意してください。

アップデート

MATLAB を使用して手順を実行すると、解が得られます。

syms x y c
P = 3*x*x + 4*x*y
Q = 2*x*x + 2*y
f = int(P,x)+subs(int(Q,y),x,0) + c

出力

f = c + y^2 + x^2*(x + 2*y)

ワンラインソリューション

f = int('3*x*x+4*x*y','x') + subs(int('2*x*x+2*y','y'),'x',0) + 'c'
于 2012-12-12T12:14:39.187 に答える
0

とにかく書き方が悪い。

やった

>> dsolve ('(2*x^2+2*y)*Dy=-(3*x^2+4*x*y)', 'x')

そして得た

ans =

   (x^4 - x^3 + C2)^(1/2) - x^2
 - (x^4 - x^3 + C2)^(1/2) - x^2

ウルフラム

Wolfram Alpha は、Matlab のソリューションを確認します。

http://www.wolframalpha.com/input/?i=%283x%5E2%2B4xy%29%2B%282x%5E2%2B2y%29y%27%3D0

アップデート

これはF(x,y)、DE の解がf(y)

于 2012-12-12T09:54:31.403 に答える