0

私はこのコードを持っています:

KM = [1 0; 0 1];    
syms x, syms y;
% definition of force field 
V = [x y]*KM*[x ; y]
Vdx = -diff(V,x);
Fx = @(x,y) eval(Vdx);

行列 KM は、ポテンシャル V の形状を動的に変更します。Fx I は、ode ソルバーで使用します。私が望むのは、Fx(A,B) を記述できるようにすることです。ここで、A,B は行列です。V=(x^2+y^2) の結果を V=(x.^2+y.^2) に変換する必要があります。何か案が?

4

1 に答える 1

0

質問がよくわかりません。Fx = @(x,y) -2*KM(1,1)*x-(KM(2,1)+KM(1,2))*y;手で計算するときではありません。

一般的な V はV = KM(1,1)*x^2+(KM(1,2)+KM(2,1))*x*y+KM(2,2)*y^22 次形式です。また、 が正定で対称の場合は、少し単純化できます。

于 2011-01-29T23:24:23.927 に答える