DE types

DE types

Discrete

abstract type AbstractDiscreteFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct DiscreteFunction{iip, F, Ta, S} <: DiffEqBase.AbstractDiscreteFunction{iip}
abstract type AbstractDiscreteProblem <: DiffEqBase.AbstractODEProblem{uType,tType,isinplace}

Base for types which define discrete problems.

struct DiscreteProblem{uType, tType, isinplace, P, F, K} <: DiffEqBase.AbstractDiscreteProblem{uType,tType,isinplace}

Defines a discrete problem.

Fields

  • f

    The function in the map.

  • u0

    The initial condition.

  • tspan

    The timespan for the problem.

  • p

    The parameter values of the function.

  • kwargs

    A callback to be applied to every solver which uses the problem.

ODE

abstract type AbstractODEFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct ODEFunction{iip, F, TMM, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, TCV} <: DiffEqBase.AbstractODEFunction{iip}
abstract type AbstractODEProblem <: DiffEqBase.DEProblem

Base for types which define ODE problems.

struct ODEProblem{uType, tType, isinplace, P, F, K, PT} <: DiffEqBase.AbstractODEProblem{uType,tType,isinplace}

Defines an ODE problem.

Fields

  • f

    The ODE is du/dt = f(u,p,t).

  • u0

    The initial condition is u(tspan[1]) = u0.

  • tspan

    The solution u(t) will be computed for tspan[1] ≤ t ≤ tspan[2].

  • p

    Constant parameters to be supplied as the second argument of f.

  • kwargs

    A callback to be applied to every solver which uses the problem.

  • problem_type

struct StandardODEProblem
abstract type AbstractODESolution <: DiffEqBase.AbstractTimeseriesSolution{T,N}
struct ODESolution{T, N, uType, uType2, DType, tType, rateType, P, A, IType, DE} <: DiffEqBase.AbstractODESolution{T,N}
abstract type AbstractODEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractODEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}

Dynamical ODEs

struct DynamicalODEFunction{iip, F1, F2, TMM, Ta} <: DiffEqBase.AbstractODEFunction{iip}
abstract type AbstractDynamicalODEProblem
struct DynamicalODEProblem{iip} <: DiffEqBase.AbstractDynamicalODEProblem

Second-order ODEs

abstract type AbstractSecondOrderODEProblem <: DiffEqBase.AbstractODEProblem{uType,tType,isinplace}
struct SecondOrderODEProblem{iip} <: DiffEqBase.AbstractDynamicalODEProblem
abstract type AbstractSecondOrderODEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractSecondOrderODEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}

Split ODEs

struct SplitFunction{iip, F1, F2, TMM, C, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, TCV} <: DiffEqBase.AbstractODEFunction{iip}
abstract type AbstractSplitODEProblem
struct SplitODEProblem{iip} <: DiffEqBase.AbstractSplitODEProblem

Steady state problems

abstract type AbstractSteadyStateProblem <: DiffEqBase.DEProblem

Base for types which define steady state problems for ODE systems.

struct SteadyStateProblem{uType, isinplace, P, F, K} <: DiffEqBase.AbstractSteadyStateProblem{uType,isinplace}

Defines a steady state problem.

Fields

  • f

    f: The function in the ODE.

  • u0

    The initial guess for the steady state.

  • p

    Parameter values for the ODE function.

  • kwargs

abstract type AbstractSteadyStateSolution <: DiffEqBase.AbstractNoTimeSolution{T,N}
struct SteadyStateSolution{T, N, uType, R, P, A} <: DiffEqBase.AbstractSteadyStateSolution{T,N}
abstract type AbstractSteadyStateAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractSteadyStateIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,Nothing}

Boundary value problems

struct TwoPointBVPFunction{bF}
abstract type AbstractBVProblem <: DiffEqBase.AbstractODEProblem{uType,tType,isinplace}

Base for types which define BVP problems.

struct StandardBVProblem
struct BVProblem{uType, tType, isinplace, P, F, bF, PT, K} <: DiffEqBase.AbstractBVProblem{uType,tType,isinplace}
struct TwoPointBVProblem{iip}

Analytical problems

abstract type AbstractAnalyticalProblem <: DiffEqBase.AbstractODEProblem{uType,tType,isinplace}
struct AnalyticalProblem{uType, tType, isinplace, P, F, K} <: AbstractAnalyticalProblem{uType,tType,isinplace}
abstract type AbstractAnalyticalSolution <: DiffEqBase.AbstractTimeseriesSolution{T,N}

SDE

SDE problems are subtypes of RODE problems.

abstract type AbstractSDEFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct SDEFunction{iip, F, G, TMM, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, GG, TCV} <: DiffEqBase.AbstractSDEFunction{iip}
abstract type AbstractSDEProblem <: DiffEqBase.AbstractRODEProblem{uType,tType,isinplace,ND}

Base for types which define SDE problems.

struct StandardSDEProblem
struct SDEProblem{uType, tType, isinplace, P, NP, F, G, K, ND} <: DiffEqBase.AbstractSDEProblem{uType,tType,isinplace,ND}
abstract type AbstractSDEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractSDEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}

Split SDEs

struct SplitSDEFunction{iip, F1, F2, G, TMM, C, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, TCV} <: DiffEqBase.AbstractSDEFunction{iip}
abstract type AbstractSplitSDEProblem
struct SplitSDEProblem{iip} <: DiffEqBase.AbstractSplitSDEProblem

RODE

abstract type AbstractRODEFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct RODEFunction{iip, F, TMM, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, TCV} <: DiffEqBase.AbstractRODEFunction{iip}
abstract type AbstractRODEProblem <: DiffEqBase.DEProblem

Base for types which define RODE problems.

mutable struct RODEProblem{uType, tType, isinplace, P, NP, F, K, ND} <: DiffEqBase.AbstractRODEProblem{uType,tType,isinplace,ND}
abstract type AbstractRODESolution <: DiffEqBase.AbstractODESolution{T,N}
struct RODESolution{T, N, uType, uType2, DType, tType, randType, P, A, IType, DE} <: DiffEqBase.AbstractRODESolution{T,N}
abstract type AbstractRODEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractRODEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}

DDE

abstract type AbstractDDEFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct DDEFunction{iip, F, TMM, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, TCV} <: DiffEqBase.AbstractDDEFunction{iip}
abstract type AbstractDDEProblem <: DiffEqBase.DEProblem

Base for types which define DDE problems.

struct DDEProblem{uType, tType, lType, lType2, isinplace, P, F, H, K} <: DiffEqBase.AbstractDDEProblem{uType,tType,lType,isinplace}
abstract type AbstractConstantLagDDEProblem <: DiffEqBase.AbstractDDEProblem{uType,tType,lType,isinplace}
abstract type AbstractDDESolution <: DiffEqBase.AbstractODESolution{T,N}
abstract type AbstractDDEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractDDEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}
abstract type AbstractHistoryFunction <: Function

Base for types which define the history of a delay differential equation.

SDDE

abstract type AbstractSDDEFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct SDDEFunction{iip, F, G, TMM, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, GG, TCV} <: DiffEqBase.AbstractSDDEFunction{iip}
abstract type AbstractSDDEProblem <: DiffEqBase.DEProblem

Base for types which define SDDE problems.

struct SDDEProblem{uType, tType, lType, lType2, isinplace, P, NP, F, G, H, K, ND} <: DiffEqBase.AbstractSDDEProblem{uType,tType,lType,isinplace,ND}
abstract type AbstractConstantLagSDDEProblem <: DiffEqBase.AbstractSDDEProblem{uType,tType,lType,isinplace,ND}
abstract type AbstractSDDEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractSDDEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}

DAE

abstract type AbstractDAEFunction <: DiffEqBase.AbstractDiffEqFunction{iip}
struct DAEFunction{iip, F, Ta, Tt, TJ, JP, TW, TWt, TPJ, S, TCV} <: DiffEqBase.AbstractDAEFunction{iip}
abstract type AbstractDAEProblem <: DiffEqBase.DEProblem

Base for types which define DAE problems.

struct DAEProblem{uType, duType, tType, isinplace, P, F, K, D} <: DiffEqBase.AbstractDAEProblem{uType,duType,tType,isinplace}
abstract type AbstractDAESolution <: DiffEqBase.AbstractODESolution{T,N}
struct DAESolution{T, N, uType, duType, uType2, DType, tType, P, A, ID, DE} <: DiffEqBase.AbstractDAESolution{T,N}
abstract type AbstractDAEAlgorithm <: DiffEqBase.DEAlgorithm
abstract type AbstractDAEIntegrator <: DiffEqBase.DEIntegrator{Alg,IIP,U,T}

PDE

abstract type AbstractPDEProblem <: DiffEqBase.DEProblem

Base for types which define PDE problems.

struct PDEProblem{P, E, S} <: DiffEqBase.AbstractPDEProblem

Jump problems

abstract type AbstractJumpProblem <: DiffEqBase.DEProblem

Base for types which define jump problems.

Noise problems

abstract type AbstractNoiseProblem <: DiffEqBase.DEProblem
struct NoiseProblem{N<:DiffEqBase.AbstractNoiseProcess, T, K} <: DiffEqBase.AbstractNoiseProblem

Basic problems (for testing?)

Linear

abstract type AbstractLinearProblem <: DiffEqBase.DEProblem

Base for types which define linear systems.

struct LinearProblem{uType, isinplace, F, bType, P, K} <: DiffEqBase.AbstractLinearProblem{bType,isinplace}
abstract type AbstractLinearSolution <: DiffEqBase.AbstractNoTimeSolution{T,N}
struct LinearSolution{T, N, uType, R, P, A} <: DiffEqBase.AbstractLinearSolution{T,N}
abstract type AbstractLinearAlgorithm <: DiffEqBase.DEAlgorithm

Nonlinear

abstract type AbstractNonlinearProblem <: DiffEqBase.DEProblem

Base for types which define nonlinear systems.

struct NonlinearProblem{uType, isinplace, P, F, K} <: DiffEqBase.AbstractNonlinearProblem{uType,isinplace}
abstract type AbstractNonlinearSolution <: DiffEqBase.AbstractNoTimeSolution{T,N}
abstract type AbstractNonlinearAlgorithm <: DiffEqBase.DEAlgorithm

Quadrature

abstract type AbstractQuadratureProblem <: DiffEqBase.DEProblem

Base for types which define integrals suitable for quadrature.

struct QuadratureProblem{isinplace, P, F, L, U, K} <: DiffEqBase.AbstractQuadratureProblem{isinplace}
abstract type AbstractQuadratureSolution <: DiffEqBase.AbstractNoTimeSolution{T,N}
abstract type AbstractQuadratureAlgorithm <: DiffEqBase.DEAlgorithm

Sensitivity problems

abstract type DESensitivity
abstract type AbstractSensitivitySolution