24小时热门版块排行榜    

查看: 632  |  回复: 3

nagami

木虫 (正式写手)

[求助] 帮忙用matlab算几个定积分 已有1人参与

请问如何用matlab计算,无穷积分。给个简易的代码可否,然后计算下如下的积分是否是正确的。多谢各位
帮忙用matlab算几个定积分
sint.jpg
回复此楼

» 猜你喜欢

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

女靠衣装;男靠金装
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
nagami: 金币+10, ★★★很有帮助, 谢谢 2014-03-29 19:00:15
结论正确。
C code 如下
--------------------------------------------------
#include<stdio.h>
#include<math.h>
void main()
{
        double x, y1, y2, h=1.0e-4;
       
        x=h;
        y1=0;
        y2=0;
        for(;
        {
            y1+=sin(x)*sqrt(x)/(exp(x)+1)*h;       
                y2+=sin(x)*sqrt(x)/(exp(x*x)+1)*h;       
                if(sqrt(x)/(exp(x)+1)<1.0e-12)
                        break;               
                else
                        x+=h;
                printf("y1= %e;  y2= %e\n", y1, y2);  
        }
}
2楼2014-03-29 17:53:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

终之太刀—晓

铁杆木虫 (著名写手)

数学爱好者

可以尝试将区间分为两部分:[0,1]&[1,+∞);
对于第二部分,做倒变换t=1/x,变为[0,1]上的定积分;
合并这两部分,采用Gauss复化求积公式。
PreferenceforMathematics
3楼2015-04-11 01:38:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nagami

木虫 (正式写手)

引用回帖:
3楼: Originally posted by 终之太刀—晓 at 2015-04-11 01:38:02
可以尝试将区间分为两部分:&[1,+∞);
对于第二部分,做倒变换t=1/x,变为上的定积分;
合并这两部分,采用Gauss复化求积公式。

这个带任意权的Gauss积分公式计算的结果。
那会C++计算的,想用matlab计算做验证
女靠衣装;男靠金装
4楼2015-04-11 09:04:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 nagami 的主题更新
信息提示
请填处理意见