matlab程式設計求解三元一次非齊次線性方程組,所有係數是使用者自己輸入,最後顯示所有解。求具體的m檔案

時間 2021-08-11 18:14:09

1樓:酈秋奚綸

你的方程有問題,不太是很用matlab進行計算。因為我們知道,任何數值解法都是有誤差的,你的方程由於係數相差太大,因此略為一點數值誤差就會導致結果又很大的不同。

舉個簡單的例子,比如以下方程組:

1000x+0.1y=2..............(1)0.

1x+0.1y=0.0001..........

(2)聯立求解就能得到答案。x=0.0001997y=0.

003但是在matlab裡可能會由於數值誤差,把x認為是0.0002,則方程(1)得到y=0,方程(2)得到y=0.008,兩者完全不同。

你遇到的問題也是一樣。建議把方程組裡的係數調整一下。如果你想深入研究此問題,可以參考《數值分析》。

2樓:

disp('輸入第一個方程的係數')

a1=input('a1=');

b1=input('b1=');

c1=input('c1=');

d1=input('d1=');

disp('輸入第二個方程的係數')

a2=input('a2=');

b2=input('b2=');

c2=input('c2=');

d2=input('d2=');

disp('輸入第三個方程的係數')

a3=input('a3=');

b3=input('b3=');

c3=input('c3=');

d3=input('d3=');

a=[a1

b1c1;a2

b2c2;a3

b3c3];

b=[d1

d2d3]';

x=a\b

matlab程式設計求解一個三元一次非齊次線性方程組,所有係數是使用者自己輸入,最後顯示所有解。求具體的m檔案。

3樓:匿名使用者

disp('輸入第一個方程的係數')

a1=input('a1=');

b1=input('b1=');

c1=input('c1=');

d1=input('d1=');

disp('輸入第二個方程的係數')

a2=input('a2=');

b2=input('b2=');

c2=input('c2=');

d2=input('d2=');

disp('輸入第三個方程的係數')

a3=input('a3=');

b3=input('b3=');

c3=input('c3=');

d3=input('d3=');

a=[a1 b1 c1;a2 b2 c2;a3 b3 c3];

b=[d1 d2 d3]';

x=a\b

matlab解三元一次方程組問題,求大神幫忙。

4樓:匿名使用者

給出的三元一次方程組,應該用fsolve()函式來求解。實現**如下:

x0=[-0.75127  -0.2551 -0.50596];

[x,fval] = fsolve(@exfun,x0)

exfun——自定義三元一次方程組函式

function y=exfun(x)

u=x(1);v=x(2);a=x(3);

la=1.203;

lb=0.6054;

lc=1.203;

s1 = (u^2+v^2*cos(a))/(u^2+v^2);

s2 = (u*v*(1-cos(a)))/(u^2+v^2);

s3 = (v^2+u^2*cos(a))/(u^2+v^2);

s4 = (v*sin(a))/((u^2+v^2)^0.5);

s5 = (u*sin(a))/((u^2+v^2)^0.5);

y(1)=((-1)*1.65*s1+(-1)*0.6*s2-(-1)*1.

65)^2+((-1)*1.65*s2+(-1)*0.6*s3-(-1)*0.

6)^2+((-1)*1.65*s4+(-1)*0.6*s5+0.

9)^2-(la)^2;

y(2)=((-1)*1.65*s1+0.6*s2-(-1)*1.

65)^2+((-1)*1.65*s2+0.6*s3-0.

6)^2+((-1)*1.65*s4+0.6*s5+0.

9)^2-(lb)^2;

y(3)=(1.65*s1+(-1)*0.6*s2-1.

65)^2+(1.65*s2+(-1)*0.6*s3-(-1)*0.

6)^2+(1.65*s4+(-1)*0.6*s5+0.

9)^2-(lc)^2;

end執行結果

x =      -0.4103  -1.7029e-05      0.52412

fval =   1.2744e-05  -0.00030638  -0.00014883

即u=-0.4103; v=-1.7029e-05; a=0.52412

求解三元一次方程組,求解一個三元一次方程組

題目錯了.x y z 0 x y 0 2式相加得到 2x z 0就是第三個式子 所以就是2個式子要解3個未知數.解的數量是不定的 這有點不妥 由x y z 0和x y 0可以推出2x z 0所以只有2條方程,解不出3個根 所以有無數個根 x y 1,z 2是其中的特解 紫鬱孤月 由x y 0得 x ...

怎麼用MATLAB解這個三元一次方程組

x,y,z solve 0.0979 x 0.225 y 0.3793 z 0.3793 0.225 x 0.3793 y 1.5 z 1.5 0.3793 x 1.5 y 5 z 2.04 x 6.6433242786575706312672289994801 y 2.11026742532519...

三元一次方程組三和元分別指什麼,三元一次方程組三和元分別指什麼?

憶影言心 三是指三個,元是指未知數,一般元都是指x或y或z,所以就是 元 未知數 x或y或z 那麼三元就代表有三個未知數 小水哥哥 三是個數有三個 元是未知量 所以三元就是有3個未知數x y z 元 方程中的未知數 三 未知數的個數有3個 三元一次方程組的定義 這個方程含有三個未知數,每個方程中含未...