33
44A collection of all the data required for `OverrideInit`.
55"""
6- struct OverrideInitData{IProb, UIProb, IProbMap, IProbPmap}
6+ struct OverrideInitData{IProb, UIProb, IProbMap, IProbPmap, M }
77 """
88 The `AbstractNonlinearProblem` to solve for initialization.
99 """
@@ -30,15 +30,25 @@ struct OverrideInitData{IProb, UIProb, IProbMap, IProbPmap}
3030 initialized will be returned as-is.
3131 """
3232 initializeprobpmap:: IProbPmap
33+ """
34+ Additional metadata required by the creator of the initialization.
35+ """
36+ metadata:: M
3337
3438 function OverrideInitData (initprob:: I , update_initprob!:: J , initprobmap:: K ,
35- initprobpmap:: L ) where {I, J, K, L}
39+ initprobpmap:: L , metadata :: M ) where {I, J, K, L, M }
3640 @assert initprob isa
3741 Union{SCCNonlinearProblem, NonlinearProblem, NonlinearLeastSquaresProblem}
38- return new {I, J, K, L} (initprob, update_initprob!, initprobmap, initprobpmap)
42+ return new {I, J, K, L, M} (
43+ initprob, update_initprob!, initprobmap, initprobpmap, metadata)
3944 end
4045end
4146
47+ function OverrideInitData (
48+ initprob, update_initprob!, initprobmap, initprobpmap; metadata = nothing )
49+ OverrideInitData (initprob, update_initprob!, initprobmap, initprobpmap, metadata)
50+ end
51+
4252"""
4353 get_initial_values(prob, valp, f, alg, isinplace; kwargs...)
4454
0 commit comments