Finding roots of a hyperbolic function
显示 更早的评论
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
2019-2-28
0 个投票
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.
类别
在 帮助中心 和 File Exchange 中查找有关 Operators and Elementary Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!