声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2803|回复: 5

[综合讨论] 关于符号积分出现Explicit integral could not be found的问题

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

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

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

x
源代码如下
syms E X Nrd r t Rd Rr P0 r1 r2 N1 N2 Sec G d;
d=0.666;
p=8/pi;
Rr=1;
Rd=2*Rr;
X=(Rd^2+r^2-Rr^2)/(2*r);
Sec=(Rd^2*acos(X/Rd)+Rr^2*acos((r-X)/Rr)-r*(Rd^2-X^2)^0.5);
P1=Sec/pi/Rr^2;
r1=d*cos(G)+((d*cos(G))^2-d^2+Rd^2)^0.5
r2=Rd+Rr;
N1=int(p*r*P1,'r',r1,r2)
N2=double(int(N1,'G',0,2*pi))


我昨天在自己电脑上运行这个程序,matlab 7,内存2G,第一次当d=0.5时算出来了,N2大约等于8,可惜没来的及保存,机器就死掉了,其实我想算的是d=0.666,但是现在怎么算都出错,
出现了下面的错误信息:
Warning: Explicit integral could not be found.
> In sym.int at 58

??? Error using ==> reshape
To RESHAPE the number of elements must not change.

Error in ==> sym.maple at 94
result = reshape(result,size(varargin{3}));

Error in ==> sym.int at 51
r = reshape(maple('map','int',f(:),[x.s '=(' a.s ')..(' b.s ')']),size(f));
参考前面的贴,有人说是因为机器配置不够,我没有更好的机器了,请哪位大侠帮忙算一下结果,多谢!

[ 本帖最后由 eight 于 2008-1-21 20:16 编辑 ]

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

发表于 2008-1-16 12:41 | 显示全部楼层

回复 楼主 的帖子

尝试用数值积分试试
 楼主| 发表于 2008-1-16 22:27 | 显示全部楼层
您好,请问如何用数值积分呢?我是初学,能否在我的源码上修改下?多谢
发表于 2008-1-17 08:31 | 显示全部楼层
我也在算类似的一个积分,被积函数有两个参数a、b,对参数a积分,积分上下限是另外一个参数b的函数。也遇到你说的warning(这个警告貌似可以给出正确结果),对于特定的b值,整个积分int有时候能给出结果,有时候提示错误、需要推出重启。

我的问题是:int积分和quadl积分的区别在哪里?我知道的是int是符号积分、quadl就是闭型的定积分了。谢谢
发表于 2008-1-17 09:18 | 显示全部楼层

回复 4楼 的帖子

quadl是数值积分

回3楼
请搜索论坛,本版的xjzuo版主有很不错的总结
发表于 2008-1-21 20:17 | 显示全部楼层
请养成发贴前先搜索的习惯
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-9-23 15:21 , Processed in 0.070179 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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