Finding roots of a hyperbolic function

5 次查看(过去 30 天)
I have a problem that states when L=4.2m, the function 1+cosh(B*L)cos(B*L)=0 should return 2 positive roots? I have attempted the following, but i am given a negative value. Please help
L=4.2
syms B
eqn=1+cosh(B.*L).*cos(B.*L)==0
solx=solve(eqn,B)

回答(1 个)

Walter Roberson
Walter Roberson 2019-2-28
The cos(B*L) is going to alternate between positive and negative every Pi radians, so every Pi/L in terms of B. The cosh() part just keeps increasing.
Therefore there will be an infinite number of roots, not just 2 roots. You can use vpasolve() passing in search ranges if you need to isolate two particular values.

类别

Help CenterFile Exchange 中查找有关 Assembly 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by