Participer au site avec un Tip
Rechercher
 

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 :

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

Nom de l'attribut Valeur
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_order4
n_stages6
order5
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_STEPRequired step size is less than spacing between numbers.

Liste des propriétés

Nom de la propriétéDescription
step_size

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
Signature de la méthodeDescription

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__