WarpX
Source
Utils
WarpXAlgorithmSelection.H
Go to the documentation of this file.
1
/* Copyright 2019 David Grote, Luca Fedeli, Remi Lehe
2
* Yinjian Zhao
3
*
4
* This file is part of WarpX.
5
*
6
* License: BSD-3-Clause-LBNL
7
*/
8
#ifndef UTILS_WARPXALGORITHMSELECTION_H_
9
#define UTILS_WARPXALGORITHMSELECTION_H_
10
11
#include <AMReX_ParmParse.H>
12
#include <string>
13
18
struct
MediumForEM
{
19
enum
{
20
Vacuum
= 0,
21
Macroscopic
= 1
22
};
23
};
24
31
struct
MacroscopicSolverAlgo
{
32
enum
{
33
BackwardEuler = 0,
34
LaxWendroff = 1
35
};
36
};
37
38
struct
MaxwellSolverAlgo
{
39
enum
{
40
Yee = 0,
41
CKC = 1
42
};
43
};
44
45
struct
ParticlePusherAlgo
{
46
enum
{
47
Boris = 0,
48
Vay = 1,
49
HigueraCary = 2
50
};
51
};
52
53
struct
CurrentDepositionAlgo
{
54
enum
{
55
Esirkepov = 0,
56
Direct = 1,
57
Vay = 2
58
};
59
};
60
61
struct
ChargeDepositionAlgo
{
62
// Only the Standard algorithm is implemented
63
enum
{
64
Standard = 0
65
};
66
};
67
68
struct
GatheringAlgo
{
69
enum
{
70
EnergyConserving = 0,
71
MomentumConserving
72
};
73
};
74
77
struct
LoadBalanceCostsUpdateAlgo
{
78
enum
{
79
Timers = 0,
80
Heuristic = 1
82
};
83
};
84
85
int
86
GetAlgorithmInteger
( amrex::ParmParse& pp,
const
char
* pp_search_key );
87
88
#endif // UTILS_WARPXALGORITHMSELECTION_H_
LoadBalanceCostsUpdateAlgo
Definition:
WarpXAlgorithmSelection.H:77
ParticlePusherAlgo
Definition:
WarpXAlgorithmSelection.H:45
GatheringAlgo
Definition:
WarpXAlgorithmSelection.H:68
GetAlgorithmInteger
int GetAlgorithmInteger(amrex::ParmParse &pp, const char *pp_search_key)
Definition:
WarpXAlgorithmSelection.cpp:75
MaxwellSolverAlgo
Definition:
WarpXAlgorithmSelection.H:38
MediumForEM::Macroscopic
Definition:
WarpXAlgorithmSelection.H:21
ChargeDepositionAlgo
Definition:
WarpXAlgorithmSelection.H:61
MacroscopicSolverAlgo
struct to select algorithm for macroscopic Maxwell solver LaxWendroff (semi-implicit) represents sigm...
Definition:
WarpXAlgorithmSelection.H:31
MediumForEM
struct to determine the computational medium, i.e., vacuum or material/macroscopic default is vacuum...
Definition:
WarpXAlgorithmSelection.H:18
MediumForEM::Vacuum
Definition:
WarpXAlgorithmSelection.H:20
CurrentDepositionAlgo
Definition:
WarpXAlgorithmSelection.H:53
Generated by
1.8.13