Module « scipy.integrate »
Classe « RK45 »
Informations générales
Héritage
builtins.object
OdeSolver
RungeKutta
RK45
Définition
class RK45(RungeKutta):
Description [extrait de RK45.__doc__]
Explicit Runge-Kutta method of order 5(4).
This uses the Dormand-Prince pair of formulas [1]_. The error is controlled
assuming accuracy of the fourth-order method accuracy, but steps are taken
using the fifth-order accurate formula (local extrapolation is done).
A quartic interpolation polynomial is used for the dense output [2]_.
Can be applied in the complex domain.
Parameters
----------
fun : callable
Right-hand side of the system. The calling signature is ``fun(t, y)``.
Here ``t`` is a scalar, and there are two options for the ndarray ``y``:
It can either have shape (n,); then ``fun`` must return array_like with
shape (n,). Alternatively it can have shape (n, k); then ``fun``
must return an array_like with shape (n, k), i.e., each column
corresponds to a single column in ``y``. The choice between the two
options is determined by `vectorized` argument (see below).
t0 : float
Initial time.
y0 : array_like, shape (n,)
Initial state.
t_bound : float
Boundary time - the integration won't continue beyond it. It also
determines the direction of the integration.
first_step : float or None, optional
Initial step size. Default is ``None`` which means that the algorithm
should choose.
max_step : float, optional
Maximum allowed step size. Default is np.inf, i.e., the step size is not
bounded and determined solely by the solver.
rtol, atol : float and array_like, optional
Relative and absolute tolerances. The solver keeps the local error
estimates less than ``atol + rtol * abs(y)``. Here `rtol` controls a
relative accuracy (number of correct digits). But if a component of `y`
is approximately below `atol`, the error only needs to fall within
the same `atol` threshold, and the number of correct digits is not
guaranteed. If components of y have different scales, it might be
beneficial to set different `atol` values for different components by
passing array_like with shape (n,) for `atol`. Default values are
1e-3 for `rtol` and 1e-6 for `atol`.
vectorized : bool, optional
Whether `fun` is implemented in a vectorized fashion. Default is False.
Attributes
----------
n : int
Number of equations.
status : string
Current status of the solver: 'running', 'finished' or 'failed'.
t_bound : float
Boundary time.
direction : float
Integration direction: +1 or -1.
t : float
Current time.
y : ndarray
Current state.
t_old : float
Previous time. None if no steps were made yet.
step_size : float
Size of the last successful step. None if no steps were made yet.
nfev : int
Number evaluations of the system's right-hand side.
njev : int
Number of evaluations of the Jacobian. Is always 0 for this solver as it does not use the Jacobian.
nlu : int
Number of LU decompositions. Is always 0 for this solver.
References
----------
.. [1] J. R. Dormand, P. J. Prince, "A family of embedded Runge-Kutta
formulae", Journal of Computational and Applied Mathematics, Vol. 6,
No. 1, pp. 19-26, 1980.
.. [2] L. W. Shampine, "Some Practical Runge-Kutta Formulas", Mathematics
of Computation,, Vol. 46, No. 173, pp. 135-150, 1986.
Liste des attributs statiques
A | [[ 0. 0. 0. 0. 0. ]
[ 0.2 0. 0. 0. 0. ]
[ 0.075 0.225 0. 0. 0. ]
[ 0.97777778 -3.73333333 3.55555556 0. 0. ]
[ 2.95259869 -11.59579332 9.82289285 -0.29080933 0. ]
[ 2.84627525 -10.75757576 8.90642272 0.27840909 -0.2735313 ]] |
B | [ 0.09114583 0. 0.4492363 0.65104167 -0.32237618 0.13095238] |
C | [0. 0.2 0.3 0.8 0.88888889 1. ] |
E | [-0.00123264 0. 0.00425277 -0.03697917 0.0508638 -0.04190476
0.025 ] |
error_estimator_order | 4 |
n_stages | 6 |
order | 5 |
P | [[ 1. -2.85358007 3.07174346 -1.12701757]
[ 0. 0. 0. 0. ]
[ 0. 4.02313338 -6.24932157 2.67542448]
[ 0. -3.73240196 10.06897059 -5.68552696]
[ 0. 2.55480383 -6.39911238 3.52193237]
[ 0. -1.37442411 3.27265775 -1.76728126]
[ 0. 1.38246893 -3.76493786 2.38246893]] |
TOO_SMALL_STEP | Required step size is less than spacing between numbers. |
Liste des opérateurs
Opérateurs hérités de la classe object
__eq__,
__ge__,
__gt__,
__le__,
__lt__,
__ne__
Liste des méthodes
Toutes les méthodes
Méthodes d'instance
Méthodes statiques
Méthodes dépréciées
Méthodes héritées de la classe RungeKutta
__init_subclass__, __subclasshook__
Méthodes héritées de la classe OdeSolver
dense_output, step
Méthodes héritées de la classe object
__delattr__,
__dir__,
__format__,
__getattribute__,
__hash__,
__reduce__,
__reduce_ex__,
__repr__,
__setattr__,
__sizeof__,
__str__
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :