DynamicBoundsBase.AbstractBoundLoc
— Typeabstract type AbstractBoundLoc
Abstract supertype indicating the type of value returned at a specific index.
DynamicBoundsBase.AbstractDERelaxIntegrator
— Typeabstract type AbstractDERelaxIntegrator
Abstract supertype for any integrator that constructs relaxations of a differential equation problem.
DynamicBoundsBase.AbstractDERelaxProblem
— Typeabstract type AbstractDERelaxProblem
Abstract supertype for all relaxation problems.
DynamicBoundsBase.AbstractDynamicIndex
— Typeabstract type AbstractDynamicIndex
An abstract supertype for index structures needed to reference parameters or time.
DynamicBoundsBase.AbstractIntegratorAttribute
— Typeabstract type AbstractIntegratorAttribute
Abstract supertype for attributes that can be used to set
or get
attributes (properties) of variables in the model.
DynamicBoundsBase.AbstractODERelaxIntegrator
— Typeabstract type AbstractODERelaxIntegrator <: AbstractDERelaxIntegrator
Abstract supertype for any integrator that constructs relaxations of an ordinary differential equation problem.
DynamicBoundsBase.AbstractODERelaxProblem
— TypeAbstractODERelaxProblem
Abstract type for problems used to construct relaxations of parametric ODEs.
DynamicBoundsBase.AbstractPathConstraint
— Typeabstract type AbstractPathConstraint <: AbstractRelaxProblemAttribute
An abstract supertype for all manners of path constraints.
DynamicBoundsBase.AbstractRelaxProblemAttribute
— Typeabstract type AbstractRelaxProblemAttribute
Abstract supertype for all problem attributes.
DynamicBoundsBase.AttachedProblem
— Typestruct AttachedProblem <: AbstractIntegratorAttribute
Retreives the problem used by the integrator.
DynamicBoundsBase.Bound
— Typestruct Bound{T<:AbstractBoundLoc} <: AbstractIntegratorAttribute
An integrator attribute for state bounds.
DynamicBoundsBase.Bound
— MethodBound{T}(x::Float64)
This constructor builds a structure that references the state bounds at time = x
.
DynamicBoundsBase.Bound
— MethodBound{T}(i::TimeIndex)
This constructor builds a structure that references the state bounds at time index i
.
DynamicBoundsBase.ConstantParameterValue
— Typestruct ConstantParameterValue <: AbstractIntegratorAttribute
A integrator attribute used to access the constant parameter values.
DynamicBoundsBase.ConstantStateBounds
— Typestruct ConstantStateBounds <: AbstractRelaxProblemAttribute
A problem attribute used to store constant state bounds.
xL::Vector{Float64}
Lower state variable bounds
xU::Vector{Float64}
Upper state variable bounds
DynamicBoundsBase.Gradient
— Typestruct Gradient{T<:AbstractBoundLoc} <: AbstractIntegratorAttribute
An integrator attribute for the Gradient.
DynamicBoundsBase.Gradient
— MethodGradient{T}(x::Float64) where {T <: AbstractBoundLoc}
This constructor builds a structure that references the subgradient of the relaxation at time = x
.
DynamicBoundsBase.Gradient
— MethodGradient{T}(i::TimeIndex) where {T <: AbstractBoundLoc}
This constructor builds a structure that references the gradient of the relaxation at time index i
.
DynamicBoundsBase.HasConstantStateBounds
— Typestruct HasConstantStateBounds <: AbstractRelaxProblemAttribute
A problem attribute used to check whether state bounds are defined as constant.
DynamicBoundsBase.HasStateBounds
— Typestruct HasStateBounds <: AbstractRelaxProblemAttribute
A problem attribute used to check whether state bounds are defined.
DynamicBoundsBase.HasUserJacobian
— Typestruct HasUserJacobian <: AbstractRelaxProblemAttribute
A problem attribute used to check whether a user-defined jacobian was specified.
DynamicBoundsBase.HasVariableStateBounds
— Typestruct HasVariableStateBounds <: AbstractRelaxProblemAttribute
A problem attribute used to check whether variable state bounds are defined.
DynamicBoundsBase.IntegratorName
— Typestruct IntegratorName <: AbstractIntegratorAttribute
An integrator attribute for the string identifying the integration scheme.
DynamicBoundsBase.IntegratorStates
— Typemutable struct IntegratorStates
A structure that holds the state of the integrator.
first_pnt_eval::Bool
Has the first point been evaluated
new_decision_box::Bool
Have the box-constraints changed since the last evaluation
new_decision_pnt::Bool
Has the decision point changed since the last evaluation
set_lower_state::Bool
The relaxed problem has been updated
set_upper_state::Bool
The local problem has been updated
termination_status::TerminationStatusCode
How did the integrator terminate
DynamicBoundsBase.IsNumeric
— Typestruct IsNumeric <: AbstractIntegratorAttribute
An integrator attribute for indicating bounds/relaxations are of numeric solution.
DynamicBoundsBase.IsSolutionSet
— Typestruct IsSolutionSet <: AbstractIntegratorAttribute
An integrator attribute for indicating bounds & relaxations are of exact solution.
DynamicBoundsBase.LocalIntegrator
— Typestruct LocalIntegrator <: AbstractIntegratorAttribute
Retreives the LocalIntegrator that corresponds to the integration method used by the integrator.
DynamicBoundsBase.LocalSensitivityOn
— Typestruct LocalSensitivityOn <: AbstractIntegratorAttribute
Set to true
if integrator should compute derivatives wrt p for the local ode integration.
DynamicBoundsBase.Lower
— Typestruct Lower <: AbstractBoundLoc
Indicates the lower bound, relaxation, or (sub)gradient should be returned.
DynamicBoundsBase.Nominal
— Typestruct Nominal <: AbstractBoundLoc
Indicates the nominal value or (sub)gradient should be returned.
DynamicBoundsBase.NotAllowedError
— TypeNotAllowedError <: Exception
Abstract type for error thrown when an operation is supported but cannot be applied in the current state of the integrator .
DynamicBoundsBase.ODERelaxProb
— Typemutable struct ODERelaxProb{F, JX, JP, xType, K} <: AbstractODERelaxProblem
A structure used to hold a parametric ODEs problem.
f::Any
Right-hand side function.
Jx!::Any
Jacobian of rhs w.r.t x.
Jp!::Any
Jacobian of rhs w.r.t p.
x0::Any
Initial condition function.
xL::Vector{Float64}
Lower constant state bound storage.
xU::Vector{Float64}
Upper constant state bound storage.
tspan::Tuple{Float64, Float64}
Time span of integration.
tsupports::Vector{Float64}
Support points: Points 'x' values will be queried.
p::Vector{Float64}
Point to relax/bound in over the decision space.
pL::Vector{Float64}
Lower bounds of the decision space.
pU::Vector{Float64}
Upper bounds of the decision space.
user_Jx::Bool
Problem has a user-defined Jacobian of the rhs w.r.t x
user_Jp::Bool
Problem has a user-defined Jacobian of the rhs w.r.t p
user_state_bnd::Bool
Constant user state bounds have been set
variable_state_bnd::Bool
Variable user state bounds have been set
nx::Int64
State space dimension
np::Int64
Decision space dimension
params::Vector{Float64}
Optional keywork argument: Indicates the rhs function and the initial condition function take an additional argument
param
. For example, it is nowf!(dx, x, p, param)
.polyhedral_constraint::Union{Nothing, PolyhedralConstraint}
Storage for polyhedral constraint, if any
constant_state_bounds::Union{Nothing, ConstantStateBounds}
Storage for the constant state bounds, if any
support_set::SupportSet{Float64}
The support set if used
kwargs::Any
Additional keyword arguments
DynamicBoundsBase.ODERelaxProb
— MethodODERelaxProb(f, tspan, x0, pL, pU; kwargs...)
Constructor for basic parametric ODE problem. The f
is rhs function. The integration time span is tspan
. The initial condition (which may be a function of p) is x0
. The lower decision variable bounds are given by pL
and the upper decision variable bounds are given by pU
. Other inputs are set via keyword arguments.
DynamicBoundsBase.ParameterBound
— Typestruct ParameterBound{T<:AbstractBoundLoc} <: AbstractIntegratorAttribute
A integrator attribute used to access the current parameter value.
DynamicBoundsBase.ParameterNumber
— Typestruct ParameterNumber
An integrator attribute retrieving the number of parameter variables (p
) aka np
.
DynamicBoundsBase.ParameterValue
— Typestruct ParameterValue <: AbstractIntegratorAttribute
A integrator attribute used to access the current parameter value.
DynamicBoundsBase.PolyhedralConstraint
— Typestruct PolyhedralConstraint <: DynamicBoundsBase.AbstractPathConstraint
An object used to specify that the invariant Ax(t,p) <= b
is valid fo all t
.
DynamicBoundsBase.Relaxation
— Typestruct Relaxation{T<:AbstractBoundLoc} <: AbstractIntegratorAttribute
An integrator attribute for relaxations.
DynamicBoundsBase.Relaxation
— MethodRelaxation{T}(x::Float64)
This constructor builds a structure that references relaxation at time = x
.
DynamicBoundsBase.Relaxation
— MethodRelaxation{T}(i::TimeIndex)
This constructor builds a structure that references the relaxation at time index i
.
DynamicBoundsBase.SetRelaxAttributeNotAllowed
— Typestruct SetRelaxAttributeNotAllowed{AttrType<:Union{AbstractIntegratorAttribute, AbstractRelaxProblemAttribute}} <: DynamicBoundsBase.NotAllowedError
An error indicating that the attribute attr
is supported but cannot be set for some reason given in the error string.
DynamicBoundsBase.StateNumber
— Typestruct StateNumber
An integrator attribute retrieving the number of state variables (x
) aka nx
.
DynamicBoundsBase.Subgradient
— Typestruct Subgradient{T<:AbstractBoundLoc} <: AbstractIntegratorAttribute
An integrator attribute for the Subgradient.
DynamicBoundsBase.Subgradient
— MethodSubgradient{T}(x::Float64)
This constructor builds a structure that references the subgradient of the relaxation at time = x
.
DynamicBoundsBase.Subgradient
— MethodSubgradient{T}(i::TimeIndex)
This constructor builds a structure that references the subgradient of the relaxation at time index i
.
DynamicBoundsBase.SupportNumber
— Typestruct SupportNumber
An integrator attribute retrieving the number of points in the support set of (x
) aka nt
.
DynamicBoundsBase.SupportSet
— Typestruct SupportSet{T<:AbstractFloat} <: AbstractIntegratorAttribute
A integrator attribute used to access independent variable support set.
DynamicBoundsBase.TerminationStatus
— Typestruct TerminationStatus <: AbstractIntegratorAttribute
A integrator attribute used to query the TerminationStatusCode
of the integrator on completion. Current termination status codes are:
COMPLETED
: The algorithm terminate successfully with bounds and relaxations.EMPTY
: The algorithm terminated successfully but the solution set was empty for some points intspan
.NAN
: The algorithm terminated but some values are not a number (usually indicating a domain violation was encoutered when computing relaxations).RELAXATION_NOT_CALLED
: The relaxation has not yet been computed.NUMERICAL_ERROR
: A numerical error was encountered.LIMIT_EXCEEDED
: A preset limit was exceeded (number of steps and so on).INVALID_OPTION
: An invalid option was set.OTHER_ERROR
: Another error was encountered.
DynamicBoundsBase.TimeIndex
— Typestruct TimeIndex
A time index t
used to access the value at t.i
-th time point.
DynamicBoundsBase.Undefined
— Typestruct Undefined <: AbstractBoundLoc
The variety of the attribute is unspecified.
DynamicBoundsBase.UnsupportedError
— TypeUnsupportedError <: Exception
Abstract type for error thrown when an element is not supported by the integrator.
DynamicBoundsBase.UnsupportedRelaxAttribute
— Typestruct UnsupportedRelaxAttribute{AttrType<:Union{AbstractIntegratorAttribute, AbstractRelaxProblemAttribute}} <: DynamicBoundsBase.UnsupportedError
An error indicating that the attribute attr
is unsupported.
DynamicBoundsBase.Upper
— Typestruct Upper <: AbstractBoundLoc
Indicates the upper bound, relaxation, or (sub)gradient should be returned.
DynamicBoundsBase.Value
— Typestruct Value <: AbstractIntegratorAttribute
An integrator attribute for value of local solution bounds.
DynamicBoundsBase.VariableStateBounds
— Typestruct VariableStateBounds{F1<:Function, F2<:Function} <: AbstractRelaxProblemAttribute
A problem attribute used to store time-varying state bounds.
xL::Function
Lower state variable bounds
xU::Function
Upper state variable bounds
Base.get
— Functionget
Returns the value of attribute set for the ::Union{AbstractDERelaxIntegrator, AbstractDERelaxProblem}
. May be vector valued.
DynamicBoundsBase.getall
— Functiongetall
An version of get
which retreives all data asssociated with a particular integrator attribute.
DynamicBoundsBase.getall!
— Functiongetall!
An in-place version of get!
which retreives all data asssociated with a particular integrator attribute.
DynamicBoundsBase.integrate!
— Functionintegrate!
Provides a real-value integration at the current value set for each parameter.
DynamicBoundsBase.relax!
— Functionrelax!
Computes the relaxation at the current parameter value with the current parameter and state bounds.
DynamicBoundsBase.set!
— Functionset!
Assigns a value
to the attr
attribute of the integrator, problem, or relaxation.
DynamicBoundsBase.setall!
— Methodsetall!
An in-place version of set!
which sets all data asssociated with a particular integrator attribute.
DynamicBoundsBase.supports
— Functionsupports
Return a Bool
indicating whether ::AbstractDERelaxIntegrator
supports the ::Union{AbstractDERelaxIntegrator, AbstractDERelaxProblem}
.