问题标签 [bessel-functions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
137 浏览

gnuplot - 使用 gnuplot 的 von Mises 分布

我需要将一些数据拟合到 von Mises 分布中: 在此处输入图像描述

但在此之前,我想先在 gnuplot 中绘制这个函数。我想重现不同 k 值的曲线,您可以在维基百科中看到它们:https ://en.wikipedia.org/wiki/Von_Mises_distribution 。

我的问题依赖于术语 Io(k),它是 0 阶的修正贝塞尔函数。Io(k)=Jo(ik),其中 Jo 是 n=0 的贝塞尔函数,基本上来自这个等式:在此处输入图像描述

在 gnuplot 中,可以使用函数绘制 Jo(k)

但是我不能:

有人知道如何在 gnuplot 中绘制 von Mises 分布吗?

0 投票
1 回答
319 浏览

python - 为什么 scipy 贝塞尔根发现不返回零根?

我正在尝试使用将贝塞尔函数零用于其他计算的代码。我注意到以下代码产生了我认为意外的结果。

我希望这个电话的结果是

代替

没有返回 x=0.0 处的根是否有原因?

从我所见,根沿 x 轴对称,除了在原点处发现的任何根,但我认为这不足以成为完全离开根的理由。

我正在使用的计算机安装了 python 版本 2.7.10 并使用 scipy 版本 0.19.0

PS以下功能是我试图找到的零点

0 投票
1 回答
49 浏览

python - numexpr 是否支持特殊的贝塞尔函数?

我需要在大约一千万点处评估 BesselK 函数。我知道scipy.special支持这一点scipy.special.kv(n, x),但我想要更快的评估以及内存有效的评估。理想情况下numexpr会很好,我也试过numexpr.evaluate("kv(n, x)")了,numexpr.evaluate("besselk(n,x)")但都没有奏效。有人知道 BesselK in 的确切命令numexpr吗?

0 投票
1 回答
85 浏览

matlab - 如何使用给定 k 范围(降低频率)的 besselh 函数在 matlab 中绘图?

我正在使用一个名为 besselh 的 Matlab 函数,它给出了 Theoderon 的升力不足函数的精确解,该函数在给定 k 范围内执行不可压缩流动中的简谐运动的二维翼型。

我试图用给定的 k 范围绘制这个函数的实部。我觉得我的代码中遗漏了一些非常简单的东西。也许,通过在循环中包含“绘图”函数,我可能会错误地使用 for 循环?

下面是情节应该是什么样子的图片(实线)。

任何帮助将不胜感激,在此先感谢您!

这就是情节应该是什么样子

0 投票
1 回答
140 浏览

c++ - 在 C MexFunction 中使用 Besselk 函数

我想在 C mexFunction 中实现 Matern 相关函数,这需要计算第二类修改后的 Besselk 函数。

在 MATLAB 中,可以使用函数 besselk。但是,在任何 C 库中都没有这样的等价物(对吗?)。我知道 boost 库(一个 C++ 库)提供了对第二类修改后的 Besselk 函数的访问,请参阅https://en.cppreference.com/w/cpp/experimental/special_math,但我无法让它工作在我的 Mac 以及 linux 系统上使用 MATLAB 2018a 的 C mexFunction 中。顺便说一句,我不想​​在 C mex 代码中调用 MATLAB 函数 besselk。

任何建议将不胜感激。下面是使用 C mex 代码构建母相关函数的最小示例。

如果我将上面的 C mex 代码翻译成 C++ 代码文件,我可以在我的 mac 上成功地使用 g++ 编译器编译 C++ 代码。

为了再次强调我的问题,我不需要 C++ 代码,而是想让我的 C mex 代码成功运行。

0 投票
1 回答
234 浏览

python - Python 中的开尔文函数 KelvinBer[n,z]

在 Mathematica 中有开尔文函数 KelvinBer[n,z]。我需要在 Python 中具有 n=0 和 n=1 的等价物。

有 scipy.special.ber(x),但据我了解和玩弄,它带有 n=0。是否有已定义的 n=1 可用的 KelvinBer?

我可以以数字方式实现它,但如果有人知道更快的方法,我将非常感激。

0 投票
1 回答
92 浏览

c++ - Arrayfire 贝塞尔函数

我试图了解此处提供的 arrayfire 文档中定义的贝塞尔函数的语法:http: //archive.arrayfire.com/arrayfire/c/group__image__func__c__bessel.htm#gaa625037807cb75ef8815051c066e9657

在 af_besselj_C 部分下,我不确定这个“nu”术语是什么。我理解 out 和 in 数组,我相信“n”是贝塞尔函数的顺序。有谁知道这个“nu”一词代表什么?谢谢!

0 投票
1 回答
565 浏览

python - 在 Python 中计算积分的问题

所以我一直在尝试在特定表达式上使用 Scipy 中的通用积分方法(四元法)在 numpy 上;但是,我收到以下错误

这是我要集成的功能(这里似乎没有 mathjax):

t*y(t) * J0(u_{i} * t/a) dt 从 0 到 a 的积分,其中 a 是 y(t) 的长度,J0 是零阶贝塞尔函数,u_{i} 是J0(u) = 0 的根

我的代码:

0 投票
1 回答
1880 浏览

c++ - 如何在 C++ 中将 boost 用于贝塞尔函数

我尝试用 C++ 编写球形贝塞尔函数 #include <boost/math/special_functions/bessel.hpp>sph_bessel(v,x)在我的代码中使用和,但发生错误说这没有在这个范围内声明。我用 g++ test.cpp 编译。请帮助我。

编译代码:

并给出这个错误:

0 投票
1 回答
1036 浏览

matlab - 使用二分法找到第一类贝塞尔函数 (J0(x)) 的第 n 个根

首先,我想澄清一下,这是学校的作业,所以我不是在寻找解决方案。我只是想被推向正确的方向。

现在,对于问题。

我们有使用二分法求多项式根的代码:

我们必须使用此代码来找到第一类贝塞尔函数 (J0(x)) 的第 n 个零。插入一个范围然后找到我们正在寻找的特定根非常简单。但是,我们必须绘制 Xn 与 n 的关系图,为此,我们需要能够计算与 n 相关的大量根。所以为此,我写了这段代码:

我相信这会奏效,但它提供的根源不是有序的并且不断重复。我认为问题是我调用 bisection2 时的范围。我知道 [i,j] 不是最好的方法,我希望有人能引导我朝着正确的方向解决这个问题。

谢谢你。