Public API
This page lists exported symbols of CTSolvers.DOCP.
From CTSolvers.DOCP
CTSolvers.DOCP
CTSolvers.DOCP — Module
DOCP (Discretized Optimal Control Problem) module.
This module defines the DiscretizedModel type and the associated API to build NLP models and reconstruct OCP solutions via the Optimization and Modelers contracts.
The DOCP layer is the bridge between continuous-time models (from CTModels) and the solver/modeler infrastructure provided by CTSolvers.
DiscretizedModel
CTSolvers.DOCP.DiscretizedModel — Type
struct DiscretizedModel{TO<:CTModels.OCP.AbstractModel, TAMB<:CTSolvers.Optimization.AbstractModelBuilder, TEMB<:CTSolvers.Optimization.AbstractModelBuilder, TASB<:CTSolvers.Optimization.AbstractSolutionBuilder, TESB<:CTSolvers.Optimization.AbstractSolutionBuilder} <: CTSolvers.Optimization.AbstractOptimizationProblemDiscretized optimal control problem ready for NLP solving.
Wraps an optimal control problem together with builders for the supported NLP backends. This type implements the Optimization.AbstractOptimizationProblem contract.
Fields
optimal_control_problem::TO: The original optimal control problemadnlp_model_builder::TAMB: Builder for ADNLPModelsexa_model_builder::TEMB: Builder for ExaModelsadnlp_solution_builder::TASB: Builder for ADNLP solutionsexa_solution_builder::TESB: Builder for ExaModel solutions
Example
# Conceptual usage pattern
docp = DiscretizedModel(
ocp,
adnlp_model_builder,
exa_model_builder,
adnlp_solution_builder,
exa_solution_builder,
)See also: ocp_model, nlp_model, ocp_solution
nlp_model
CTSolvers.DOCP.nlp_model — Function
nlp_model(
prob::CTSolvers.DOCP.DiscretizedModel,
initial_guess,
modeler::CTSolvers.Modelers.AbstractNLPModeler
) -> NLPModels.AbstractNLPModel
Build an NLP model from a discretized optimal control problem.
This is a convenience wrapper around build_model that provides explicit typing for DiscretizedModel.
Arguments
prob::DiscretizedModel: The discretized OCPinitial_guess: Initial guess for the NLP solvermodeler: The modeler to use (e.g., Modelers.ADNLP, Modelers.Exa)
Returns
NLPModels.AbstractNLPModel: The NLP model
Example
nlp = nlp_model(docp, initial_guess, modeler)See also: ocp_solution, Optimization.build_model
ocp_model
CTSolvers.DOCP.ocp_model — Function
ocp_model(
docp::CTSolvers.DOCP.DiscretizedModel
) -> CTModels.OCP.AbstractModel
Extract the original optimal control problem from a discretized problem.
Arguments
docp::DiscretizedModel: The discretized optimal control problem
Returns
- The original optimal control problem
Example
ocp = ocp_model(docp)See also: DiscretizedModel
ocp_solution
CTSolvers.DOCP.ocp_solution — Function
ocp_solution(
docp::CTSolvers.DOCP.DiscretizedModel,
model_solution::SolverCore.AbstractExecutionStats,
modeler::CTSolvers.Modelers.AbstractNLPModeler
) -> Any
Build an optimal control solution from NLP execution statistics.
This is a convenience wrapper around build_solution that provides explicit typing for DiscretizedModel and ensures the return type is an optimal control solution.
Arguments
docp::DiscretizedModel: The discretized OCPmodel_solution::SolverCore.AbstractExecutionStats: NLP solver outputmodeler: The modeler used for building
Returns
AbstractSolution: The OCP solution
Example
sol = ocp_solution(docp, nlp_stats, modeler)See also: nlp_model, Optimization.build_solution