WarpX
Functions | Variables
WarpXAlgorithmSelection.cpp File Reference
#include "WarpX.H"
#include "WarpXAlgorithmSelection.H"
#include <AMReX.H>
#include <AMReX_ParmParse.H>
#include <algorithm>
#include <cstring>
#include <ctype.h>
#include <map>
#include <utility>

Functions

int GetAlgorithmInteger (amrex::ParmParse &pp, const char *pp_search_key)
 
int GetFieldBCTypeInteger (std::string BCType)
 
ParticleBoundaryType GetParticleBCTypeInteger (std::string BCType)
 

Variables

const std::map< std::string, int > maxwell_solver_algo_to_int
 
const std::map< std::string, int > electrostatic_solver_algo_to_int
 
const std::map< std::string, int > particle_pusher_algo_to_int
 
const std::map< std::string, int > current_deposition_algo_to_int
 
const std::map< std::string, int > charge_deposition_algo_to_int
 
const std::map< std::string, int > gathering_algo_to_int
 
const std::map< std::string, int > load_balance_costs_update_algo_to_int
 
const std::map< std::string, int > MaxwellSolver_medium_algo_to_int
 
const std::map< std::string, int > MacroscopicSolver_algo_to_int
 
const std::map< std::string, int > FieldBCType_algo_to_int
 
const std::map< std::string, ParticleBoundaryTypeParticleBCType_algo_to_enum
 
const std::map< std::string, int > ReductionType_algo_to_int
 

Function Documentation

◆ GetAlgorithmInteger()

int GetAlgorithmInteger ( amrex::ParmParse &  pp,
const char *  pp_search_key 
)

◆ GetFieldBCTypeInteger()

int GetFieldBCTypeInteger ( std::string  BCType)

Select BC Type for fields, if field=true else select BCType for particles.

◆ GetParticleBCTypeInteger()

ParticleBoundaryType GetParticleBCTypeInteger ( std::string  BCType)

Select BC Type for particles.

Variable Documentation

◆ charge_deposition_algo_to_int

const std::map<std::string, int> charge_deposition_algo_to_int
Initial value:
= {
}
Definition: WarpXAlgorithmSelection.H:75

◆ current_deposition_algo_to_int

const std::map<std::string, int> current_deposition_algo_to_int
Initial value:
= {
}
Definition: WarpXAlgorithmSelection.H:66
Definition: WarpXAlgorithmSelection.H:67
Definition: WarpXAlgorithmSelection.H:68

◆ electrostatic_solver_algo_to_int

const std::map<std::string, int> electrostatic_solver_algo_to_int
Initial value:
= {
}
Definition: WarpXAlgorithmSelection.H:50
Definition: WarpXAlgorithmSelection.H:51
Definition: WarpXAlgorithmSelection.H:52

◆ FieldBCType_algo_to_int

const std::map<std::string, int> FieldBCType_algo_to_int
Initial value:
= {
{"absorbing_silver_mueller", FieldBoundaryType::Absorbing_SilverMueller},
}
perfect magnetic conductor (PMC) with B_tangential=0
Definition: WarpXAlgorithmSelection.H:104
perfect electric conductor (PEC) with E_tangential=0
Definition: WarpXAlgorithmSelection.H:103
Definition: WarpXAlgorithmSelection.H:102
Definition: WarpXAlgorithmSelection.H:107
Definition: WarpXAlgorithmSelection.H:108
Definition: WarpXAlgorithmSelection.H:101
Definition: WarpXAlgorithmSelection.H:105

◆ gathering_algo_to_int

const std::map<std::string, int> gathering_algo_to_int
Initial value:
= {
{"energy-conserving", GatheringAlgo::EnergyConserving },
{"momentum-conserving", GatheringAlgo::MomentumConserving },
}
Definition: WarpXAlgorithmSelection.H:81
Definition: WarpXAlgorithmSelection.H:82

◆ load_balance_costs_update_algo_to_int

const std::map<std::string, int> load_balance_costs_update_algo_to_int
Initial value:
= {
}
load balance according to in-code timer-based weights (i.e., with costs)
Definition: WarpXAlgorithmSelection.H:90
Definition: WarpXAlgorithmSelection.H:93
Definition: WarpXAlgorithmSelection.H:91

◆ MacroscopicSolver_algo_to_int

const std::map<std::string, int> MacroscopicSolver_algo_to_int
Initial value:
= {
}
Definition: WarpXAlgorithmSelection.H:35
Definition: WarpXAlgorithmSelection.H:34

◆ maxwell_solver_algo_to_int

const std::map<std::string, int> maxwell_solver_algo_to_int
Initial value:
= {
{"default", MaxwellSolverAlgo::Yee }
}
Definition: WarpXAlgorithmSelection.H:43
Definition: WarpXAlgorithmSelection.H:44
Definition: WarpXAlgorithmSelection.H:41
Definition: WarpXAlgorithmSelection.H:42

◆ MaxwellSolver_medium_algo_to_int

const std::map<std::string, int> MaxwellSolver_medium_algo_to_int
Initial value:
= {
{"vacuum", MediumForEM::Vacuum},
{"macroscopic", MediumForEM::Macroscopic},
{"default", MediumForEM::Vacuum}
}
Definition: WarpXAlgorithmSelection.H:21
Definition: WarpXAlgorithmSelection.H:22

◆ particle_pusher_algo_to_int

const std::map<std::string, int> particle_pusher_algo_to_int
Initial value:
= {
}
Definition: WarpXAlgorithmSelection.H:60
Definition: WarpXAlgorithmSelection.H:59
Definition: WarpXAlgorithmSelection.H:58

◆ ParticleBCType_algo_to_enum

const std::map<std::string, ParticleBoundaryType> ParticleBCType_algo_to_enum
Initial value:
= {
}
particles are reflected
particles cross domain boundary leave with damped j
particles crossing domain boundary are removed

◆ ReductionType_algo_to_int

const std::map<std::string, int> ReductionType_algo_to_int
Initial value:
= {
{"maximum", ReductionType::Maximum},
{"minimum", ReductionType::Minimum},
{"integral", ReductionType::Sum}
}
Definition: WarpXAlgorithmSelection.H:127
Definition: WarpXAlgorithmSelection.H:128
Definition: WarpXAlgorithmSelection.H:126