-
Notifications
You must be signed in to change notification settings - Fork 29
Runge Kutta Time Stepping Scheme
Man-Long Wong edited this page May 1, 2023
·
4 revisions
The Runge-Kutta (RK) time stepping scheme can be changed by specifying the coefficients in the RungeKuttaLevelIntegrator
section of the input file. By default, the three stages third-order TVD-RK3/SSP-RK33 time integration method is used if no RungeKuttaWeights
section is specified.
If the traditional four stages fourth-order time integration method is used the following weights can be added to RungeKuttaLevelIntegrator
through the RungeKuttaWeights
section:
RungeKuttaWeights
{
number_steps = 4
alpha_0 = 1.0
alpha_1 = 1.0, 0.0
alpha_2 = 1.0, 0.0, 0.0
alpha_3 = 1.0, 0.0, 0.0, 0.0
beta_0 = 0.5
beta_1 = 0.0, 0.5
beta_2 = 0.0, 0.0, 1.0
beta_3 = 0.16666666666, 0.33333333333, 0.33333333333, 0.16666666666
gamma_0 = 0.16666666666
gamma_1 = 0.0, 0.33333333333
gamma_2 = 0.0, 0.0, 0.33333333333
gamma_3 = 0.0, 0.0, 0.0, 0.16666666666
}
If the five stages fourth-order SSP-RK54 time integration method is used, the following weights can be added to RungeKuttaLevelIntegrator
through the RungeKuttaWeights
section:
RungeKuttaWeights
{
number_steps = 5
alpha_0 = 1.0
alpha_1 = 0.444370493651235, 0.555629506348765
alpha_2 = 0.620101851488403, 0.0, 0.379898148511597
alpha_3 = 0.178079954393132, 0.0, 0.0, 0.821920045606868
alpha_4 = 0.0, 0.0, 0.517231671970585, 0.096059710526147, 0.386708617503269
beta_0 = 0.391752226571890
beta_1 = 0.0, 0.368410593050371
beta_2 = 0.0, 0.0, 0.251891774271694
beta_3 = 0.0, 0.0, 0.0, 0.544974750228521
beta_4 = 0.0, 0.0, 0.0, 0.063692468666290, 0.226007483236906
gamma_0 = 0.146811876084787
gamma_1 = 0.0, 0.248482909444976
gamma_2 = 0.0, 0.0, 0.104258830331981
gamma_3 = 0.0, 0.0, 0.0, 0.210746432235061
gamma_4 = 0.0, 0.0, 0.0, 0.063692468666290, 0.226007483236906
}
The default TVD-RK3/SSP-RK33 time integration method uses the following weights (no need to specify if used):
RungeKuttaWeights
{
number_steps = 3
alpha_0 = 1.0
alpha_1 = 0.75, 0.25
alpha_2 = 0.33333333333, 0.0, 0.66666666666
beta_0 = 1.0
beta_1 = 0.0, 0.25
beta_2 = 0.0, 0.0, 0.66666666666
gamma_0 = 0.16666666666
gamma_1 = 0.0, 0.16666666666
gamma_2 = 0.0, 0.0, 0.66666666666
}
- User Guide
- Programmer Guide
- Tutorials