[Matlab] [Symbolic] Problem z solve - układ równań
: 13 kwie 2011, o 12:19
Witam, mam problem z rozwiązywaniem równania za pomocą solve. Sprawa wygląda następująco:
1. Deklaruję wektor zmiennych x i xC:
2. Wyliczam sobie funkcję L
3. Potrzebuję uzyskać rozwiązanie takiego układu równań:
diff(L,lambda1)=0
diff(L,lambda2)=0
diff(L,xA)=0
diff(L,xB)=0
diff(L,xC)=0
Układam zatem polecenie:
(tak wskazują wszystkie manuale)
Jako wynik otrzymuję jednak:
Równania dążą do rozwiązania układu, bo ręcznie mogę to policzyć. Gdzie może tkwić problem? W deklaracji czy w dalszych operacjach?
Dzięki za pomoc i wszelkie sugestie!
1. Deklaruję wektor zmiennych x i xC:
Kod: Zaznacz cały
syms x xA xB xC real
x = [xA xB];
syms lambda1 lambda2Kod: Zaznacz cały
L=10*xA+20*xB+lambda1*(60*xA^2+60*xB^2-120*xA*xB+xC-10)+lambda2*(xA+xB-1);
diff(L,lambda1)=0
diff(L,lambda2)=0
diff(L,xA)=0
diff(L,xB)=0
diff(L,xC)=0
Układam zatem polecenie:
Kod: Zaznacz cały
S = solve('diff(L,lambda1)=0','diff(L,lambda2)=0','diff(L,xA)=0','diff(L,xB)=0','diff(L,xC)=0',lambda1,lambda2,xA,xB,xC);Jako wynik otrzymuję jednak:
Kod: Zaznacz cały
>> S.xA
ans = xADzięki za pomoc i wszelkie sugestie!