@@ -9,27 +9,14 @@ struct ODENLStepData{NLProb, UNLProb, SetGammaC, SetOuterTmp, SetInnerTmp, NLPro
9
9
implicit time discretizations. This allows to use extra structure of the ODE function (e.g.
10
10
multi-level structure). The nonlinear function must match that form of the function implicit
11
11
ODE integration algorithms need do solve the a nonlinear problems,
12
- specifically of the form `M*z = outer_tmp + γ⋅f(z+inner_tmp,p,t_c)`.
12
+ specifically of the form `M*z = outer_tmp + γ₁ ⋅f(γ₂⋅ z+inner_tmp,p,t_c)`.
13
13
Here `z` is the stage solution vector, `p` is the parameter of the ODE problem, `t_c` is
14
- the time of evaluation (`t_c = t + c*dt`), `γ` is some scaling factor and the temporary
15
- variables are some compatible vectors set by the specific solver.
16
- Note that this field will not be used for integrators such as fully-implicit Runge-Kutta methods
17
- that need to solve different nonlinear systems.
18
- The inner nonlinear function of the nonlinear problem is in general of the form `g(z,p') = 0`
19
- where `p'` is a NamedTuple with all information about the specific nonlinear problem at hand to solve
20
- for a specific time discretization. Specifically, it is `(;γ, inner_tmp, outer_tmp, t_c, p)`, such that
21
- `g(z,p') = γ⋅f(z+inner_tmp,p,t_c) + outer_tmp - M*z = 0`.
14
+ the time of evaluation (`t_c = t + c*dt`), `γ₁` and `γ₂` are some scaling factors determined
15
+ by the solver algorithm and the temporary variables are some compatible vectors set by the specific solver.
16
+ The inner nonlinear function of the nonlinear problem is in general of the form `g(z,p') = 0` such that
17
+ `g(z,p') = γ₁⋅f(γ₂⋅z+inner_tmp,p,t_c) + outer_tmp - M*z = 0`.
22
18
"""
23
19
nlprob:: NLProb
24
- """
25
- A function which takes `(nlprob, value_provider)` and updates
26
- the parameters of the former with their values in the latter.
27
- If absent (`nothing`) this will not be called, and the parameters
28
- in `nlprob` will be used without modification. `value_provider`
29
- refers to a value provider as defined by SymbolicIndexingInterface.jl.
30
- Usually this will refer to a problem or integrator.
31
- """
32
- update_nlprob!:: UNLProb
33
20
set_γ_c:: SetGammaC
34
21
set_outer_tmp:: SetOuterTmp
35
22
set_inner_tmp:: SetInnerTmp
0 commit comments