积分与常微分方程 (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)

Lebedev 正交。

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

使用准蒙特卡洛正交计算 N 维积分。

IntegrationWarning

关于积分过程中问题的警告。

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

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])

使用函数的样本进行 Romberg 积分。

另请参阅

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

求和#

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

评估收敛的有限或无限级数。

求解常微分方程组的初值问题#

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

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

求解常微分方程组的初值问题。

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, ...])

Radau IIA 系列的 5 阶隐式龙格-库塔方法。

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 包装器。

ODEintWarning

执行 odeint 期间引发的警告。

求解常微分方程组的边值问题#

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

求解常微分方程组的边值问题。