Private API
This page lists non-exported (internal) symbols of CTModelsJSON, CTModelsJLD.
From CTModelsJSON
_deserialize_infos
CTModelsJSON._deserialize_infos — Function
Convert Dict{String,Any} back to Dict{Symbol,Any} after JSON deserialization.
_deserialize_value
CTModelsJSON._deserialize_value — Function
Deserialize a single value from JSON format.
_serialize_infos
CTModelsJSON._serialize_infos — Function
Convert Dict{Symbol,Any} to Dict{String,Any} for JSON serialization. Only serializes JSON-compatible types (numbers, strings, bools, arrays, dicts).
_serialize_value
CTModelsJSON._serialize_value — Function
Serialize a single value to JSON-compatible format.
CTModels.export_ocp_solution
CTModels.export_ocp_solution — Method
export_ocp_solution(
::CTModels.JSON3Tag,
sol::CTModels.Solution;
filename
)
Export an optimal control solution to a .json file using the JSON3 format.
This function serializes a CTModels.Solution into a structured JSON dictionary, including all primal and dual information, which can be read by external tools.
Arguments
::CTModels.JSON3Tag: A tag used to dispatch the export method for JSON3.sol::CTModels.Solution: The solution to be saved.
Keyword Arguments
filename::String = "solution": Base filename. The.jsonextension is automatically appended.
Notes
The exported JSON includes the time grid, state, control, costate, objective, solver info, and all constraint duals (if available).
Example
julia> using JSON3
julia> export_ocp_solution(JSON3Tag(), sol; filename="mysolution")
# → creates "mysolution.json"CTModels.import_ocp_solution
CTModels.import_ocp_solution — Method
import_ocp_solution(
::CTModels.JSON3Tag,
ocp::CTModels.Model;
filename
)
Import an optimal control solution from a .json file exported with export_ocp_solution.
This function reads the JSON contents and reconstructs a CTModels.Solution object, including the discretized primal and dual trajectories.
Arguments
::CTModels.JSON3Tag: A tag used to dispatch the import method for JSON3.ocp::CTModels.Model: The model associated with the optimal control problem. Used to rebuild the full solution.
Keyword Arguments
filename::String = "solution": Base filename. The.jsonextension is automatically appended.
Returns
CTModels.Solution: A reconstructed solution instance.
Notes
Handles both vector and matrix encodings of signals. If dual fields are missing or null, the corresponding attributes are set to nothing.
Example
julia> using JSON3
julia> sol = import_ocp_solution(JSON3Tag(), model; filename="mysolution")From CTModelsJLD
CTModels.export_ocp_solution
CTModels.export_ocp_solution — Method
export_ocp_solution(
::CTModels.JLD2Tag,
sol::CTModels.Solution;
filename
)
Export an optimal control solution to a .jld2 file using the JLD2 format.
This function serializes and saves a CTModels.Solution object to disk, allowing it to be reloaded later.
Arguments
::CTModels.JLD2Tag: A tag used to dispatch the export method for JLD2.sol::CTModels.Solution: The optimal control solution to be saved.
Keyword Arguments
filename::String = "solution": Base name of the file. The.jld2extension is automatically appended.
Example
julia> using JLD2
julia> export_ocp_solution(JLD2Tag(), sol; filename="mysolution")
# → creates "mysolution.jld2"CTModels.import_ocp_solution
CTModels.import_ocp_solution — Method
import_ocp_solution(
::CTModels.JLD2Tag,
ocp::CTModels.Model;
filename
)
Import an optimal control solution from a .jld2 file.
This function loads a previously saved CTModels.Solution from disk.
Arguments
::CTModels.JLD2Tag: A tag used to dispatch the import method for JLD2.ocp::CTModels.Model: The associated model (used for dispatch consistency; not used internally).
Keyword Arguments
filename::String = "solution": Base name of the file. The.jld2extension is automatically appended.
Returns
CTModels.Solution: The loaded solution object.
Example
julia> using JLD2
julia> sol = import_ocp_solution(JLD2Tag(), model; filename="mysolution")