Different order Bessel function in each column of an array

2 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

Steven Lord
Steven Lord il 19 Mar 2018
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 Commento
David
David il 19 Mar 2018
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);

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by