DISPATCH
initial_mod.f90
1 !===============================================================================
2 !> Simple initical condition module for tests
3 !>
4 !> Note that the isothermal and gamma parameters are communicated from the solver
5 !> via the hydro_parameters module.
6 !===============================================================================
7 MODULE initial_mod
8  USE io_mod
9  USE trace_mod
10  USE mesh_mod
11  USE index_mod
12  implicit none
13  private
14  type, public:: initial_t
15  contains
16  procedure:: init
17  procedure:: condition => void
18  procedure, nopass:: cleanup
19  end type
20 CONTAINS
21 
22 !===============================================================================
23 !> Setup a uniform initial state, with density=d0 and B=B0
24 !===============================================================================
25 SUBROUTINE init (self, solver, gamma1)
26  class(initial_t):: self
27  character(len=64):: solver
28  real, optional:: gamma1
29  !----------------------------------------------------------------------------
30 END SUBROUTINE init
31 
32 !===============================================================================
33 SUBROUTINE cleanup
34 END SUBROUTINE cleanup
35 
36 !===============================================================================
37 !> Void initializer
38 !===============================================================================
39 SUBROUTINE void (self, m, ff, idx)
40  class(initial_t) :: self
41  type(index_t):: idx
42  class(mesh_t) :: m(3)
43  real, dimension(:,:,:,:) :: ff
44 END SUBROUTINE void
45 
46 END MODULE
Template module for mesh.
Definition: mesh_mod.f90:4
Simple initical condition module for tests.
Definition: initial_mod.f90:7
This index file has slot indices for all solver, all initially equal to zero It is the responsibility...
Definition: index_mod.f90:7
Definition: io_mod.f90:4