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

1 次查看(过去 30 天)
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 个评论
Rahul Kalampattel
I'm not getting any errors when I run your code in Matlab (R2016b). Which line were you having trouble with?
KSSV
KSSV 2017-3-10
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?

请先登录,再进行评论。

回答(1 个)

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

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by