我用sym定义了变量x,然后将x和矩阵进行数乘,但是报错,coffes(det( A - x * eye(n) ), x)报错不支持该类型输入
引用:这个问题可能是由于符号表达式未正确展开或函数参数传递格式有问题导致的,但还需看具体代码确定原因和给解决办法,方便给个代码吗
function [V_Eig, D_Eig] = Eig(A)
n = size(A, 1);
lambda = sym('lambda');
coef = coeffs(det(A - lambda * eye(n)), lambda);
V_Eig = zeros(n, n);
D_Eig = roots(coef);
for i = 1:size(A)
V_Eig(:, i) = null(A - D_Eig(i) * eye(n));
end
end
不支持的输入类型
位于文件 C:\baltamatica\脚本\Eig1.m (第 12 行)
coef = coeffs(det(A - lambda * eye(n)), lambda)
引用:function [V_Eig, D_Eig] = Eig(A)n = size(A, 1);lambda = sym('lambda');coef = coeffs(det(A - lambda * eye(n)), lambda);V_Eig = zeros(n, n);D_Eig = roots(coef);for i = 1:size(A)V_Eig(:, i) = nul...
下一个版本已经重载了eig函数,不需要自己写Eig.