Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
trixi-framework
GitHub Repository: trixi-framework/Trixi.jl
Path: blob/main/examples/tree_3d_dgsem/elixir_advection_restart.jl
2055 views
1
using OrdinaryDiffEqLowStorageRK
2
using Trixi
3
4
###############################################################################
5
# create a restart file
6
7
trixi_include(@__MODULE__, joinpath(@__DIR__, "elixir_advection_extended.jl"))
8
9
###############################################################################
10
# adapt the parameters that have changed compared to "elixir_advection_extended.jl"
11
12
# Note: If you get a restart file from somewhere else, you need to provide
13
# appropriate setups in the elixir loading a restart file
14
15
restart_filename = joinpath("out", "restart_000000019.h5")
16
mesh = load_mesh(restart_filename)
17
18
semi = SemidiscretizationHyperbolic(mesh, equations, initial_condition, solver)
19
20
tspan = (load_time(restart_filename), 2.0)
21
dt = load_dt(restart_filename)
22
ode = semidiscretize(semi, tspan, restart_filename)
23
24
# Do not overwrite the initial snapshot written by elixir_advection_extended.jl.
25
save_solution.condition.save_initial_solution = false
26
27
integrator = init(ode, CarpenterKennedy2N54(williamson_condition = false);
28
dt = dt, # solve needs some value here but it will be overwritten by the stepsize_callback
29
ode_default_options()..., callback = callbacks, maxiters = 100_000);
30
31
# Get the last time index and work with that.
32
load_timestep!(integrator, restart_filename)
33
34
###############################################################################
35
# run the simulation
36
37
sol = solve!(integrator)
38
39