Why is this matlab program not able to solve accurately?

1 visualizzazione (ultimi 30 giorni)
syms E_b I_b omega m2 J pho_b A_b l
beta = (omega^2*pho_b*A_b/(E_b*I_b))^(1/4);
B=[E_b*I_b*(-beta^3*cos(beta*l)-beta^3*cosh(beta*l))+m2*omega^2*(sin(beta*l)-sinh(beta*l)),E_b*I_b*(beta^3*sin(beta*l)-beta^3*sinh(beta*l))+m2*omega^2*(cos(beta*l)-cosh(beta*l));
E_b*I_b*(-beta^2*sin(beta*l)-beta^2*sinh(beta*l))-J*omega^2*(sin(beta*l)-sinh(beta*l)),E_b*I_b*(-beta^2*cos(beta*l)-beta^2*cosh(beta*l))-J*omega^2*(cos(beta*l)-cosh(beta*l)) ]
B = 
eqn=det(B)==0
eqn = 
solve(eqn,omega)
Warning: Unable to find explicit solution. For options, see help.
ans = Empty sym: 0-by-1

Risposta accettata

Torsten
Torsten il 16 Giu 2024
Modificato: Torsten il 16 Giu 2024
Some equations cannot be solved analytically because they are too complicated or because there are no functions available that can be used to express the solution. Yours seems to be one of them.
E.g. this simple-looking equation already fails to be solved:
syms a x
eqn = exp(x) - a*cos(x) == 0
eqn = 
solve(eqn,x)
Warning: Unable to find explicit solution. For options, see help.
ans = Empty sym: 0-by-1
You will need to give values to the parameters and solve the equation numerically using "fzero" or "fsolve".
  3 Commenti
Torsten
Torsten il 16 Giu 2024
Modificato: Torsten il 16 Giu 2024
I don't understand your comment.
You try to get a general solution for "omega" in terms of unspecified parameters E_b I_b m2 J pho_b A_b l. This will not work.
The only other method is to give numerical values for E_b I_b m2 J pho_b A_b l and solve the resulting equation in the only remaining unknown "omega" using MATLAB's "fzero" or "fsolve".
fayu
fayu il 18 Giu 2024
I've been trying to find the exact solution to it before (using an alphabetical representation), I see what you mean, I'll solve it later after using numerical substitution.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Mathematics in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by