Matrix dimensions must agree for computing spherical harmonics !!!!

Hi i am trying to calculate the spherical harmonic but I get an error saying that the matrices dimensions must agree, here is the code, any suggesions are very welcomed!
L=4;
theta =linspace(0,pi,5); %theta ranges from 0 to pi
phi =linspace(0, 2*pi,5); %phi ranges from 0 to 2*pi
for m=-L:L
cst = sqrt((2*L+1)*factorial(L-m)/((4*pi)*factorial(L+m))); %constant of spherical harmonics
P = legendre(L,cos(theta));
Y = cst.*P.*exp(-1j.*m.*phi);
end

2 Kommentare

I'm not getting any errors when I run your code in Matlab (R2016b). Which line were you having trouble with?
cst.*P.*exp(-1j.*m.*phi) In this P is 5x5 matrix, exp(-1j*m*phi) is 1x5..you expect output to be a matrix or array?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Ano
Ano am 10 Mär. 2017

0 Stimmen

the output should be a matrix I have solve it by using the transpose of P now it works! Thank you!!

Kategorien

Gefragt:

Ano
am 9 Mär. 2017

Beantwortet:

Ano
am 10 Mär. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by