@@ -645,9 +645,8 @@ function __construct_problem(
645645end
646646
647647function __construct_problem(
648- cache:: FIRKCacheExpand{iip} , y, loss_bc:: BC , loss_collocation:: C ,
649- loss:: LF , :: StandardBVProblem , :: Val{true}
650- ) where {iip, BC, C, LF}
648+ cache:: FIRKCacheExpand{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
649+ loss:: LF , :: StandardBVProblem , :: Val{true} ) where {iip, T, DC, fit_parameters, BC, C, LF}
651650 (; prob, alg, stage, bcresid_prototype, f_prototype) = cache
652651 (; jac_alg) = alg
653652 (; bc_diffmode) = jac_alg
@@ -714,7 +713,8 @@ function __construct_problem(
714713 )
715714 end
716715
717- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
716+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
717+ fit_parameters, p = cache. p)
718718
719719 resid_prototype = vcat(resid_bc, resid_collocation)
720720 return __construct_internal_problem(
@@ -725,9 +725,8 @@ function __construct_problem(
725725end
726726
727727function __construct_problem(
728- cache:: FIRKCacheExpand{iip} , y, loss_bc:: BC , loss_collocation:: C ,
729- loss:: LF , :: StandardBVProblem , :: Val{false}
730- ) where {iip, BC, C, LF}
728+ cache:: FIRKCacheExpand{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
729+ loss:: LF , :: StandardBVProblem , :: Val{false} ) where {iip, T, DC, fit_parameters, BC, C, LF}
731730 (; prob, alg, stage, bcresid_prototype, f_prototype) = cache
732731 (; jac_alg) = alg
733732 (; bc_diffmode) = jac_alg
@@ -822,7 +821,8 @@ function __construct_problem(
822821 )
823822 end
824823
825- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
824+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
825+ fit_parameters, p = cache. p)
826826
827827 resid_prototype = vcat(resid_bc, resid_collocation)
828828 return __construct_internal_problem(
@@ -833,9 +833,8 @@ function __construct_problem(
833833end
834834
835835function __construct_problem(
836- cache:: FIRKCacheExpand{iip} , y, loss_bc:: BC , loss_collocation:: C ,
837- loss:: LF , :: TwoPointBVProblem , :: Val{true}
838- ) where {iip, BC, C, LF}
836+ cache:: FIRKCacheExpand{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
837+ loss:: LF , :: TwoPointBVProblem , :: Val{true} ) where {iip, T, DC, fit_parameters, BC, C, LF}
839838 (; jac_alg) = cache. alg
840839 (; stage, bcresid_prototype, f_prototype) = cache
841840 N = length(cache. mesh)
@@ -884,7 +883,8 @@ function __construct_problem(
884883 )
885884 end
886885
887- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
886+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
887+ fit_parameters, p = cache. p)
888888
889889 resid_prototype = copy(resid)
890890 return __construct_internal_problem(
@@ -895,9 +895,8 @@ function __construct_problem(
895895end
896896
897897function __construct_problem(
898- cache:: FIRKCacheExpand{iip} , y, loss_bc:: BC , loss_collocation:: C ,
899- loss:: LF , :: TwoPointBVProblem , :: Val{false}
900- ) where {iip, BC, C, LF}
898+ cache:: FIRKCacheExpand{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
899+ loss:: LF , :: TwoPointBVProblem , :: Val{false} ) where {iip, T, DC, fit_parameters, BC, C, LF}
901900 (; jac_alg) = cache. alg
902901 (; stage, bcresid_prototype, f_prototype, prob) = cache
903902 N = length(cache. mesh)
@@ -961,7 +960,8 @@ function __construct_problem(
961960 )
962961 end
963962
964- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
963+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
964+ fit_parameters, p = cache. p)
965965
966966 resid_prototype = copy(resid)
967967 return __construct_internal_problem(
@@ -972,9 +972,8 @@ function __construct_problem(
972972end
973973
974974function __construct_problem(
975- cache:: FIRKCacheNested{iip} , y, loss_bc:: BC , loss_collocation:: C ,
976- loss:: LF , :: StandardBVProblem , :: Val{true}
977- ) where {iip, BC, C, LF}
975+ cache:: FIRKCacheNested{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
976+ loss:: LF , :: StandardBVProblem , :: Val{true} ) where {iip, T, DC, fit_parameters, BC, C, LF}
978977 (; jac_alg) = cache. alg
979978 (; bc_diffmode) = jac_alg
980979 (; bcresid_prototype, f_prototype) = cache
@@ -1038,7 +1037,8 @@ function __construct_problem(
10381037 )
10391038 end
10401039
1041- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
1040+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
1041+ fit_parameters, p = cache. p)
10421042
10431043 resid_prototype = vcat(resid_bc, resid_collocation)
10441044 return __construct_internal_problem(
@@ -1048,9 +1048,8 @@ function __construct_problem(
10481048end
10491049
10501050function __construct_problem(
1051- cache:: FIRKCacheNested{iip} , y, loss_bc:: BC , loss_collocation:: C ,
1052- loss:: LF , :: StandardBVProblem , :: Val{false}
1053- ) where {iip, BC, C, LF}
1051+ cache:: FIRKCacheNested{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
1052+ loss:: LF , :: StandardBVProblem , :: Val{false} ) where {iip, T, DC, fit_parameters, BC, C, LF}
10541053 (; jac_alg) = cache. alg
10551054 (; bc_diffmode) = jac_alg
10561055 (; bcresid_prototype, f_prototype, prob) = cache
@@ -1139,7 +1138,8 @@ function __construct_problem(
11391138 )
11401139 end
11411140
1142- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
1141+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
1142+ fit_parameters, p = cache. p)
11431143
11441144 resid_prototype = vcat(resid_bc, resid_collocation)
11451145 return __construct_internal_problem(
@@ -1149,9 +1149,8 @@ function __construct_problem(
11491149end
11501150
11511151function __construct_problem(
1152- cache:: FIRKCacheNested{iip} , y, loss_bc:: BC , loss_collocation:: C ,
1153- loss:: LF , :: TwoPointBVProblem , :: Val{true}
1154- ) where {iip, BC, C, LF}
1152+ cache:: FIRKCacheNested{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
1153+ loss:: LF , :: TwoPointBVProblem , :: Val{true} ) where {iip, T, DC, fit_parameters, BC, C, LF}
11551154 (; jac_alg) = cache. alg
11561155 (; bcresid_prototype, f_prototype) = cache
11571156 N = length(cache. mesh)
@@ -1198,7 +1197,8 @@ function __construct_problem(
11981197 )
11991198 end
12001199
1201- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
1200+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
1201+ fit_parameters, p = cache. p)
12021202
12031203 resid_prototype = copy(resid)
12041204 return __construct_internal_problem(
@@ -1208,9 +1208,8 @@ function __construct_problem(
12081208end
12091209
12101210function __construct_problem(
1211- cache:: FIRKCacheNested{iip} , y, loss_bc:: BC , loss_collocation:: C ,
1212- loss:: LF , :: TwoPointBVProblem , :: Val{false}
1213- ) where {iip, BC, C, LF}
1211+ cache:: FIRKCacheNested{iip, T, DC, fit_parameters} , y, loss_bc:: BC , loss_collocation:: C ,
1212+ loss:: LF , :: TwoPointBVProblem , :: Val{false} ) where {iip, T, DC, fit_parameters, BC, C, LF}
12141213 (; jac_alg) = cache. alg
12151214 (; bcresid_prototype, f_prototype, prob) = cache
12161215 N = length(cache. mesh)
@@ -1263,7 +1262,8 @@ function __construct_problem(
12631262 )
12641263 end
12651264
1266- cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M)
1265+ cost_fun = __build_cost(prob. f. cost, cache, cache. mesh, cache. M;
1266+ fit_parameters, p = cache. p)
12671267
12681268 resid_prototype = copy(resid)
12691269 return __construct_internal_problem(
0 commit comments