与 Julia 一起评估非理性
Evaluate Irrational with Julia
Julia 有内置常量 pi
,类型为 Irrational
。
julia> pi
π = 3.1415926535897...
julia> π
π = 3.1415926535897...
julia> typeof(pi)
Irrational{:π}
来自具有 N()
函数的 SymPy,我想评估 pi
(或其他 Irrational
,例如 e
、golden
, 等等) 到 n 位。
In [5]: N(pi, n=50)
Out[5]: 3.1415926535897932384626433832795028841971693993751
这可能吗?我假设 pi
是基于它的数学定义,而不仅仅是小数点后十三位。
当然,您可以设置 BigFloat
精度并使用 big(π)
。请注意,精度是二进制的;它以位计算。如果您将精度设置为至少 log2(10) + 1
所需位数的倍数,您应该是安全的。
示例:
julia> setprecision(BigFloat, 2000) do
@printf "%.200f" big(π)
end
3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196
这里我设置的精度比仅 200 位所需的精度高一点。
数字是在 GNU MPFR 库中计算的。
Julia 有一个接口用于 SymPy package:
# Pkg.add("SymPy") ## initial installation of package
using SymPy
julia> N(PI, 50)
3.14159265358979323846264338327950288419716939937508
请注意,SymPy 使用大写字母 PI
来区分它的对象与原生 Julia 中的小写字母 pi
。您还需要在计算机上安装本机 SymPy 才能在此处获得完整功能。
其他评论:
- 有关 Julia SymPy 的更长教程以及大量优秀示例,请参阅 here。
Julia 有内置常量 pi
,类型为 Irrational
。
julia> pi
π = 3.1415926535897...
julia> π
π = 3.1415926535897...
julia> typeof(pi)
Irrational{:π}
来自具有 N()
函数的 SymPy,我想评估 pi
(或其他 Irrational
,例如 e
、golden
, 等等) 到 n 位。
In [5]: N(pi, n=50)
Out[5]: 3.1415926535897932384626433832795028841971693993751
这可能吗?我假设 pi
是基于它的数学定义,而不仅仅是小数点后十三位。
当然,您可以设置 BigFloat
精度并使用 big(π)
。请注意,精度是二进制的;它以位计算。如果您将精度设置为至少 log2(10) + 1
所需位数的倍数,您应该是安全的。
示例:
julia> setprecision(BigFloat, 2000) do
@printf "%.200f" big(π)
end
3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848111745028410270193852110555964462294895493038196
这里我设置的精度比仅 200 位所需的精度高一点。
数字是在 GNU MPFR 库中计算的。
Julia 有一个接口用于 SymPy package:
# Pkg.add("SymPy") ## initial installation of package
using SymPy
julia> N(PI, 50)
3.14159265358979323846264338327950288419716939937508
请注意,SymPy 使用大写字母 PI
来区分它的对象与原生 Julia 中的小写字母 pi
。您还需要在计算机上安装本机 SymPy 才能在此处获得完整功能。
其他评论:
- 有关 Julia SymPy 的更长教程以及大量优秀示例,请参阅 here。