24小时热门版块排行榜    

查看: 2258  |  回复: 12
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

会飞的泡123

铜虫 (小有名气)

[求助] matlab求函数积分出错

算出两个含有贝塞尔函数的表达式:
A =besselj(4.,20.83*r)-1.804*r^4*(1.-1.*r^2);

B =besselj(0.,2.405*r)-.6242+.6242*r^2;
单独将A,B在 r(0,1)上积分积分都可以积分出来,但是AB乘积之后就积分不出来了。。。

> F=A.*B;
F =(besselj(4.,20.83*r)-1.804*r^4*(1.-1.*r^2))*(besselj(0.,2.405*r)-.6242+.6242*r^2);
G=int(F,r,0,1);
就会提示错误:

Warning: Explicit integral could not be found.
> In sym.int at 58
不知道是怎么回事,高手给指点一下下吧。。。
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿德

金虫 (正式写手)

引用回帖:
6楼: Originally posted by 会飞的泡123 at 2013-12-05 14:53:30
建了一个m文件,然后用了quad搞定了
谢谢你...

请问楼主,你是怎么建立m文件的,能否分享一下呢
7楼2013-12-05 19:55:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿德

金虫 (正式写手)

引用回帖:
8楼: Originally posted by 会飞的泡123 at 2013-12-12 21:00:24
function f=bes(r);
f=(besselj(4.,20.83.*r)-1.804.*r.^4.*(1.-1.*r.^2)).*(besselj(0.,2.405.*r)-.6242+.6242.*r.^2);
就这样~...

直接写函数为什么不行呢

[ 发自小木虫客户端 ]
9楼2013-12-12 21:47:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿德

金虫 (正式写手)

引用回帖:
10楼: Originally posted by 会飞的泡123 at 2013-12-13 09:05:55
后来我发现直接写也行,但是要用vpa改一下类型...

怎么改类型呢,我也有一个程序也是调用,但是程序很短当真觉得没必要这么麻烦的

[ 发自小木虫客户端 ]
11楼2013-12-13 10:12:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

阿德

金虫 (正式写手)

引用回帖:
12楼: Originally posted by 会飞的泡123 at 2013-12-13 15:07:39
我这个没有改类型,我是试了积分完用vpa控制了一下精度,然后就出来结果了
F=vpa(int(E,r,0,1));
就是积分函数用E表示,对r从0到1积分,这样也能出结果,但是会报一下错误,然后我问了我们这边一个老师,他说这个 ...

恩,好的,谢谢,喔来试试

[ 发自小木虫客户端 ]
13楼2013-12-14 16:54:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 会飞的泡123 的主题更新
信息提示
请填处理意见