Different order Bessel function in each column of an array

Is there a way of calculating the array J, below, without using a loop?
X = 0:0.1:20;
J = zeros(5,201);
for i = 0:4
J(i+1,:) = besselj(i,X);
end

 採用された回答

Steven Lord
Steven Lord 2018 年 3 月 19 日

0 投票

From the documentation, "If nu and Z are arrays of the same size, the result is also that size." Make arrays for nu and Z using meshgrid.

1 件のコメント

David
David 2018 年 3 月 19 日
Hi Steve,
Thank you for your reply.
Great suggestion.
For those interested, the code without the loop reads like:
X = 0:0.1:20;
nu = 0:4;
XX = repmat(X,[length(0:4),1]);
nuu = repmat(0:4,[length(X),1])';
JJ = besselj(nuu,XX);

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeBessel functions についてさらに検索

製品

質問済み:

2018 年 3 月 18 日

コメント済み:

2018 年 3 月 19 日

Community Treasure Hunt

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

Start Hunting!

Translated by