Hy can anyone can tell me how i can solve this equation 2xJ1(x) − J0(x) = 0 where J1 and J0 are the Bessel function in Matlab without using the fsolve command
You can use fzero
to find the zeros if and only if the curve crosses the x-axis. So
fzero(@(x)(2*x*besselj(1,x)-besselj(0,x)),x0)
will give you the zero close to x0
.
See this answer of mine for an explanation of when and why fzero
fails (although it won't for a Bessel function, it's good to be aware) and the tradeoffs with fsolve
.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.