niting 发表于 2008-12-1 18:31

请教:关于二重积分的问题

我是MATLAB新手,在做关于二重积分的时候出现问题,各位大虾请指点下,不甚感激
程序是这样的:
global u thegema thegemaS omegaC y e theta r
An=1.6e-3;                        %
w=2e-2;                               %
e=2.5e-1;                              %
l=An/w;                               %
yita=4e-21;                                 %
H=7e9;                               %
beita=0.044;
v=0.3;
v1=0.3;
v2=0.3;
K=0.454+0.41*v;
E1=1.1e11;
E2=1.1e11;
E= ((1-v1^2)/E1 + (1-v2^2)/E2)^-1;
fai=0.52;
R=1.1e-4;                %
thegema=1e-7;               %
omega=((pi*K*H)/(2*E))^2 *R;          %
omegaC=omega/thegema;      %dimensionless form
thegemaS=fai^2*thegema*omegaC;%
y=0.5; %
theta=0.05;
    % normal force
    p1=dblquad('f_pel', u,u+omegaC,-l/2/thegema,l/2/thegema,1e-12);

调用的'f_pel'函数:
function integral1=f_pel(z,r)
global u thegema thegemaS omegaC y e theta r
f=thegema*exp(-0.5*(z/thegemaS)^2)/((2*pi)^0.5*thegemaS);
u=(y-e/cos(theta)+r*sin(theta))/thegema;
integral1= ((z-u)/omegaC)^(1.5)*f;

运行后会提示:
Error in ==> dblquad>innerintegral at 82
    Q(i) = quadf(intfcn, xmin, xmax, tol, trace, y(i), varargin{:});
Error in ==> quad at 63
y = f(x, varargin{:});
Error in ==> dblquad at 58
Q = quadf(@innerintegral, ymin, ymax, tol, trace, intfcn, ...
Error in ==> Untitled1 at 27
    p1=dblquad('f_pel', u,u+omegaC,-l/2/thegema,l/2/thegema,1e-12);

这是为什么呢?再次谢谢各位大虾了!!!
页: [1]
查看完整版本: 请教:关于二重积分的问题