怎么用MATLAB求解这个二次矩阵方程 如何用matlab解以下矩阵方程

\u7528matlab\u89e3\u77e9\u9635\u65b9\u7a0b

1\u3001\u52a0\u51cf\u6cd5\u7684\u547d\u4ee4\u5f88\u7b80\u5355\uff0c\u76f4\u63a5\u7528\u52a0\u6216\u8005\u51cf\u53f7\u5c31\u53ef\u4ee5\u4e86\u3002\u5982\uff1ac=a+bd=a-b\u3002

2\u3001\u4e00\u822c\u4e58\u6cd5\uff1ac=a*b,\u8981\u6c42a\u7684\u5217\u6570\u7b49\u4e8eb\u7684\u884c\u6570\u3002\u5982\u679ca,b\u662f\u4e00\u822c\u7684\u5411\u91cf\uff0c\u5982a=[1,2,3] b=[3,4,5]\u70b9\u79ef\uff1adot(a,b), \u53c9\u79ef\uff1across\uff08a,b)\u5377\u79ef\uff1aconv(a,b)\u3002

3\u3001x=a\b\u5982\u679cax=b\uff0c\u5219 x=a\b\u662f\u77e9\u9635\u65b9\u7a0b\u7684\u89e3\u3002x=b/a\u5982\u679cxa=b, \u5219x=b/a\u662f\u77e9\u9635\u65b9\u7a0b\u7684\u89e3\u3002

4\u3001\u8f6c\u7f6e\u65f6\uff0c\u77e9\u9635\u7684\u7b2c\u4e00\u884c\u53d8\u6210\u7b2c\u4e00\u5217\uff0c\u7b2c\u4e8c\u884c\u53d8\u6210\u7b2c\u4e8c\u5217\uff0c\u3002\u3002\u3002x=a\u3002

5\u3001\u6c42\u9006\uff1a\u8981\u6c42\u77e9\u9635\u4e3a\u65b9\u9635\u3002\u8fd9\u5728\u77e9\u9635\u8fd0\u7b97\u4e2d\u5f88\u5e38\u7528\u3002x=inv(a)\u3002\u8fd9\u51e0\u79cd\u65b9\u5f0f\u90fd\u53ef\u4ee5\u89e3\u77e9\u9635\u65b9\u7a0b\u3002

matlab\u4e5f\u4e0d\u80fd\u89e3\u8fd9\u4e48\u590d\u6742\u7684\u65b9\u7a0b
\u624b\u52a8\u52a0\u4e0amatlab\u8f85\u52a9\u5e94\u8be5\u5e94\u8be5\u6bd4\u8f83\u597d\u89e3\u51b3\u95ee\u9898

\u9996\u5148\uff0c\u7b80\u5355\u8d77\u89c1\uff0c\u5148\u4e0d\u7528\u89d2\u5ea6\u5236\uff0c\u76f4\u63a5\u4e2d\u5f27\u5ea6\u5236
\u8bbec1=(pi*sita1)/180\uff0cc2=(pi*sita2)/180;

A1=[ cos(c1), -sin(c1), 0, cos(c1);
sin(c1), cos(c1), 0, sin(c1);
0, 0, 1, 0;
0, 0, 0, 1];
A2=[ cos(c2), -sin(c2), 0, cos(c2);
sin(c2), cos(c2), 0, sin(c2);
0, 0, 1, 0;
0, 0, 0, 1];
simplify(A1*A2)

[ cos(c1 + c2), -sin(c1 + c2), 0, cos(c1 + c2) + cos(c1)]
[ sin(c1 + c2), cos(c1 + c2), 0, sin(c1 + c2) + sin(c1)]
[ 0, 0, 1, 0]
[ 0, 0, 0, 1]

\u548cOHT\u5bf9\u6bd4
OTH =[-0.2924 -0.9563 0 0.6978;
0.9563 -0.2924 0 0.8172 ;
0 0 1 0
0 0 0 1]
\u5f97\u5230
cos(c1+c2)=-0.2924
sin(c1+c2)=0.9563
cos(c1 + c2) + cos(c1)= 0.6978
sin(c1 + c2) + sin(c1)= 0.8172

cos(c1)=0.9902
sin(c1)=0.1391

\u89e3\u5f97
c1~=8\u5ea6
c1+c2~=107\u5ea6

\u6240\u4ee5 c2=99\u5ea6

clear
a0=[2 3;6 4];
a1=[-10 1;-20 3];
a2=[1 3;5 2];
syms p1 p2 p3 p4 p;
p=[p1 p2;p3 p4]
%二次矩阵方程是:p^2*a2+p*a1+a0=0;
eq=p^2*a2+p*a1+a0;
[p1,p2,p3,p4]=solve(eq(1,1),eq(1,2),eq(2,1),eq(2,2),p1,p2,p3,p4);
p1=double(p1);p2=double(p2);p3=double(p3);p4=double(p4);
t=1;
[m,n]=size(p1);
pp=zeros(2,2,m);
for i=1:m
if (imag(p1(i))==0)&(imag(p2(i))==0)&(imag(p3(i))==0)&(imag(p4(i))==0)
P1=p1(i,1);P2=p2(i,1);P3=p3(i,1);P4=p4(i,1);
pp(:,:,t)=[P1,P2;P3,P4];
t=t+1;
end
end
pp=subs(pp);
P=pp(:,:,1:t-1)

p =

[ p1, p2]
[ p3, p4]

P(:,:,1) =

11.1677 -5.6672
21.7147 -10.9798

P(:,:,2) =

-3.5248 4.0911
-5.8176 6.2600
带回去验算:误差10^-13
P(:,:,1)^2*a2+P(:,:,1)*a1+a0

ans =

1.0e-013 *

0.1421 -0.0711
0.5684 -0.1776

>> P(:,:,2)^2*a2+P(:,:,2)*a1+a0

ans =

1.0e-013 *

0.0711 0.1243
0.2842 0.0178

求逆

  • 鐢╩atlab瑙浜屽厓浜屾鏂圭▼缁,鍙互鐩存帴鐢╯olve()鍑?
    绛旓細鐢╩atlab瑙d簩鍏冧簩娆℃柟绋嬬粍锛鍙互鐩存帴鐢╯olve锛堬級鍑芥暟鏉ユ眰瑙銆備緥濡傦細>>[x,y] = solve('x^2*y^2 - 2*x - 1 = 0','x^2 - y^2 - 1 = 0')杩愯缁撴灉 瀵逛簬杈冨鏉傜殑鏂圭▼锛屼篃鍙互鐢ㄦ暟鍊煎垎鏋愮殑鏂规硶锛屽fsolve锛堬級鍑芥暟銆佷簩鍒嗘硶锛岀墰椤挎硶锛屾眰鍑哄叾鏁板艰В銆
  • Matlab姹傝В浜屾绾挎ц鍒,姹傚懡浠や唬鐮併備笅鍥
    绛旓細绗竴姝ワ紝鍒涘缓鐩爣鍑芥暟锛寉=myfun(x)銆傚叾鍐呭鏄 y=x1^2+x2^2+8;绗簩姝ワ紝鍒涘缓绾︽潫鏉′欢鍑芥暟锛孾c,ceq]=mycon(x)銆傚叾鍐呭鏄 c(1)=-(x1^2-x2);c(2)=-(x1+x2^2+2);ceq=[];绗笁姝ワ紝鍒涘缓涓荤▼搴忓懡浠わ紝濡備笅 lb=[0;0];ub=[];[x,fval,exitflag]=fmincon(@myfun,x0,[],[],[]...
  • 濡備綍鐢╩atlab瑙鍑烘浜屽厓浜屾鏂圭▼缁?绋嬪簭鎬庝箞鍐
    绛旓細1銆侀鍏堢湅涓涓媘atlab姹傝В鏂圭▼鐨勬柟娉曪紝鎸囨槑鎵瑙f柟绋嬬殑鍙橀噺锛岀劧鍚庢寚鏄庢柟绋嬶紝鏈煡鏁板拰闄愬埗鏉′欢锛屾渶鍚庢眰瑙f柟绋銆2銆佹潵姹傝Вsin(x)=1鏂圭▼锛屽湪matlab鍛戒护琛岀獥鍙d腑杈撳叆symsx [x,params,conds]=solve (sin(x)==1,'ReturnConditions', true) 锛屾寜鍥炶溅閿彲浠ュ緱鍒版柟绋嬭В锛屽涓嬪浘鎵绀恒3銆佽浆鎹竴涓嬶紝鍙互鐪嬪埌sin...
  • 濡備綍鐢╩atlab姹傝В浜屾鏂圭▼缁
    绛旓細涓鸿緭鍏ユ柟闈,a^2+ac=2,b^2+bc=2,c^2+ac=4,d^2+ad=4鍒嗗埆涓哄紡瀛1,2,3,4 鐢1,2寮忕浉鍑,鍙緱(a-b)(a+b+c)=0,鍥犱负a鈮燽,a+b+c=0;鍚岀悊,鐢3,4寮忓彲寰梐+d+c=0;灏哹,d鍒嗗埆鐢╝,c琛ㄧず,骞朵唬鍏ユ墍姹寮忓瓙,寰楀師寮=2a-c;1,3涓ゅ紡鍒嗗埆鐩稿姞鍜岀浉鍑,缁勬垚涓涓柟绋嬬粍,鍙眰鍑篴,b鐨勫...
  • matlab 姹傝В浜屾鏂圭▼鐨勮В
    绛旓細鐢╯olve锛堬級鍙互寰楀埌锛宻鐨勭鍙疯В锛屽疄鐜颁唬鐮 >> syms C_i C_p R_i R_probe s >> s=solve(C_i*C_p*R_i*R_probe*s^2 + C_i*R_i*s + C_p*R_probe*s + 1,'s')杩愯缁撴灉
  • 濡備綍鐢∕atlab姹涓鍏浜屾鏂圭▼寮忚В鐨勪釜鏁颁互鍙婅В
    绛旓細1銆侀鍏堟墦寮Matlab杞欢锛岀偣鍑诲乏涓婅鐨凬ew Script鎸夐挳锛屽涓嬪浘鎵绀 2銆佹帴涓嬫潵鍦ㄥ脊鍑虹殑鐣岄潰涓粰鏂扮殑鑴氭湰鏂囦欢璧蜂竴涓悕瀛楋紝鐒跺悗杩涜淇濆瓨锛屽涓嬪浘鎵绀 3銆佹帴鐫鎴戜滑鍦ㄨ剼鏈枃浠朵腑鐢╥nput鎺ユ敹涓変釜杈撳叆鍙橀噺锛岃繖涓変釜鍙橀噺鏄鐢ㄦ埛杈撳叆鐨勶紝濡備笅鍥炬墍绀猴紝浠栦滑浠h〃鏂圭▼寮忎腑鐨刟,b,c鍙傛暟 4銆佺劧鍚庢垜浠繍鐢╞^2-4ac杩涜...
  • matlab鎬庢牱姹傝В涓鍏浜屾鏂圭▼
    绛旓細銆1銆戝厛涓句竴渚嬶紝瑙f柟绋"x^2+100*x+99=0"鍦╩atlab 鈥滳ommand Window"涓緭鍏ュ涓嬪懡浠わ細x=solve('x^2+100*x+99=0','x')瑙佷笅鍥 銆2銆戝洖杞﹀悗锛宮atlab灏辨眰鍑轰簡杩欎釜涓鍏浜屾鏂圭▼鐨勮В銆傝涓嬪浘 銆3銆戝啀涓句竴渚嬶紝瑙d竴鍏冧笁娆℃柟绋"x^3+1=0"鍦╩atlab 鈥滳ommand Window"涓緭鍏ュ涓嬪懡浠わ細x=solve...
  • matlab 浜屾鏂圭▼姹傝В
    绛旓細1銆佸湪2018a鐗堟湰閲岄潰鐨勫啓娉曪細for i=1:100 c(i)=i+1;end syms x;for i=1:10 xx=solve(4+x.^2/2/9.8+(x/c(i)).^2==40);v(i)=subs(xx(2));end disp(v);2銆佸叾浠栫増鏈湭娴嬭瘯 3銆佹渶鍚庨潰鐨剉鏄竴涓猻ym绫诲瀷锛涢渶瑕佽浆鎹㈡垚double绫诲瀷锛屼娇鐢╠ouble(v)瑙夊緱鏈夐偊涔嬪氨閲囩撼鍚с
  • 鎬ユ眰涓浠鐢╩atlab姹傝В浜屾瑙勫垝闂鐨勪唬鐮併
    绛旓細sub.to x1+x2-2=0 瑙o細鍖栨垚鏍囧噯褰㈠紡锛歴ub.to x1+x2=2 鍦∕atlab涓疄鐜板涓嬶細>>H=[0,-1;-1,0];>>f=[0;0];>>Aeq=[1 1];>>b=2;>>[x,fval,exitflag,output,lambda] = quadprog(H,f,[ ],[ ],Aeq,b)缁撴灉涓猴細x = 1.0000 1.0000 fval = -1.0000 exitflag = 1...
  • 鎬庝箞鐢∕ATLAB姹傝В杩欎釜浜屾鐭╅樀鏂圭▼
    绛旓細浜屾鐭╅樀鏂圭▼鏄細p^2*a2+p*a1+a0=0;eq=p^2*a2+p*a1+a0;[p1,p2,p3,p4]=solve(eq(1,1),eq(1,2),eq(2,1),eq(2,2),p1,p2,p3,p4);p1=double(p1);p2=double(p2);p3=double(p3);p4=double(p4);t=1;[m,n]=size(p1);pp=zeros(2,2,m);for i=1:m if (imag(p1(...
  • 扩展阅读:怎么用matlab解二元方程 ... matlab不建议高版本 ... 用matlab求二元方程 ... 如何用matlab求最优解 ... matlab求解二阶差分方程 ... matlab求二阶常微分方程 ... matlab最实用的版本 ... matlab求解方程的近似根 ... matlab 怎么求解一元二次 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网