积分与常微分方程 (scipy.integrate)#

对给定函数对象进行积分#

quad(func, a, b[, args, full_output, ...])

计算定积分。

quad_vec(f, a, b[, epsabs, epsrel, norm, ...])

对向量值函数进行自适应积分。

cubature(f, a, b, *[, rule, rtol, atol, ...])

对多维数组值函数进行自适应立方积分。

dblquad(func, a, b, gfun, hfun[, args, ...])

计算二重积分。

tplquad(func, a, b, gfun, hfun, qfun, rfun)

计算三重(定)积分。

nquad(func, ranges[, args, opts, full_output])

对多变量进行积分。

tanhsinh(f, a, b, *[, args, log, maxlevel, ...])

使用tanh-sinh求积法数值计算收敛积分。

fixed_quad(func, a, b[, args, n])

使用固定阶高斯求积法计算定积分。

newton_cotes(rn[, equal])

返回牛顿-科茨积分的权重和误差系数。

lebedev_rule(n)

列别捷夫求积。

qmc_quad(func, a, b, *[, n_estimates, ...])

使用准蒙特卡洛求积法计算N维积分。

积分警告

积分过程中出现问题的警告。

对给定固定样本的函数进行积分#

trapezoid(y[, x, dx, axis])

使用复合梯形法则沿给定轴进行积分。

cumulative_trapezoid(y[, x, dx, axis, initial])

使用复合梯形法则对 y(x) 进行累积积分。

simpson(y[, x, dx, axis])

使用给定轴上的样本和复合辛普森法则对 y(x) 进行积分。

cumulative_simpson(y, *[, x, dx, axis, initial])

使用复合辛普森1/3法则对 y(x) 进行累积积分。

romb(y[, dx, axis, show])

使用函数样本进行龙贝格积分。

另请参阅

scipy.special 用于正交多项式(特殊函数)、高斯求积的根和权重以及其他权重因子和区域。

求和#

nsum(f, a, b, *[, step, args, log, ...])

计算收敛的有限或无限级数。

求解ODE系统的初值问题#

求解器作为单独的类实现,可以直接使用(低级用法),也可以通过便利函数使用。

solve_ivp(fun, t_span, y0[, method, t_eval, ...])

求解ODE系统的初值问题。

RK23(fun, t0, y0, t_bound[, max_step, rtol, ...])

显式3(2)阶龙格-库塔方法。

RK45(fun, t0, y0, t_bound[, max_step, rtol, ...])

显式5(4)阶龙格-库塔方法。

DOP853(fun, t0, y0, t_bound[, max_step, ...])

显式8阶龙格-库塔方法。

Radau(fun, t0, y0, t_bound[, max_step, ...])

5阶Radau IIA族隐式龙格-库塔方法。

BDF(fun, t0, y0, t_bound[, max_step, rtol, ...])

基于后向微分公式的隐式方法。

LSODA(fun, t0, y0, t_bound[, first_step, ...])

具有自动刚度检测和切换的Adams/BDF方法。

OdeSolver(fun, t0, y0, t_bound, vectorized)

ODE求解器的基类。

DenseOutput(t_old, t)

ODE求解器在步长上生成的局部插值器的基类。

OdeSolution(ts, interpolants[, alt_segment])

连续ODE解。

旧API#

这些是为 SciPy 早期开发的例程。它们封装了用 Fortran 实现的旧求解器(主要是 ODEPACK)。尽管它们的接口不是很方便,并且与新 API 相比缺少某些功能,但求解器本身的质量很好,并且作为编译的 Fortran 代码运行速度很快。在某些情况下,可能值得使用此旧 API。

odeint(func, y0, t[, args, Dfun, col_deriv, ...])

对常微分方程组进行积分。

ode(f[, jac])

数值积分器的通用接口类。

complex_ode(f[, jac])

用于复杂系统的ode包装器。

ODEint警告

在执行 odeint 期间引发的警告。

求解ODE系统的边值问题#

solve_bvp(fun, bc, x, y[, p, S, fun_jac, ...])

求解ODE系统的边值问题。