[英]How to solve a zero order Bessel function equation in Matlab?
等式為I 0 (a * x)= b,其中a,b為常數,I 0 (y)為零階貝塞爾函數。
I 0 (x)= 1 /(2 * pi)*積分(x * cos(t))dt [從0-> 2 * pi]
當給定a和b時,我想獲得x的值。 我只需要結果,因此不必全部通過Matlab來實現求解過程,並且近似答案也很好。
您可以使用( http://nl.mathworks.com/help/matlab/ref/besselj.html , http://nl.mathworks.com/help/optim/ug/fsolve.html )
x = fsolve(@(x)(besselj(0,a*x)-b),x0);
或使用以下注釋中指出的更簡單的求解器( http://nl.mathworks.com/help/optim/ug/fzero.html )
x = fzero(@(x)(besselj(0,a*x)-b),x0);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.