matlab 求带参数的矩阵的逆 高手回答

2025-03-10 01:03:43
推荐回答(3个)
回答1:

可以借助于符号函数。代码:% 以前只用matlab求不带参数的矩阵的逆,
% 请问能不能用matlab求带参数矩阵的逆,
% 参考书上说可以,但是不知道怎么定义参数,
% 实际操作显示错误,说参数没有定义,求高手解决问题。
clc; clear all;
syms m
A = sym(randint(5, 5, [0 100]));
A(3, 4) = m;
disp(A)
Ai = inv(A);
disp(Ai)结果:[ 10, 87, 43, 13, 86]
[ 97, 8, 91, 87, 62]
[ 0, 40, 18, m, 35]
[ 78, 26, 26, 55, 51]
[ 82, 80, 14, 14, 40]

[ -(21607*m - 589816)/(2966636*m - 1986592), (5753*m + 70961)/(11866544*m - 7946368), -2559203/(5933272*m - 3973184), (43941*m - 363268)/(5933272*m - 3973184), (129707*m + 445063)/(23733088*m - 15892736)]
[ (7973*m - 848040)/(2966636*m - 1986592), (20257*m - 123143)/(11866544*m - 7946368), 3748421/(5933272*m - 3973184), -(111363*m - 563548)/(5933272*m - 3973184), (368019*m - 1025537)/(23733088*m - 15892736)]
[ (3961*m + 93560)/(2966636*m - 1986592), (207641*m - 126535)/(11866544*m - 7946368), -427963/(5933272*m - 3973184), -(167323*m - 56220)/(5933272*m - 3973184), (141531*m - 5825)/(23733088*m - 15892736)]
[ -333472/(741659*m - 496648), -21681/(1483318*m - 993296), 741659/(741659*m - 496648), 96748/(741659*m - 496648), -154151/(2966636*m - 1986592)]
[ (13481*m + 460536)/(1483318*m - 993296), -(62491*m - 102905)/(5933272*m - 3973184), -2088667/(2966636*m - 1986592), (95605*m - 336484)/(2966636*m - 1986592), -(229073*m - 587519)/(11866544*m - 7946368)]

>> 然后可以通过subs等来将参数传入。

回答2:

求解带参数的矩阵的逆,首先要将参数设定为符号型数据。
比如:
syms x;
a=[1,x;5,6];
inv(a);

回答3:

ng no liquor and ciga