gpt4 book ai didi

python - lambdify 可以返回 dtype np.float128 的数组吗?

转载 作者:太空宇宙 更新时间:2023-11-04 05:58:49 25 4
gpt4 key购买 nike

我正在求解一个大型非线性方程组,我需要高度的数值精度。我目前正在使用 sympy.lambdify 将方程组及其雅可比行列式的符号表达式转换为将 ndarray 作为输入并返回 ndarray 作为输出的矢量化函数。

默认情况下,lambdify 返回 dtype 为 numpy.float64 的数组。是否可以让它返回一个 dtype numpy.float128 的数组?也许这需要输入具有 numpy.float128 的数据类型?

最佳答案

如果您需要很高的精度,您可以尝试使用 SymPy float ,或直接使用 mpmath(它是 SymPy 的一部分),它提供任意精度。例如,sympy.Float('2.0', 100) 创建一个精度为 100 位的 2.0 float 。例如,您可以使用 sympy.sin(2).evalf(100) 之类的东西来获取 sin(2) 的 100 位数字。这将比 numpy 慢很多,因为它是任意精度的,这意味着它不使用机器 float ,并且它是用纯 Python 实现的(而 numpy 是用 Fortran 和 C 编写的)。

关于python - lambdify 可以返回 dtype np.float128 的数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26258420/

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