関数vの等値面をプロットしたい。
問題は、vが行列の引数を受け入れないことです (ラゲール関連の多項式が含まれているため、ベクトル化可能な関数ではありません) 。
したがって、x、y、lの値のメッシュグリッドを作成すると
[r,th,l]=meshgrid(0:0.5:5,0:pi/2:2*pi,0:2);
x=r.*cos(th);
y=r.*sin(th);
次に、引数として x 、 y & l をバイパスできないため、ループ (カウンター) を使用してvを評価するとします。
しかし、私は何か間違ったことをしており、その結果、グリッドのポイントでvを評価していません:
for l=0:2
k=k+1;
for r=0:0.5:5
i=i+1;
for th=0:pi/2:2*pi
j=j+1;
fun1=@(R)4*real(exp(-r.^2-R^2+2*1i*R*l./r).*(r+1i*R).^(2*l).*...
(mfun('L',n/2-l/2,l,r.^2+R^2)).^2);
v(i,j,k)=integral(fun1,-inf,inf);
end
end
end
誰かがループを行う方法を知っているので、x、y、l とサイズが一致するvを取得できるので、次を使用できます。
等値面(x、y、l、v) ??
または、誰かが別の方法で前述の等値面vを取得する方法を知っていますか?
私が得ることができるすべての助けが本当に必要です:)
よろしく、
パブロ