24小时热门版块排行榜    

查看: 2713  |  回复: 6

艳雪加油

铜虫 (初入文坛)

[求助] MATLAB程序中需要用高斯-勒让德求数值积分,出现点问题,请大神指教。 已有1人参与

高斯求积公式中高斯-勒让德(Gauss-Legendre)积分公式在MATLAB中没有专门的其函数实现,我在数值分析书上看到有GaussLeg的m函数(见附件)。
一个简单的数值积分运行没问题,若把被积函数写成m函数再调用就有问题了。可能GaussLeg的m函数需做些修改,请大神指教。

MATLAB程序中需要用高斯-勒让德求数值积分,出现点问题,请大神指教。
415274B539123D3082A89E2FEEA00ABB.jpg
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

512095518

专家顾问 (正式写手)

没看到你的附件
没有极限,只有超越!
2楼2017-03-14 09:09:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

512095518

专家顾问 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
因为你是函数文件,所以你改成@f试试,例如Ra = Gaussleg(@f,0,pi/2,4)
没有极限,只有超越!
3楼2017-03-14 09:12:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

艳雪加油

铜虫 (初入文坛)

我改成@f试了试不能运行啊,这个函数的调用应该就是'f'这个形式。

发自小木虫Android客户端
4楼2017-03-14 15:53:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

512095518

专家顾问 (正式写手)

【答案】应助回帖

引用回帖:
4楼: Originally posted by 艳雪加油 at 2017-03-14 15:53:25
我改成@f试了试不能运行啊,这个函数的调用应该就是'f'这个形式。

Ra = GaussLeg(@(x)f(x),0,pi/2,4)
function y=f(x)
y=x^2*sin(x);
end
没有极限,只有超越!
5楼2017-03-14 16:27:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

512095518

专家顾问 (正式写手)

【答案】应助回帖

不知道为什么不能发送短消息。
你之前给我的看的程序没问题,Ga1和2计算出来的结果是一样的。你自己再调试下看看。
没有极限,只有超越!
6楼2017-03-18 09:58:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

firsttopman

木虫 (著名写手)

你的附件呢????
7楼2017-11-02 22:12:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 艳雪加油 的主题更新
信息提示
请填处理意见