How to get the equation form rather than getting answer in root(eqation)?

3 views (last 30 days)
Hello. I have 10th order polynomial equation with symbolic form. I have tired "solve" command and any other form that I could find. Matlab solves the equation but its giving me answer in "root(equation)" rather than actually finding roots of it.
If anyone can help me it will be great. I am attaching the code just in case if anyone wants to have a look at it.
syms k1 k2 k3 k4 k5 k6 k7 k8 k9 k10 L % Spring Matrix
K = [k1+k2 -k2 0 0 0 0 0 0 0 0; -k2 k2+k3 -k3 0 0 0 0 0 0 0; 0 -k3 k3+k4 -k4 0 0 0 0 0 0; 0 0 -k4 k4+k5 -k5 0 0 0 0 0; 0 0 0 -k5 k5+k6 -k6 0 0 0 0; 0 0 0 0 -k6 k6+k7 -k7 0 0 0; 0 0 0 0 0 -k7 k7+k8 -k8 0 0; 0 0 0 0 0 0 -k8 k8+k9 -k9 0; 0 0 0 0 0 0 0 -k9 k9+k10 -k10; 0 0 0 0 0 0 0 0 -k10 k10];
% Mass Matrix CID = 1; m = 10+CID; M = diag([m m m m m m m m m m]);
% Solving Eigenvalue problem mat = det(K - (L*M)); mat1 = collect(mat,L); mat2 = root(mat1==0,L); mat3 = mat2(1);

Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!