ODE Tableaus
Explicit Runge-Kutta Methods
constructEuler- Euler's 1st order method.constructHeun()Heun's order 2 method.constructRalston()- Ralston's order 2 method.constructSSPRK22()- Explicit SSP method of order 2 using 2 stages.constructKutta3- Kutta's classic 3rd order method.constructSSPRK33()- Explicit SSP method of order 3 using 3 stages.constructSSPRK43()- Explicit SSP method of order 3 using 4 stages.constructRK4- The classic 4th order "Runge-Kutta" method.constructRK438Rule- The classic 4th order "3/8th's Rule" method.constructSSPRK104()- Explicit SSP method of order 4 using 10 stages.constructBogakiShampine3()- Bogakai-Shampine's 2/3 method.constructRKF4()- Runge-Kutta-Fehlberg 3/4.constructRKF5()- Runge-Kutta-Fehlberg 4/5.constructRungeFirst5()- Runge's first 5th order method.constructCassity5()- Cassity's 5th order method.constructLawson5()- Lawson's 5th order method.constructLutherKonen5- Luther-Konen's first 5th order method.constructLutherKonen52()- Luther-Konen's second 5th order method.constructLutherKonen53()- Luther-Konen's third 5th order method.constructPapakostasPapaGeorgiou5()- Papakostas and PapaGeorgiou more stable order 5 method.constructPapakostasPapaGeorgiou52()- Papakostas and PapaGeorgiou more efficient order 5 method.constructTsitouras5()- Tsitouras's order 5 method.constructBogakiShampine5()- Bogaki and Shampine's Order 5 method.constructSharpSmart5()- Sharp and Smart's Order 5 method.constructCashKarp()- Cash-Karp method 4/5.constructDormandPrince()- Dormand-Prince 4/5.constructButcher6()- Butcher's first order 6 method.constructButcher62()- Butcher's second order 6 method.constructButcher63()- Butcher's third order 6 method.constructDormandPrince6()- Dormand-Prince's 5/6 method.constructSharpVerner6()Sharp-Verner's 5/6 method.constructVerner916()- Verner's more efficient order 6 method (1991).constructVerner9162()- Verner's second more efficient order 6 method (1991).constructVernerRobust6()- Verner's "most robust" order 6 method.constructVernerEfficient6()- Verner's "most efficient" order 6 method.constructPapakostas6()- Papakostas's order 6 method.constructLawson6()- Lawson's order 6 method.constructTsitourasPapakostas6()- Tsitouras and Papakostas's order 6 method.constructDormandLockyerMcCorriganPrince6()- the Dormand-Lockyer-McCorrigan-Prince order 6 method.constructTanakaKasugaYamashitaYazaki6A()- Tanaka-Kasuga-Yamashita-Yazaki order 6 method A.constructTanakaKasugaYamashitaYazaki6B()- Tanaka-Kasuga-Yamashita-Yazaki order 6 method B.constructTanakaKasugaYamashitaYazaki6C()- Tanaka-Kasuga-Yamashita-Yazaki order 6 method C.constructTanakaKasugaYamashitaYazaki6D()- Tanaka-Kasuga-Yamashita-Yazaki order 6 method D.constructMikkawyEisa()- Mikkawy and Eisa's order 6 method.constructChummund6()- Chummund's first order 6 method.constructChummund62()- Chummund's second order 6 method.constructHuta6()- Huta's first order 6 method.constructHuta62()- Huta's second order 6 method.constructVerner6()- An old order 6 method attributed to Verner.constructDverk()- The classic DVERK algorithm attributed to Verner.constructClassicVerner6()- A classic Verner order 6 algorithm (1978).constructButcher7()- Butcher's order 7 algorithm.constructClassicVerner7()- A classic Verner order 7 algorithm (1978).constructVernerRobust7()- Verner's "most robust" order 7 algorithm.constructTanakaYamashitaStable7()- Tanaka-Yamashita more stable order 7 algorithm.constructTanakaYamashitaEfficient7()- Tanaka-Yamashita more efficient order 7 algorithm.constructSharpSmart7()- Sharp-Smart's order 7 algorithm.constructSharpVerner7()- Sharp-Verner's order 7 algorithm.constructVerner7()- Verner's "most efficient" order 7 algorithm.constructVernerEfficient7()- Verner's "most efficient" order 7 algorithm.constructClassicVerner8()- A classic Verner order 8 algorithm (1978).constructCooperVerner8()- Cooper-Verner's first order 8 algorithm.constructCooperVerner82()- Cooper-Verner's second order 8 algorithm.constructTsitourasPapakostas8()- Tsitouras-Papakostas order 8 algorithm.constructdverk78()- The classic order 8 DVERK algorithm.constructEnrightVerner8()- Enright-Verner order 8 algorithm.constructCurtis8()- Curtis' order 8 algorithm.constructVerner8()- Verner's "most efficient" order 8 algorithm.constructRKF8()- Runge-Kutta-Fehlberg Order 7/8 method.constructDormandPrice8()- Dormand-Prince Order 7/8 method.constructDormandPrince8_64bit()- Dormand-Prince Order 7/8 method. Coefficients are rational approximations good for 64 bits.constructVernerRobust9()- Verner's "most robust" order 9 method.constructVernerEfficient9()- Verner's "most efficient" order 9 method.constructSharp9()- Sharp's order 9 method.constructTsitouras9()- Tsitouras's first order 9 method.constructTsitouras92()- Tsitouras's second order 9 method.constructCurtis10()- Curtis' order 10 method.constructOno10()- Ono's order 10 method.constructFeagin10Tableau()- Feagin's order 10 method.constructCurtis10()- Curtis' order 10 method.constructBaker10()- Baker's order 10 method.constructHairer10()Hairer's order 10 method.constructFeagin12Tableau()- Feagin's order 12 method.constructOno12()- Ono's order 12 method.constructFeagin14Tableau()Feagin's order 14 method.
Implicit Runge-Kutta Methods
constructImplicitEuler- The 1st order Implicit Euler method.constructMidpointRule- The 2nd order Midpoint method.constructTrapezoidalRule- The 2nd order Trapezoidal rule (2nd order LobattoIIIA)constructLobattoIIIA4- The 4th order LobattoIIIAconstructLobattoIIIB2- The 2nd order LobattoIIIBconstructLobattoIIIB4- The 4th order LobattoIIIBconstructLobattoIIIC2- The 2nd order LobattoIIICconstructLobattoIIIC4- The 4th order LobattoIIICconstructLobattoIIICStar2- The 2nd order LobattoIIIC*constructLobattoIIICStar4- The 4th order LobattoIIIC*constructLobattoIIID2- The 2nd order LobattoIIIDconstructLobattoIIID4- The 4th order LobattoIIIDconstructRadauIA3- The 3rd order RadauIAconstructRadauIA5- The 5th order RadauIAconstructRadauIIA3- The 3rd order RadauIIAconstructRadauIIA5- The 5th order RadauIIA
Tableau Methods
DiffEqDevTools.stability_region — Function
stability_region(z, tab::ODERKTableau; embedded = false)
Calculates the stability function from the tableau at z. Stable if <1. If embedded = true, the stability function is calculated for the embedded method. Otherwise, the stability function is calculated for the main method (default).
\[r(z) = 1 + z bᵀ(I - zA)⁻¹ e\]
where e denotes a vector of ones.
stability_region(z, alg::AbstractODEAlgorithm)Calculates the stability function from the algorithm alg at z. The stability region of a possible embedded method cannot be calculated using this method.
If you use an implicit method, you may run into convergence issues when the value of z is outside of the stability region, e.g.,
julia> typemin(Float64)
-Inf
julia> stability_region(typemin(Float64), ImplicitEuler())
┌ Warning: Newton steps could not converge and algorithm is not adaptive. Use a lower dt.
julia> nextfloat(typemin(Float64))
-1.7976931348623157e308
julia> stability_region(nextfloat(typemin(Float64)), ImplicitEuler())
0.0stability_region(tab_or_alg::Union{ODERKTableau, AbstractODEAlgorithm}; initial_guess=-3.0)
Calculates the length of the stability region in the real axis. See also imaginary_stability_interval.
DiffEqDevTools.imaginary_stability_interval — Function
imaginary_stability_interval(tab::ODERKTableau;
initial_guess = length(tab) - 1)Calculates the length of the imaginary stability interval, i.e., the size of the stability region on the imaginary axis. See also stability_region.
imaginary_stability_interval(alg::ODERKTableau;
initial_guess = 20.0)Calculates the length of the imaginary stability interval, i.e., the size of the stability region on the imaginary axis. See also stability_region.
Missing docstring for OrdinaryDiffEq.ODE_DEFAULT_TABLEAU. Check Documenter's build log for details.
Explicit Tableaus
Missing docstring for DiffEqDevTools.constructEuler. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRalston. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructHeun. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructKutta3. Check Documenter's build log for details.
Missing docstring for OrdinaryDiffEq.constructBS3. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructBogakiShampine3. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRK4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRK438Rule. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRKF4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRKF5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructCashKarp. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructDormandPrince. Check Documenter's build log for details.
Missing docstring for OrdinaryDiffEq.constructBS5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructPapakostasPapaGeorgiou5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructPapakostasPapaGeorgiou52. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTsitouras5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLutherKonen5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLutherKonen52. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLutherKonen53. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRungeFirst5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLawson5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructSharpSmart5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructBogakiShampine5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructCassity5. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructButcher6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructButcher62. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructButcher63. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVernerRobust6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTanakaKasugaYamashitaYazaki6A. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTanakaKasugaYamashitaYazaki6B. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTanakaKasugaYamashitaYazaki6C. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTanakaKasugaYamashitaYazaki6D. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructHuta6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructHuta62. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVerner6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructDormandPrince6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructSharpVerner6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVern6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructClassicVerner6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructChummund6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructChummund62. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructPapakostas6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLawson6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTsitourasPapakostas6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructDormandLockyerMcCorriganPrince6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVernerEfficient6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructMikkawyEisa. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVernerEfficient7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructClassicVerner7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructSharpVerner7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTanakaYamashitaStable7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructSharpSmart7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTanakaYamashitaEfficient7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVernerRobust7. Check Documenter's build log for details.
Missing docstring for OrdinaryDiffEq.constructTanYam7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructEnrightVerner7. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructDormandPrince8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRKF8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructCooperVerner8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructCooperVerner82. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTsitourasPapakostas8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructEnrightVerner8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructdverk78. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructClassicVerner8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructDormandPrince8_64bit. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructCurtis8. Check Documenter's build log for details.
Missing docstring for OrdinaryDiffEq.constructTsitPap8. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructSharp9. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTsitouras9. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTsitouras92. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVernerEfficient9. Check Documenter's build log for details.
Missing docstring for OrdinaryDiffEq.constructVern9. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVerner916. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVerner9162. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructVernerRobust9. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructFeagin10. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructFeagin10Tableau. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructOno10. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructCurtis10. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructHairer10. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructBaker10. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructFeagin12. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructOno12. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructFeagin12Tableau. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructFeagin14. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructFeagin14Tableau. Check Documenter's build log for details.
Implicit Tableaus
Missing docstring for DiffEqDevTools.constructImplicitEuler. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructMidpointRule. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructTrapezoidalRule. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIIA4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIIB2. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIIB4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIIC2. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIIC4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIICStar2. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIICStar4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIID2. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructLobattoIIID4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructGL2. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructGL4. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructGL6. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRadauIA3. Check Documenter's build log for details.
Missing docstring for DiffEqDevTools.constructRadauIA5. Check Documenter's build log for details.