1樓:匿名使用者
syms x y a1 a2
eq1=0.33*cos(a1)+0.3*cos(a1+a2)-x;
eq2=0.33*sin(a1)+0.3*sin(a1+a2)-y;
x=0.3;
y=0.5;
s=solve(eval(eq1),eval(eq2));
% s=solve(subs(eq1),subs(eq2));這兩句都來可以源,你可
以隨便選一bai種du
disp('s.a1='),disp(s.a1),disp('s.a2='),disp(s.a2);%結果為符號型zhi
disp('s.a1='),disp(double(s.a1)),disp('s.a2='),disp(double(s.a2));%轉換結果為數值型dao
2樓:戴旭
s=solve('0.33*cos(a1)+0.3*cos(a1+a2)-0.
3=0','0.33*sin(a1)+0.3*sin(a1+a2)-0.
5=0','a1','a2');
disp('s.a1'),disp(s.a1),disp('s.a2'),disp(s.a2);
要把dux和y的值都zhi打進式子裡面
dao去。否則它專
會把x,y當做符號屬的。
matlab 解符號方程組
3樓:李百餘
你只要把這句
[x,a,b] = solve(s22,s21,s11)改為[x,a,b] = solve(s22,s21,s11,'x,a,b')
就可以了,加的東西就是說明,x,a,b是未知數,剩下的c就是當已知數了。
[x,a,b] = solve(s22,s21,s11,'x,a,b')
x =-4*c
a =2*c
b =c
4樓:真
他解的其實是
b=-a/2
c=-a/4
x=-a/4
他可沒這麼聰明你寫了[x,a,b]就分別求解x、a、b,他是把解出來的b、c和x賦值給了x、a和b,
所以你要告訴他求解的是什麼變數,並且最好輸出為一個結構體,以免他又賦錯值,像下面這樣既可:
f = solve(s22,s21,s11,'x','a','b')f.a、f.b、f.x就是你要的解
5樓:匿名使用者
s1 = 'x^2 + a*x + b*x + 1';
s2 = 'x^2 + 3*b*x + 2*a*x';
s11 = diff(s1,'x',1);
s21 = diff(s2,'x',1);
s22 = 'x-c';
t = solve(s21,s11,s22,'a','x','b');
x=t.x;
a=t.a;
b=t.b;
怎麼用matlab解含有字母系數的方程組的解,舉個簡單例子
6樓:大野瘦子
用法以這個為例:
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)
7樓:匿名使用者
舉個簡單例子,解方程組
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來學習。
希望我的回答能夠解決您的疑問,謝謝。
8樓:匿名使用者
例:解方程組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怎麼開啟 mat檔案
mat是matlab的資料檔案,可以直接雙擊匯入或者通過命令窗輸入命令以及編寫m檔案匯入 如果是當前目錄下的檔案file1.mat,直接輸入load file1 如果不是當前目錄下的,輸入 load 目錄 file1.mat 如果file1裡含有a,b,c這三個變數,匯入後資料空間裡,就直接存在a,...
matlab怎麼用有限差分法求解方程
fungecho 刪除舉報此資訊 如圖中,需要解出力的大小。求 matlab 程式,用 有限差分法 解 橢圓偏微分方程.題目如圖.建議看看這個 利用有限差分和matlab矩陣運算直接求解二維泊松.和你要的原理是完全一樣的.matlab程式.自己寫吧.matlab求解偏微分方程組,查了一下,說要用有限...
MATLAB常微分方程初值求解問題求答案
改進的尤拉方法 1.子函式 function x,y eulerpro fun,x0,xfinal,y0,n if nargin 5 n 50 endh xfinal x0 n 步長內 x 1 x0 y 1 y0 for i 1 n x i 1 x i h y1 y i h feval fun,x ...