SymPy学习之Numeric Computation

来源:互联网 发布:湖南农大网络教学平台 编辑:程序博客网 时间:2024/06/05 21:16
Subs/evalf
>>> from sympy import *>>> from sympy.abc import x>>> expr = sin(x)/x>>> expr.evalf(subs={x: 3.14})0.000507214304613640
Lambdify
>>> from sympy import *>>> from sympy.abc import x>>> expr = sin(x)/x>>> f = lambdify(x, expr)>>> f(3.14)0.000507214304614>>> from sympy import *>>> from sympy.abc import x>>> expr = sin(x)/x>>> f = lambdify(x, expr, "numpy")>>> import numpy>>> data = numpy.linspace(1, 10, 10000)>>> f(data)[ 0.84147098 0.84119981 0.84092844 ..., -0.05426074 -0.05433146 -0.05440211]
各种方法速度表
ToolSpeedQualitiesDependenciessubs/evalf50usSimpleNonelambdify1usScalar functionsmathlambdify-numpy10nsVector functionsnumpyufuncify10nsComplex vector expressionsf2py, CythonTheano10nsMany outputs, CSE, GPUsTheano
0 0
原创粉丝点击