Merge branch 'master' into reconnection

This commit is contained in:
Grzegorz Kowal 2021-07-19 13:07:15 -03:00
commit 425397d474

View File

@ -60,6 +60,7 @@ module evolution
! evolution parameters
!
logical , save :: error_control = .false.
character(len=255), save :: name_int = ""
integer , save :: stages = 2
integer , save :: registers = 1
@ -216,11 +217,12 @@ module evolution
case ("ssprk(m,2)", "SSPRK(m,2)")
error_control = .true.
evolve => evolve_ssprk2_m
registers = 3
stages = max(2, min(9, stages))
cfl = (stages - 1) * cfl
write(name_int, "('2nd order SSPRK(',i0,',2)')") stages
write(name_int, "('Optimal 2nd order SSPRK(',i0,',2) with error control')") stages
case ("rk3", "RK3")
@ -244,6 +246,7 @@ module evolution
case ("rk3.m", "ssprk(m,3)", "SSPRK(m,3)")
error_control = .true.
evolve => evolve_ssprk3_m
registers = 3
n = 2
@ -253,7 +256,7 @@ module evolution
n = n - 1
stages = max(4, n**2)
cfl = (n - 1) * n * cfl
write(name_int, "('Optimal 3rd order SSPRK(',i0,',3)')") stages
write(name_int, "('Optimal 3rd order SSPRK(',i0,',3) with error control')") stages
case ("rk4.10", "RK4.10", "ssprk(10,4)", "SSPRK(10,4)")
@ -406,12 +409,14 @@ module evolution
if (magnetized) then
call print_parameter(verbose, "GLM alpha coefficient", glm_alpha)
end if
if (error_control) then
call print_parameter(verbose, "absolute tolerance", atol)
call print_parameter(verbose, "relative tolerance", rtol)
call print_parameter(verbose, "maximum rejections", mrej)
call print_parameter(verbose, "factor" , fac)
call print_parameter(verbose, "minimum factor" , facmin)
call print_parameter(verbose, "maximum factor" , facmax)
end if
end if