How to get roots of determinant (characteristic) equation?
25 次查看(过去 30 天)
显示 更早的评论
Hello all, I am solving an eigenvalue problem and giving symbolic matrix as input. I want to find roots of characteristic equation, I mean, roots of determinant of matrix equated to zero. Here I give script:
clear all;
close all;
clc;
syms w
A=[-2000*w^2+280*1e3,-280*1e3;280*1e3,-2000*w^2+280*1e3];
fun = matlabFunction(det(A))
I want to find roots of fun(). This is a polynomial equation of 4th order, so I should have 4 roots. If I use fzero, it just gives a local solution to problem, but I want to have all roots. Can you suggest something? Ofcourse, I can write coefficients of det(A) manually and pass it to roots([...]). But I don't want to write manually. I am even trying to bypass symbolics, as for large matrix, symbolic variables are computationally very expensive. Any comments? Thanks in advance!
0 个评论
采纳的回答
Star Strider
2014-4-30
编辑:Star Strider
2014-4-30
DA = det(A)
W = solve(DA,w)
produces:
W =
(140 + 140*i)^(1/2)
(140 - 140*i)^(1/2)
-(140 + 140*i)^(1/2)
-(140 - 140*i)^(1/2)
更多回答(1 个)
Pratik Baraiya
2021-10-4
clear all;
close all;
clc;
syms w
A=[-2000*w^2+280*1e3,-280*1e3;280*1e3,-2000*w^2+280*1e3];
fun = matlabFunction(det(A))
1 个评论
Walter Roberson
2021-10-4
What is your recommendation to proceed from fun to find the roots of fun ?
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Symbolic Math Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!