1樓:我行我素
有符號變數時,要用數學符號運算工具箱,先用syms 定義變數,再用solve解方程。如:
syms x
x=solve(x^2-5*x+2==0)結果是:
x =5/2 - 17^(1/2)/2
17^(1/2)/2 + 5/2
2樓:純淨透明
試試simplify,表示式簡化用法r = simplify(s)
matlab中如何求解符號變數的非線性方程組的解,求大神賜教!!!**如下: 65
3樓:匿名使用者
matlab中如何求解符號變數的非線性方程組的解,對於簡單明瞭的方程組可以用solve()求得。solve()求解格式為
eq1=f1(x,y,z),eq2=f2(x,y,z),eq3=f3(x,y,z)
solve(eq1,eq2,eq3)
但分析了你給出的**,我覺得只能用數值的方法求解,得到其數值解。你想要解析值是有一定的難度。
常用的數值方法,有二分法,牛頓法等等。
怎麼用matlab解含有字母系數的方程組的解,舉個簡單例子
4樓:大野瘦子
用法以這個為例:
x+a*y=10
x-b*y=1
其中x,y為變數,a,b為字母系數.
只要在matlab中輸入
syms x,y,a,b
[x y]=solve('x+a*y=10','x-b*y=1','x','y')
即可求出解
x =(a + 10*b)/(a + b)
y =9/(a + b)
對於函式solve的具體用法,可以通過輸入help solve來學習。
matlab中方程求解的基本命令
1.roots(p) %求多項式的根,其中p是多項式向量。
例求x3-x2+x-1=0的根
解:>>roots([1,-1,1,-1])
注: [1,-1,1,-1]在matlab中表示多項式 x3-x2+x-1
2.solve(fun) %求方程fun=0的符號解,如果不能求得精確的符號解,可以計算可變精度的數值解
例:用solve求方程x9+x8+1=0的根
解:>>solve(『x^9+x^8+1』)
給出了方程的數值解(32位有效數字的符號量)
3.solve(fun,var) %對指定變數var求代數方程fun=0的符號解。
例:解方程 ax2+bx2+c=0
解:>>syms a b c x;
>>f=a*x^2+b*x+c;
>>solve(f)
如果不指明變數,系統預設為x,也可指定自變數,比如指定b為自變數
>>symsa b c x;
>> f=a*x^2+b*x+c;
>>solve(f,b)
4.fsolve(fun,x0) %求非線性方程fun=0在估計值x0附近的近似解。
例:用fsolve求方程x=e-x在0附近的根
解:>>fsolve(『x-exp(-x)』,0)
5.fzero(fun,x0) %求函式fun在x0附近的零點
例:求方程x-10x+2=0在x0=0.5附近的根
解:>>fzero(『x-10^x+2』,0.5)
5樓:匿名使用者
舉個簡單例子,解方程組
x+a*y=10
x-b*y=1
其中x,y為變數,a,b為字母系數。
只要在matlab中輸入
syms x,y,a,b
[x y]=solve('x+a*y=10','x-b*y=1','x','y')
即可求出解
x =(a + 10*b)/(a + b)y =9/(a + b)
對於函式solve的具體用法,可以通過輸入help solve來學習。
希望我的回答能夠解決您的疑問,謝謝。
6樓:匿名使用者
例:解方程組a*x+2*y=4,4*x+b*y=7matlab**:syms a b x y;
z=solve('a*x+2*y=4','4*x+b*y=7')即可。
matlab解具有符號變數巢狀的方程
matlab裡面,有符號變數的方程組的求解,為什麼執行全都是warning然後結果是empty s
7樓:匿名使用者
前一個警告是因為,你求解的是4個方程,但只指定了3個變數(其它符號會被視為常量),這種方程數量多於未知數的方程組,除非個別特殊情況,大多數是無解的,所以會以警告的形式提示你。
後面的一個警告,是告訴你求解的結果沒有得到顯式解。得不到顯式解可能是因為方程組本身無解,有可能是matlab求不出。不要對符號運算寄予過高期望,很多非線性方程(組)都是難以求出顯式解的,這在數學上本身就存在困難,當然不能指望一個軟體就能解決。
求不出解析解的情況下,大部分場合可以藉助於數值方法求數值解,當然,這需要常數都是已知的。
matlab把符號變數轉化為數值變數
subs f x 10 subs 替換函式,上面是指把x 10賦給f x y double x matlab function feval 我來解答,double x 即可,快來給滿分!matlab中如何把符號變數轉化為數值變數?有點奇怪,你通過sym2poly得到了數值型的係數矩陣coeff,然後...
matlab中syms是定義符號變數請問什麼叫符號變
符號變數比一般的變數應用更廣泛些,用於計算的一般的變數是數值,而符號變數既是符號,又能是數值,能變換,並且常作為自變數使用,在方程中作未知數用,符號變數在沒給定數值時,就能用於計算,這是一般變數所不能比的。符號變數就是用於符號運算的變數,例如分解一個關於x的多項式,那麼x就是一個符號變數 應該他沒有...
matlab中sym符號變數不是固定的數,怎麼轉變為do
你的這種寫法是不是有問題?比如 sym 可能應該是syms j 這個變數是不必要的 syms 函式放在迴圈裡似乎不大好 雖然對結果應該沒什麼影響 至於轉變,賦值語句 sum 3之類 具有最高的許可權,會無視該變數原來是什麼。另外,對符號變數及符號函式而言,subs 替換 比較常用,比如 y x 1,...