Skip to content

Commit

Permalink
test AMR for home-grown time integrators (based on elixir_advection_a…
Browse files Browse the repository at this point in the history
…mr.jl)
  • Loading branch information
ranocha committed Nov 17, 2020
1 parent baa3ad8 commit 77be046
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 16 deletions.
2 changes: 1 addition & 1 deletion examples/2d/elixir_advection_amr.jl
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ amr_callback = AMRCallback(semi, amr_controller,

stepsize_callback = StepsizeCallback(cfl=1.6)

callbacks = CallbackSet(summary_callback,
callbacks = CallbackSet(summary_callback,
analysis_callback, alive_callback,
save_restart, save_solution,
amr_callback, stepsize_callback);
Expand Down
21 changes: 15 additions & 6 deletions examples/2d/elixir_advection_timeintegration.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ advectionvelocity = (1.0, 1.0)
# advectionvelocity = (0.2, -0.3)
equations = LinearScalarAdvectionEquation2D(advectionvelocity)

initial_condition = initial_condition_convergence_test
initial_condition = initial_condition_gauss

surface_flux = flux_lax_friedrichs
solver = DGSEM(3, surface_flux)

coordinates_min = (-1, -1)
coordinates_max = ( 1, 1)
coordinates_min = (-5, -5)
coordinates_max = ( 5, 5)
mesh = TreeMesh(coordinates_min, coordinates_max,
initial_refinement_level=4,
n_cells_max=30_000)
Expand All @@ -34,7 +34,7 @@ summary_callback = SummaryCallback()

analysis_interval = 100
analysis_callback = AnalysisCallback(semi, interval=analysis_interval,
extra_analysis_integrals=(entropy, energy_total))
extra_analysis_integrals=(entropy,))

alive_callback = AliveCallback(analysis_interval=analysis_interval)

Expand All @@ -43,12 +43,21 @@ save_solution = SaveSolutionCallback(interval=100,
save_final_solution=true,
solution_variables=:conservative)

amr_controller = ControllerThreeLevel(semi, IndicatorMax(semi, variable=first),
base_level=4,
med_level=5, med_threshold=0.1,
max_level=6, max_threshold=0.6)
amr_callback = AMRCallback(semi, amr_controller,
interval=5,
adapt_initial_condition=true,
adapt_initial_condition_only_refine=true)

stepsize_callback = StepsizeCallback(cfl=1.6)

callbacks = CallbackSet(summary_callback,
analysis_callback, alive_callback,
analysis_callback, alive_callback,
save_solution,
stepsize_callback)
amr_callback, stepsize_callback)


###############################################################################
Expand Down
19 changes: 10 additions & 9 deletions test/test_examples_2d_advection.jl
Original file line number Diff line number Diff line change
Expand Up @@ -48,30 +48,31 @@ EXAMPLES_DIR = joinpath(pathof(Trixi) |> dirname |> dirname, "examples", "2d")

@testset "elixir_advection_timeintegration.jl" begin
@test_trixi_include(joinpath(EXAMPLES_DIR, "elixir_advection_timeintegration.jl"),
l2 = [9.144681778837444e-6],
linf = [6.437440532436334e-5])
l2 = [0.005575819174358793],
linf = [0.030180876541832102])
end

@testset "elixir_advection_timeintegration.jl with carpenter_kennedy_erk43" begin
@test_trixi_include(joinpath(EXAMPLES_DIR, "elixir_advection_timeintegration.jl"),
l2 = [8.90896259060052e-6],
linf = [6.969419032576418e-5],
l2 = [0.00567625639783006],
linf = [0.02989004624813346],
ode_algorithm=Trixi.CarpenterKennedy2N43(),
cfl = 1.0)
end

@testset "elixir_advection_timeintegration.jl with parsani_ketcheson_deconinck_erk94" begin
@test_trixi_include(joinpath(EXAMPLES_DIR, "elixir_advection_timeintegration.jl"),
l2 = [7.932405176905278e-6],
linf = [6.509399993848142e-5],
l2 = [0.005573040696209662],
linf = [0.030176768981231283],
ode_algorithm=Trixi.ParsaniKetchesonDeconinck3Sstar94())
end

@testset "elixir_advection_timeintegration.jl with parsani_ketcheson_deconinck_erk32" begin
@test_trixi_include(joinpath(EXAMPLES_DIR, "elixir_advection_timeintegration.jl"),
l2 = [0.004405427606459577],
linf = [0.012549162970726613],
ode_algorithm=Trixi.ParsaniKetchesonDeconinck3Sstar32())
l2 = [0.005563707516447738],
linf = [0.02964401754871232],
ode_algorithm=Trixi.ParsaniKetchesonDeconinck3Sstar32(),
cfl = 1.0)
end

@testset "elixir_advection_callbacks.jl" begin
Expand Down

0 comments on commit 77be046

Please sign in to comment.