gpt4 book ai didi

matlab - 使用 MATLAB 积分 0 阶贝塞尔函数

转载 作者:太空宇宙 更新时间:2023-11-03 20:35:56 28 4
gpt4 key购买 nike

我有一个简单的问题。我正在尝试使用 Matlab R2012a 评估 0 阶贝塞尔函数的不正确积分:

v = integral(@(x)(besselj(0, x), 0, Inf)

这给了我 v = 3.7573e+09。然而,这在理论上应该是 v = 1。当我想做的时候

v = integral(@(l)besselj(0,l), 0, 1000)

结果为 v = 1.0047。你能简单地解释一下,整合出了什么问题吗?以及如何正确集成贝塞尔类函数?

最佳答案

From the docs对振荡函数进行不正确的积分:

q = integral(fun,0,Inf,'RelTol',1e-8,'AbsTol',1e-13)

文档中的例子是

fun = @(x)x.^5.*exp(-x).*sin(x);

但我想在你的情况下尝试:

q = integral(@(x)(besselj(0, x),0,Inf,'RelTol',1e-8,'AbsTol',1e-13)

关于matlab - 使用 MATLAB 积分 0 阶贝塞尔函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15835566/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com