自己定义的matlab自定义函数,为什么调用transEnv的时候老是出错?其中我x,z传入的是数,y传入的是数组。
functionf=transEnv_L(x,y,z)globalW0_LZ_LNDIMSIGMACUT_Lf=exp(-(y.^2+z.^2)./W0_L^2./(1+...
function f=transEnv_L(x,y,z)
global W0_L Z_L NDIM SIGMACUT_L
f=exp(-(y.^2+z.^2)./W0_L^2./(1+x.^2/Z_L^2)).*window(sqrt(y.^2+z.^2),SIGMACUT_L)./(sqrt(1+x.^2/Z_L^2)).^((NDIM-1)/2);
function f=window(y,SIGMACUT)
global HPI PI
f=(0.5*(cos((HPI/2.)*(1-cos(HPI*(1-cos(y*PI/(3.0*SIGMACUT))))).^2)+1.0)).*heaviside(3*SIGMACUT-y).*heaviside(y+3*SIGMACUT); 展开
global W0_L Z_L NDIM SIGMACUT_L
f=exp(-(y.^2+z.^2)./W0_L^2./(1+x.^2/Z_L^2)).*window(sqrt(y.^2+z.^2),SIGMACUT_L)./(sqrt(1+x.^2/Z_L^2)).^((NDIM-1)/2);
function f=window(y,SIGMACUT)
global HPI PI
f=(0.5*(cos((HPI/2.)*(1-cos(HPI*(1-cos(y*PI/(3.0*SIGMACUT))))).^2)+1.0)).*heaviside(3*SIGMACUT-y).*heaviside(y+3*SIGMACUT); 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询