MPI-AMRVAC  3.1
The MPI - Adaptive Mesh Refinement - Versatile Advection Code (development version)
mod_particles.t
Go to the documentation of this file.
1 !> Module containing all the particle routines
8 
9  implicit none
10 
11 contains
12 
13  !> Initialize particle data and parameters
14  subroutine particles_init()
16 
17  call particle_base_init()
18  call init_particles_com()
19 
20  select case(physics_type_particles)
21  case('advect')
22  call advect_init()
23  case('Lorentz')
24  call lorentz_init()
25  case('GCA')
26  call gca_init()
27  case('sample')
28  call sample_init()
29  case default
30  if (mype == 0) then
31  print *, "Unknown physics_type_particles", &
33  print *, "Options are: advect, Lorentz, GCA, sample"
34  call mpistop("Unknown physics_type_particles")
35  end if
36  end select
37 
38  end subroutine particles_init
39 
40  !> Create initial particles
41  subroutine particles_create()
43 
44  select case(physics_type_particles)
45  case('advect')
47  case('Lorentz')
48  ! The Vay mover can use the same routine
50  case('GCA')
52  case('sample')
54  case default
55  if (mype == 0) then
56  print *, "Unknown physics_type_particles", &
58  print *, "Options are: advect, Lorentz, GCA, sample"
59  call mpistop("Unknown physics_type_particles")
60  end if
61  end select
62 
63  end subroutine particles_create
64 
65 end module mod_particles
This module contains definitions of global parameters and variables and some generic functions/subrou...
integer mype
The rank of the current MPI task.
Tracer for advected particles moving with fluid flows By Jannis Teunissen, Bart Ripperda,...
subroutine, public advect_init()
subroutine, public advect_create_particles()
Module with shared functionality for all the particle movers.
subroutine init_particles_com()
Initialize communicators for particles.
subroutine particle_base_init()
Give initial values to parameters.
character(len=name_len) physics_type_particles
String describing the particle physics type.
Particle mover with Newtonian/relativistic Guiding Center Approximation (GCA) By Jannis Teunissen,...
subroutine, public gca_init()
subroutine, public gca_create_particles()
Particle mover with Newtonian/relativistic Boris scheme for Lorentz dynamics By Jannis Teunissen,...
subroutine, public lorentz_init()
subroutine, public lorentz_create_particles()
Scattered sampling based on fixed- or moving-particle interpolation By Fabio Bacchini (2020)
subroutine, public sample_init()
subroutine, public sample_create_particles()
Module containing all the particle routines.
Definition: mod_particles.t:2
subroutine particles_init()
Initialize particle data and parameters.
Definition: mod_particles.t:15
subroutine particles_create()
Create initial particles.
Definition: mod_particles.t:42