Private API
This page lists non-exported (internal) symbols of CTModels.Models.
From CTModels.Models
BoxProjection [Struct]
CTModels.Models.BoxProjection — Type
BoxProjection{Slot,CIDX} <: FunctionCallable struct projecting a box constraint onto selected components.
Slot ∈ (:state, :control, :variable) selects which argument is projected; CIDX = Int gives a scalar, CIDX = Vector{Int} gives a vector. Both the slot and the scalar/vector distinction are encoded in type parameters so the call method is fully specialised (no runtime branch).
Replaces three anonymous closures in constraint(model, label):
(_, x, _, _) -> x[cidxs](state box)(_, _, u, _) -> u[cidxs](control box)(_, _, v) -> v[cidxs](variable box, arity 3)
SubBoundaryConstraint [Struct]
CTModels.Models.SubBoundaryConstraint — Type
SubBoundaryConstraint{CP,I} <: FunctionIn-place callable struct extracting a sub-vector of a nonlinear boundary constraint: evaluates the full boundary constraint vector then copies r .= r_[indices].
I = Int or I = Vector{Int}. Intended to be wrapped by Core.to_out_of_place.
Replaces the anonymous in-place closure produced inside constraint(model, label): fc! = (r, x0, xf, v) -> begin r_ = zeros(...); cp[2](r_, x0, xf, v); r .= r_[indices] end.
SubPathConstraint [Struct]
CTModels.Models.SubPathConstraint — Type
SubPathConstraint{CP,I} <: FunctionIn-place callable struct extracting a sub-vector of a nonlinear path constraint: evaluates the full path constraint vector then copies r .= r_[indices].
I = Int or I = Vector{Int}. Intended to be wrapped by Core.to_out_of_place.
Replaces the anonymous in-place closure produced inside constraint(model, label): fc! = (r, t, x, u, v) -> begin r_ = zeros(...); cp[2](r_, t, x, u, v); r .= r_[indices] end.