11module CTModelsJSON
22
3- using CTBase
43using CTModels
54using DocStringExtensions
65
@@ -28,7 +27,6 @@ function CTModels.export_ocp_solution(
2827 " message" => CTModels. message (sol),
2928 " stopping" => CTModels. stopping (sol),
3029 " success" => CTModels. success (sol),
31- " path_constraints" => CTModels. discretize (CTModels. path_constraints (sol), T),
3230 " path_constraints_dual" =>
3331 CTModels. discretize (CTModels. path_constraints_dual (sol), T),
3432 " state_constraints_lb_dual" =>
@@ -39,7 +37,6 @@ function CTModels.export_ocp_solution(
3937 CTModels. discretize (CTModels. control_constraints_lb_dual (sol), T),
4038 " control_constraints_ub_dual" =>
4139 CTModels. discretize (CTModels. control_constraints_ub_dual (sol), T),
42- " boundary_constraints" => CTModels. boundary_constraints (sol), # ctVector or Nothing
4340 " boundary_constraints_dual" => CTModels. boundary_constraints_dual (sol), # ctVector or Nothing
4441 " variable_constraints_lb_dual" => CTModels. variable_constraints_lb_dual (sol), # ctVector or Nothing
4542 " variable_constraints_ub_dual" => CTModels. variable_constraints_ub_dual (sol), # ctVector or Nothing
@@ -81,15 +78,7 @@ function CTModels.import_ocp_solution(
8178 P = Matrix {Float64} (reduce (hcat, P)' )
8279 end
8380
84- # get path constraints (and dual): convert to matrix
85- path_constraints = if isnothing (blob[" path_constraints" ])
86- nothing
87- else
88- stack (blob[" path_constraints" ]; dims= 1 )
89- end
90- if path_constraints isa Vector # if path_constraints is a Vector, convert it to a Matrix
91- path_constraints = Matrix {Float64} (reduce (hcat, path_constraints)' )
92- end
81+ # get dual path constraints: convert to matrix
9382 path_constraints_dual = if isnothing (blob[" path_constraints_dual" ])
9483 nothing
9584 else
@@ -143,8 +132,7 @@ function CTModels.import_ocp_solution(
143132 )
144133 end
145134
146- # get boundary constraints (and dual): no conversion needed
147- boundary_constraints = blob[" boundary_constraints" ]
135+ # get dual of boundary constraints: no conversion needed
148136 boundary_constraints_dual = blob[" boundary_constraints_dual" ]
149137
150138 # get variable constraints dual: no conversion needed
@@ -165,13 +153,11 @@ function CTModels.import_ocp_solution(
165153 message= blob. message,
166154 stopping= Symbol (blob. stopping),
167155 success= blob. success,
168- path_constraints= path_constraints,
169156 path_constraints_dual= path_constraints_dual,
170157 state_constraints_lb_dual= state_constraints_lb_dual,
171158 state_constraints_ub_dual= state_constraints_ub_dual,
172159 control_constraints_lb_dual= control_constraints_lb_dual,
173160 control_constraints_ub_dual= control_constraints_ub_dual,
174- boundary_constraints= boundary_constraints,
175161 boundary_constraints_dual= boundary_constraints_dual,
176162 variable_constraints_lb_dual= variable_constraints_lb_dual,
177163 variable_constraints_ub_dual= variable_constraints_ub_dual,
0 commit comments