Merge branch 'master' into reconnection
This commit is contained in:
commit
425397d474
@ -60,6 +60,7 @@ module evolution
|
|||||||
|
|
||||||
! evolution parameters
|
! evolution parameters
|
||||||
!
|
!
|
||||||
|
logical , save :: error_control = .false.
|
||||||
character(len=255), save :: name_int = ""
|
character(len=255), save :: name_int = ""
|
||||||
integer , save :: stages = 2
|
integer , save :: stages = 2
|
||||||
integer , save :: registers = 1
|
integer , save :: registers = 1
|
||||||
@ -216,11 +217,12 @@ module evolution
|
|||||||
|
|
||||||
case ("ssprk(m,2)", "SSPRK(m,2)")
|
case ("ssprk(m,2)", "SSPRK(m,2)")
|
||||||
|
|
||||||
|
error_control = .true.
|
||||||
evolve => evolve_ssprk2_m
|
evolve => evolve_ssprk2_m
|
||||||
registers = 3
|
registers = 3
|
||||||
stages = max(2, min(9, stages))
|
stages = max(2, min(9, stages))
|
||||||
cfl = (stages - 1) * cfl
|
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")
|
case ("rk3", "RK3")
|
||||||
|
|
||||||
@ -244,6 +246,7 @@ module evolution
|
|||||||
|
|
||||||
case ("rk3.m", "ssprk(m,3)", "SSPRK(m,3)")
|
case ("rk3.m", "ssprk(m,3)", "SSPRK(m,3)")
|
||||||
|
|
||||||
|
error_control = .true.
|
||||||
evolve => evolve_ssprk3_m
|
evolve => evolve_ssprk3_m
|
||||||
registers = 3
|
registers = 3
|
||||||
n = 2
|
n = 2
|
||||||
@ -253,7 +256,7 @@ module evolution
|
|||||||
n = n - 1
|
n = n - 1
|
||||||
stages = max(4, n**2)
|
stages = max(4, n**2)
|
||||||
cfl = (n - 1) * n * cfl
|
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)")
|
case ("rk4.10", "RK4.10", "ssprk(10,4)", "SSPRK(10,4)")
|
||||||
|
|
||||||
@ -406,12 +409,14 @@ module evolution
|
|||||||
if (magnetized) then
|
if (magnetized) then
|
||||||
call print_parameter(verbose, "GLM alpha coefficient", glm_alpha)
|
call print_parameter(verbose, "GLM alpha coefficient", glm_alpha)
|
||||||
end if
|
end if
|
||||||
call print_parameter(verbose, "absolute tolerance", atol)
|
if (error_control) then
|
||||||
call print_parameter(verbose, "relative tolerance", rtol)
|
call print_parameter(verbose, "absolute tolerance", atol)
|
||||||
call print_parameter(verbose, "maximum rejections", mrej)
|
call print_parameter(verbose, "relative tolerance", rtol)
|
||||||
call print_parameter(verbose, "factor" , fac)
|
call print_parameter(verbose, "maximum rejections", mrej)
|
||||||
call print_parameter(verbose, "minimum factor" , facmin)
|
call print_parameter(verbose, "factor" , fac)
|
||||||
call print_parameter(verbose, "maximum factor" , facmax)
|
call print_parameter(verbose, "minimum factor" , facmin)
|
||||||
|
call print_parameter(verbose, "maximum factor" , facmax)
|
||||||
|
end if
|
||||||
|
|
||||||
end if
|
end if
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user