生活随笔
收集整理的這篇文章主要介紹了
学习Matlab强大的符号计算(解方程)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
學習Matlab強大的符號計算(解方程)
分類: 學習 其它語言 2011-09-19 10:34 3135人閱讀 收藏 舉報
matlab
[plain] view plaincopyprint?
syms?x1?x2;?%定義符號變量??syms?y1?y2;??clc??[x1,?x2]?=?solve('x1?+?x2?=?y1',...??????'x1^2?+?x2^2?=?y2',...??????'x1',?'x2')?%求x1,x2用y1,?y2表示的表達??%求解y1?=?1,y2?=?5?時的函數值??y1?=?1;??y2?=?5;??x1?=?eval(x1)???%?eval?%把符號變量轉換為數值型,??x2?=?vpa(eval(x2),?3)?%?vpa??%精度,這里用3位小數精度表示??%{??%運行結果為??x1?=???1/2*y1-1/2*(-y1^2+2*y2)^(1/2)???1/2*y1+1/2*(-y1^2+2*y2)^(1/2)??x2?=???1/2*y1+1/2*(-y1^2+2*y2)^(1/2)???1/2*y1-1/2*(-y1^2+2*y2)^(1/2)??x1?=??????-1???????2??x2?=????2.???-1.??%}?? syms x1 x2; %定義符號變量
syms y1 y2;
clc
[x1, x2] = solve('x1 + x2 = y1',...'x1^2 + x2^2 = y2',...'x1', 'x2') %求x1,x2用y1, y2表示的表達
%求解y1 = 1,y2 = 5 時的函數值
y1 = 1;
y2 = 5;
x1 = eval(x1) % eval %把符號變量轉換為數值型,
x2 = vpa(eval(x2), 3) % vpa %精度,這里用3位小數精度表示
%{
%運行結果為
x1 =1/2*y1-1/2*(-y1^2+2*y2)^(1/2)1/2*y1+1/2*(-y1^2+2*y2)^(1/2)
x2 =1/2*y1+1/2*(-y1^2+2*y2)^(1/2)1/2*y1-1/2*(-y1^2+2*y2)^(1/2)
x1 =-12
x2 =2.-1.
%}以前把Matlab當做強大的計算器,才知道它不止計算器那么簡單。
總結
以上是生活随笔為你收集整理的学习Matlab强大的符号计算(解方程)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。