afivo-streamer 1.1
1D/2D/3D streamer simulations with AMR
Loading...
Searching...
No Matches
m_model.f90
Go to the documentation of this file.
1!> Module to set the type of model
2module m_model
3 use m_af_all
4 use m_types
5
6 implicit none
7 private
8
9 !> Fluid model with local field approximation
10 integer, parameter :: model_lfa = 1
11
12 !> Fluid model with local energy approximation and energy fluxes that are
13 !> "5/3" times the electron flux
14 integer, parameter :: model_ee53 = 2
15
16 !> Which type of model is used
17 integer, public, protected :: model_type = model_lfa
18
19 !> Whether the model has an energy equation
20 logical, public, protected :: model_has_energy_equation = .false.
21
22 public :: model_initialize
23
24contains
25
26 !> Initialize the module
27 subroutine model_initialize(cfg)
28 use m_config
29 type(cfg_t), intent(inout) :: cfg
30 character(len=name_len) :: model_name
31
32 !< [model_types]
33 model_name = "lfa"
34 call cfg_add_get(cfg, "model%type", model_name, "Type of model to use")
35
36 select case (model_name)
37 case ("lfa")
38 model_type = model_lfa
39 case ("ee53")
40 model_type = model_ee53
42 case default
43 error stop "Unknown model (choices: lfa, ee53)"
44 end select
45 !< [model_types]
46
47 end subroutine model_initialize
48
49end module m_model
Module to set the type of model.
Definition m_model.f90:2
integer, public, protected model_type
Which type of model is used.
Definition m_model.f90:17
logical, public, protected model_has_energy_equation
Whether the model has an energy equation.
Definition m_model.f90:20
subroutine, public model_initialize(cfg)
Initialize the module.
Definition m_model.f90:28
Module with basic types.
Definition m_types.f90:2