How to rotate a function about the y-axis
1 回表示 (過去 30 日間)
古いコメントを表示
I wonder if anyone can help.
I have a Bessel function defined from x=0:20. I am trying to rotate it about the y-axis, so I can get a plot which resembles an Airy function.
I am struggling to write a for loop which will do this. Does anyone have a suggestion or pointers?
Thank you
6 件のコメント
Jan
2011 年 10 月 5 日
You can plot a matrix. But rotating the Bessel function leads to a circular shape, not to a rectangular matrix.
採用された回答
Teja Muppirala
2011 年 10 月 5 日
Something like this maybe?
[X,Y]=meshgrid(-20:0.1:20);
R = sqrt(X.^2 + Y.^2);
J=besselj(1,R);
Z=(J./R);
Z(isnan(Z)) = 0.5; %Fix the divide by zero problem
surf(X,Y,Z);
shading flat;
camlight;
その他の回答 (2 件)
Jan
2011 年 10 月 5 日
What about using AIRY?
v = -20:0.1:20;
m = bsxfun(@plus, v, i*v');
Z = airy(m);
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Bessel functions についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!