2011-01-29 73 views
0

我有這樣的代碼:MATLAB:從矩陣變換到元件逐元素乘法

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動態地改變potencial V的形狀我在ODE求解使用Fx的。 我想要的是可以寫Fx(A,B),其中A,B是矩陣。 我需要將V =(x^2 + y^2)的結果轉換爲V =(x。^ 2 + y。^ 2)。 有什麼想法?

回答

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^2這只是一個二次形式。此外,如果是正確的和對稱的,你可以簡化一下。