声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 907|回复: 0

[编程技巧] 请教:关于二重积分的问题

[复制链接]
发表于 2008-12-1 18:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我是MATLAB新手,在做关于二重积分的时候出现问题,各位大虾请指点下,不甚感激
程序是这样的:
global u thegema thegemaS omegaC y e theta r
An=1.6e-3;                          % [m^2]
w=2e-2;                               % [m]
e=2.5e-1;                                % [m]
l=An/w;                               % [m]
yita=4e-21;                                 % [m^2]
H=7e9;                               % [Pa]
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;                %[m]
thegema=1e-7;               %[m]
omega=((pi*K*H)/(2*E))^2 *R;          %[m]
omegaC=omega/thegema;        %dimensionless form
thegemaS=fai^2*thegema*omegaC;  %[m]
y=0.5; %[m]
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);

这是为什么呢?再次谢谢各位大虾了!!!

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-12 12:08 , Processed in 0.157192 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表