为什么运行提示我这个错误,明明算完是个数,求最后两行积分s换成算出来的数就好用,直接用s就不行

clc
clear
syms zn dn
sigma=2.04
N=7.32410^(-3)
beta=6.337
sigmas=((N
betasigma).^2-3.7210^(-4)).^0.5/N/beta
t=0.01
Q=t/(Npibetasigma)
sigmas=((N
betasigma).^2-3.7210^(-4)).^0.5/N/beta
N=7.32410^(-3)
beta=6.337
s=vpasolve((int((zn-dn).
(1/((2.pi).^0.5).(sigma/sigmas).exp(-0.5.(sigma/sigmas).^2.zn.^2)),dn,Inf))-Q)
fun=@(zn) (zn-s).^(1/2).
(1/((2.pi).^0.5).(sigma/sigmas).exp(-0.5.(sigma/sigmas).^2.*zn.^2))
q=integral(fun,s,Inf)

img

img

这里是在定义一个匿名函数,zn和s都应该是该函数的形参,所以应该是:

fun=@(zn,s) 表达式