Skip to content

Commit cf623aa

Browse files
Fix up definition
1 parent e24f0bd commit cf623aa

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

src/ODE_nlsolve.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,16 @@ struct ODE_NLProbData{NLProb, UNLProb, SetGammaC, SetOuterTmp, SetInnerTmp, NLPr
99
implicit time discretizations. This allows to use extra structure of the ODE function (e.g.
1010
multi-level structure). The nonlinear function must match that form of the function implicit
1111
ODE integration algorithms need do solve the a nonlinear problems,
12-
specifically of the form `z = outer_tmp + dt⋅f(γ⋅z+inner_tmp,p,t)`.
13-
Here `z` is the stage solution vector, `p` is the parameter of the ODE problem, `t` is
14-
the time, `dt` the respective time increment`, `γ` is some scaling factor and the temporary
12+
specifically of the form `M*z = outer_tmp + γ⋅f(z+inner_tmp,p,t_c)`.
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
1515
variables are some compatible vectors set by the specific solver.
1616
Note that this field will not be used for integrators such as fully-implicit Runge-Kutta methods
1717
that need to solve different nonlinear systems.
1818
The inner nonlinear function of the nonlinear problem is in general of the form `g(z,p') = 0`
1919
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 `(;dt, γ, inner_tmp, outer_tmp, t, p)`, such that
21-
`g(z,p') = dt⋅f(γ⋅z+inner_tmp,p,t) + outer_tmp - z = 0`.
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`.
2222
"""
2323
nlprob::NLProb
2424
"""

src/scimlfunctions.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -409,7 +409,7 @@ numerically-defined functions.
409409
"""
410410
struct ODEFunction{iip, specialize, F, TMM, Ta, Tt, TJ, JVP, VJP, JP, SP, TW, TWt, WP, TPJ,
411411
O, TCV,
412-
SYS, ID <: Union{Nothing, OverrideInitData}, NLP <: Union{Nothing, ODE_NLProbData}} <:
412+
SYS, ID <: Union{Nothing, OverrideInitData}, NLP <: Union{Nothing, ODENLStepData}} <:
413413
AbstractODEFunction{iip}
414414
f::F
415415
mass_matrix::TMM
@@ -532,7 +532,7 @@ information on generating the SplitFunction from this symbolic engine.
532532
struct SplitFunction{
533533
iip, specialize, F1, F2, TMM, C, Ta, Tt, TJ, JVP, VJP, JP, WP, SP, TW, TWt,
534534
TPJ, O, TCV, SYS, ID <: Union{Nothing, OverrideInitData},
535-
NLP <: Union{Nothing, ODE_NLProbData}} <: AbstractODEFunction{iip}
535+
NLP <: Union{Nothing, ODENLStepData}} <: AbstractODEFunction{iip}
536536
f1::F1
537537
f2::F2
538538
mass_matrix::TMM
@@ -2749,7 +2749,7 @@ function ODEFunction{iip, specialize}(f;
27492749
typeof(sparsity), Any, Any, typeof(W_prototype), Any,
27502750
Any,
27512751
typeof(_colorvec),
2752-
typeof(sys), Union{Nothing, OverrideInitData}, Union{Nothing, ODE_NLProbData}}(
2752+
typeof(sys), Union{Nothing, OverrideInitData}, Union{Nothing, ODENLStepData}}(
27532753
_f, mass_matrix, analytic, tgrad, jac,
27542754
jvp, vjp, jac_prototype, sparsity, Wfact,
27552755
Wfact_t, W_prototype, paramjac,
@@ -2796,7 +2796,7 @@ function unwrapped_f(f::ODEFunction, newf = unwrapped_f(f.f))
27962796
Any, Any, Any, Any, typeof(f.jac_prototype),
27972797
typeof(f.sparsity), Any, Any, Any, Any,
27982798
Any, typeof(f.colorvec),
2799-
typeof(f.sys), Union{Nothing, OverrideInitData}, Union{Nothing, ODE_NLProbData}}(
2799+
typeof(f.sys), Union{Nothing, OverrideInitData}, Union{Nothing, ODENLStepData}}(
28002800
newf, f.mass_matrix, f.analytic, f.tgrad, f.jac,
28012801
f.jvp, f.vjp, f.jac_prototype, f.sparsity, f.Wfact,
28022802
f.Wfact_t, f.W_prototype, f.paramjac,
@@ -3021,7 +3021,7 @@ function SplitFunction{iip, specialize}(f1, f2;
30213021
if specialize === NoSpecialize
30223022
SplitFunction{iip, specialize, Any, Any, Any, Any, Any, Any, Any, Any, Any,
30233023
Any, Any, Any, Any, Any, Any, Any,
3024-
Any, Any, Union{Nothing, OverrideInitData}, Union{Nothing, ODE_NLProbData}}(
3024+
Any, Any, Union{Nothing, OverrideInitData}, Union{Nothing, ODENLStepData}}(
30253025
f1, f2, mass_matrix, _func_cache,
30263026
analytic,
30273027
tgrad, jac, jvp, vjp, jac_prototype, W_prototype,

0 commit comments

Comments
 (0)