问题标签 [mpmath]

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 回答
107 浏览

floating-point - 为什么在相同精度下 mpmath 比 gsl 慢?哪些结果是正确的?

我简单地测试了mpmathgsl的从句函数。代码如下:

结果如下:

从我在相同精度上找到的结果来看,结果相差很大(mpmath:4.19...但是gsl:4.18...),我想知道哪个更准确?并且在相同精度下,mpmath 比 gsl_sf_clausen 慢 100 多倍,为什么?

谢谢

0 投票
1 回答
196 浏览

python - 任意十进制精度奇异值分解和矩阵求逆的加速

我将mpmath用于任意小数精度。我正在创建大型方阵(30 x 30 和 100 x 100)。对于我的代码,我正在使用 mpmath 的内置包 执行奇异值分解矩阵求逆。

我的问题是 mpmath 很慢,即使有gmpy后端。我需要高达 50 个小数点的精度(如果解决方案很快,我更喜欢它扩展到更多小数点)。

有没有办法在 python 中加速这些线性代数问题?

有人在这里问了类似的问题,但有两个区别:

  1. 答案没有解决奇异值分解
  2. 答案给出了估计逆的方法,但他们并没有试图证明接近真实答案比 mpmath 的方法更快。我已经尝试过这篇文章中给出的解决方案,我发现它比 mpmath 的内部算法要慢。
0 投票
1 回答
4153 浏览

python - Octave:使用符号包时的 ImportError

我首先使用以下方法从源代码构建 Octave:

然后我使用以下方法从八度范围内安装了符号包:

之后我做了:

在使用 syms 函数时,它给出了一个未安装 Sympy 的 ImportError。因此,我使用以下方法安装了 Sympy:

之后我再次尝试使用 syms,现在它给出了这个错误:

请告诉我如何解决这个问题。
操作系统:macOS Sierra 10.12.4
GNU Octave,版本 4.2.1

0 投票
1 回答
1414 浏览

python - np.roots() 导致 'float() 参数必须是字符串或数字' 与 mp.mpc 类型问题

我收到了这个错误:

> float() argument must be a string or a number

那么,为什么会发生这种情况?(我尝试了类似的命令,np.asarray()但它一直失败)。

mp.mpc(cmath.rect(a,b)))

0 投票
2 回答
647 浏览

python - 如何使用 bitstring 包将浮点数作为“0”和“1”字符的字符串输入?

我想使用包bitstringmpmath(或任何其他方式来保证任意设置的输出精度和指定的舍入模式)在作为二进制 s 给出的浮点输入上计算rcp, sqrt, sin, cos, ln, ,... 的值并获得二进制答案.expbitstringbitstring

我的首选是 C 中的 MPFR,但我想探索 Python 的浮点高精度包,希望更容易处理。我的第一个问题是如何将以下十进制浮点数反转为bitstring转换:

即如何提供'00111111100110011001100110011010'给其中一个bitstringmpmath以它解释为(刚刚结束)的方式1.2提供,然后将其提供给一个函数,例如sin,,cosln(再次将我的答案变成a bitstring)。

我发现很难从 Python /文档中了解二进制输入。它只说明了十进制浮点数表示的困难,而不是如何绕过这些简单地输入精确的二进制浮点数。bitstringmpmath

0 投票
1 回答
2001 浏览

python - Python:AttributeError:'mpc'(或'mpf')对象没有属性'arcsin'

我试图从 中使用 Jacobi 椭圆函数mpmath,但得到下面给出的简单代码的错误:

即使我只传递函数的实部,我也会收到错误消息sn(0.5,-1)。我不知道我是否犯了错误。请帮忙。提前致谢。

0 投票
1 回答
815 浏览

python - python中的mpmath拉普拉斯反函数

我试图找到一个表达式的拉普拉斯逆,除了一个变量之外的所有变量在声明时都已经定义:

但我收到此错误:

我也尝试了文档网站lambda function建议的格式,但仍然出现同样的错误。

mpmath.invertlaplace函数是否要求在定义时所有内容都以数字形式表示?我问是因为这有效:

如果是这样,我需要能够规避这一点。对我来说,重点是玩弄其他变量,看看它们如何影响逆拉普拉斯算子。此外,有人会认为函数在传递给mpmath.

如果不是,那么这里到底发生了什么?

0 投票
1 回答
276 浏览

python - 在 python mpmath v. 0.19 中,找不到 invertlaplace() 命令

我已经在我的 Windows 计算机上的 Anaconda 中安装了 mpmath 0.19 版,并且正在使用 Spyder。我运行了 runtests(),一切都被列为 OK。不过,我无法让 2017 invertlaplace() 函数工作。似乎python找不到命令,因为我得到了错误:NameError: name 'invertlaplace' is not defined

有任何想法吗 ?

我运行的代码几乎就是文档中的代码:

0 投票
1 回答
234 浏览

scipy - 使用 mpmath 函数执行 scipy.integrate 的四元积分方法时出现“TypeError”消息

我正在尝试使用计算两个积分scipy.integrate.quad.但是,由于第一个参数为负的gamma函数未在 中定义,我必须从 中选择版本。运行以下代码后,scipympmath

这是我不知道如何处理并需要帮助的错误消息:

回溯(最后一次调用):文件“test.py”,第 19 行,在 Integral1 = quad(Integrand1, low, threshold, args=(low, up, threshold, alpha, beta)) 文件“/home/username/ anaconda3/lib/python3.6/site-packages/mpmath/calculus/quadrature.py”,第 748 行,四点 [0],prec,epsilon,m,详细)文件“/home/username/anaconda3/lib/ python3.6/site-packages/mpmath/calculus/quadrature.py",第 215 行,对于 i in xrange(len(points)-1) 的总和:TypeError:'float' 类型的对象没有 len()

我只能猜测原因可能是quad函数与使用定义的积分不兼容mpmath.

0 投票
1 回答
145 浏览

arrays - 绘制在 mpmath 模块而不是 scipy 中定义的函数时如何管理“TypeError”消息?

出于我的问题的目的,我必须使用module 而不是scipy中的gamma函数。但是,当变量从数组中获取并且 y 值应该以相同的格式生成时,我使用它来绘制我的函数。但在这样做时,我收到一条错误消息,抱怨从arraympf的转换。mpmathmatplotlib.pyplotnumpy TypeError

回溯(最后一次调用):文件“test.py”,第 35 行,在 y_array = PDF(x_array, low, up, threshold, alpha, beta) 文件“test.py”,第 28 行,在 PDF lambda x 中: C * g(x, low, up, beta) 文件“/home/username/anaconda3/lib/python3.6/site-packages/numpy/lib/function_base.py”,第 1344 行,分段 y[condlist[k ]] = item(vals, *args, **kw) 文件“test.py”,第 27 行,在 [x < 阈值],[lambda x: C * pow(x/threshold, alpha) * g(x, low, up, beta),文件“test.py”,第 13 行,以 g 为单位返回 mp.gamma(-2/3) * (mp.gammainc(-2/3, beta*(x/low)**3 ) - mp.gammainc(-2/3, beta*(x/up)**3)) 文件“/home/username/anaconda3/lib/python3.6/site-packages/mpmath/functions/expintegrals.py” ,第 141 行,在 gammainc a = ctx.转换(a)文件“/home/username/anaconda3/lib/python3.6/site-packages/mpmath/ctx_mp_python.py”,第 662 行,在转换中返回 ctx._convert_fallback(x,字符串)文件“/home/username /anaconda3/lib/python3.6/site-packages/mpmath/ctx_mp.py",第 614 行,在 _convert_fallback 中引发 TypeError("cannot create mpf from " + repr(x)) TypeError: cannot create mpf from array([ 6.11259157 e+09, 9.68780477e+10,9.68780477e+10,9.68780477e+10,
1.53541358e+12, 2.43346654e+13, 3.85678455e+14, 6.11259157e+15])

我需要知道如何 mpf 一个数组,我找到了这些页面(如何 mpf 一个数组)和(创建一个 mpf),但我不知道如何将它们应用到我的绘图例程中。