Native Shell
Native Shell:AI 生成的 UI,在你的应用中原生呈现,覆盖每个平台。iOS、Android、macOS、Windows 与 Linux 上的应用、GPUI 应用与网页在运行时加载已签名、沙箱隔离的 TSX 模块并绘制 th
AI 翻译
Evaluates the special functions of mathematical physics and statistics, including gamma, beta, error, Bessel, Airy, hypergeometric, elliptic and zeta functions, for real and complex arguments, using t
翻译准备中
开发工具R · CGitHub @pedrobtz在线运营者未确认
试用过了吗? 点一下就好,无需登录。
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Evaluates the special functions of mathematical physics and statistics, including gamma, beta, error, Bessel, Airy, hypergeometric, elliptic and zeta functions, for real and complex arguments, using the same kernels as the SciPy librarys scipy.special module (<https://docs.scipy.org/doc/scipy/reference/special.html>). Functions keep SciPy names and argument order so that code translates directly between Python and R, and results agree with SciPy to within its own test tolerances. SciPy' is descr
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗R's special functions are scattered. Base R has the gamma function and
Bessel functions of real argument; complex Bessel functions,
hypergeometric functions, elliptic integrals and the Lambert W function
each live in their own package, or in gsl, which needs the GNU
Scientific Library installed. And when a model is written in Python and
checked in R, or the other way round, two libraries that disagree in the
last digits are a needless source of doubt.
zuspecial gives R the special functions of
scipy.special,
computed by the same C++ kernels: xsf,
the library SciPy's special functions are built from, at the commit
SciPy 1.18.1 uses.
sc_jv(v, z) is
scipy.special.jv(v, z), so code translates line by line.NA-aware, keeping
names and dimensions; floating-point conditions follow SciPy's
seterr(), as warnings or errors when asked for.LinkingTo: zuspecial.Nothing is needed at run time; Boost.Math headers, from the BH package, are needed to build it.
Install zuspecial from CRAN with:
install.packages("zuspecial")
or the development version from GitHub with:
# install.packages("pak")
pak::pak("pedrobtz/zuspecial")
library(zuspecial)
Functions are vectorised, and take complex arguments where SciPy does:
sc_gamma(c(0.5, 5))
#> [1] 1.772454 24.000000
sc_gamma(1 + 1i)
#> [1] 0.4980157-0.1549498i
Arguments come in SciPy's order, the order first for the Bessel
functions, where base R's besselJ() puts it second:
sc_jv(2.5, 3)
#> [1] 0.41271
besselJ(3, 2.5)
#> [1] 0.41271
As in SciPy, the type of the argument picks the result: the Bessel
function of order 0.5 at -1 is NaN for a real -1, and a complex
number for -1+0i:
sc_jv(0.5, -1)
#> [1] NaN
sc_jv(0.5, -1 + 0i)
#> [1] 5.551115e-17+0.6713967i
Poles, overflow and loss of precision are silent by default, as in SciPy, and can be turned into warnings or errors:
sc_gamma(-1)
#> [1] NaN
sc_errstate(sc_gamma(-1), singular = "warn")
#> Warning in sc_gamma(-1): sc_gamma: singular in 1 element, first at index 1.
#> [1] NaN
Functions that return several values in SciPy return a named list:
str(sc_airy(1))
#> List of 4
#> $ ai : num 0.135
#> $ aip: num -0.159
#> $ bi : num 1.21
#> $ bip: num 0.932
Every function is sc_ followed by its name in scipy.special, the
alias SciPy's own documentation uses (import scipy.special as sc).
zuspecial_info() for the versions and the table of functions.The kernels are SciPy's xsf, with its
bundled Cephes, AMOS, specfun, Faddeeva and qd code, and Boost.Math for
the functions SciPy evaluates with it. The reference values come from
xsref. zuspecial is also checked
against the gsl, Bessel, hypergeo, lamW, expint and Rmpfr
packages.