| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付买域名,送MP3、MP4
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY买空间,免费送域名(厦门中资源)
共有 320 人关注过本帖
标题:求助:一个积分之中套积分,但不是重积分的问题。
收藏  订阅  推荐  打印 
twomao
Rank: 1
等级:新手上路
帖子:1
积分:110
注册:2007-9-2
求助:一个积分之中套积分,但不是重积分的问题。

试过符号积分,没积出来。大家帮我想想办法吧。下面是我写的代码:
% ============================================================================
clear;clc
s0=0:0.05:0.3;
syms x z dpdx

n2=100; l=16.52; L=l*0.001; R=0.015; E=2.2637e11;
v0=0.03527432; vi=2.19e-8; ss=3e6;
ff=zeros(6,length(s0));
for i=1:6
W=i*1000;
f=[];
for j=1:length(s0)
s1=s0(j);
u2=n2*pi*R/30; u1=((2-s1).*u2)./(2+s1); u=(u1+u2)./2; uc=u2-u1;
hmin=(2.65*vi^0.54*(v0*u).^0.7*R^0.43*L^0.13/E^0.03)./W.^0.13;
hc=hmin*4/3;
b=(8*W*R/pi/L/E).^(0.5);
ph=2*W/L/b/pi;
p=ph*(1-x.^2/b^2).^(1/2);
dpdx=vpa(diff(p));
%以上准备工作

%以下积分求CH、SH、c
ch1=strcat(num2str(ss),'*cosh(dpdx*z/',num2str(ss),')/',num2str(v0));
sh1=strcat(num2str(ss),'*sinh(dpdx*z/',num2str(ss),')/',num2str(v0));
ch=subs(ch1,'dpdx',dpdx) %因为最终要对x积分,所以需要将dpdx关于x的表达式代入
sh=subs(sh1,'dpdx',dpdx) %因为最终要对x积分,所以需要将dpdx关于x的表达式代入
class(sh)
cH=inline(ch)
sH=inline(sh)
CH=quadl(cH,0,hc) %这一句有问题。这一句完成后,CH应该是x的函数。
SH=quadl(sH,0,hc)
c=(uc*CH-SH*(CH^2-SH^2+uc^2)^0.5)/(CH^2-SH^2)


%以下将CH、SH、c代入求被积函数fun
q=subs(strcat('dpdx*',num2str(hc),'+',num2str(ss),'*sinh(c)'),'dpdx',dpdx);
q=vpa(subs(q,'c',c));
fun=inline(q);

%以下积分求F2,进而求f
F1=quadl(fun,(-b),b)
F2=quadl(F1,(-L/2),L/2);
f(j)=double(F2/W);
end
ff(i,:)=f;
end
ff
plot(s0,ff,'-*')
% ================================================================================

搜索更多相关主题的帖子: 重积分  length  clc  clear  
2007-9-2 21:29
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.057228 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved