matlab中怎么样进行矩阵逆运算和行列式计算

matlab中怎么样进行矩阵逆运算和行列式计算,第1张

程序:

a

=

sym('[s,

-1,

0,

0;-08832k1,

s+00883-08832k2,

-08832k3-06293,

-08832k4;0,

0,

s,

-1;-23566k1,

02357-23566k2,

-278285-23566k3,

s-23566k4]')

d

=

det(a)

说明:第一句是定义符号矩阵,第二句是计算符号矩阵的行列式

结果:行列式为d

=s^4-23566s^3k4-278285s^2-23566s^2k3+883e-1s^3+8246e-4s^2k4-230893054s+8246e-4sk3-8832k2s^3+2309512282sk2-8832k1s^2+2309512282k1。

a=input(' ');

[m,n]=size(a);

if m==5&&n==5

for i=1:5

for j=1:5

t=a(i)(j);

a(i)(j)=a(j)(i);

a(j)(i)=t;

end

end

else

disp('不是五阶矩阵');

你这个程序离目标还差很远

第一个for循环里第3,4行写错了,改成

E(i,i:2n)=E(i-1+y,i:2n);

E(i-1+y,i:2n)=U;

第二个for循环应该嵌在第一个for循环里,或者说上一行的end应该去掉

即使这些都改好了,也只不过是把A消成上三角阵,要消成单位阵之后才能得到结果,况且你并没有把结果赋给作为返回值的D

我觉得是不是你程序的其它地方出了问题,会不会你不小心对不同的矩阵你用相同符号表示了。对矩阵求逆矩阵,除了单位矩阵E外,照常不可能一样的。 你先判定你的矩阵(YY)是否可逆?也就是YY的模不为零,matlab中 det(YY),然后求逆,inv(YY)

以上就是关于matlab中怎么样进行矩阵逆运算和行列式计算全部的内容,包括:matlab中怎么样进行矩阵逆运算和行列式计算、用MATLAB写一个程序计算一个五阶矩阵的逆,要求:先判断,且不能直接用A^(-1)、用MATLAB编程求矩阵的逆矩阵,写了运行不出来,请指教!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9802409.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存