WarpX
Public Member Functions | Public Attributes | List of all members
guardCellManager Class Reference

This class computes and stores the number of guard cells needed for the allocation of the MultiFabs and required for each part of the PIC loop. More...

#include <GuardCellManager.H>

Public Member Functions

void Init (const amrex::Real dt, const amrex::RealVect dx, const bool do_subcycling, const bool do_fdtd_nci_corr, const bool do_nodal, const bool do_moving_window, const int moving_window_dir, const int nox, const int nox_fft, const int noy_fft, const int noz_fft, const int nci_corr_stencil, const int maxwell_solver_id, const int max_level, const amrex::Array< amrex::Real, 3 > v_galilean, const amrex::Array< amrex::Real, 3 > v_comoving, const bool safe_guard_cells, const int do_electrostatic)
 Initialize number of guard cells depending on the options used. More...
 

Public Attributes

amrex::IntVect ng_alloc_EB = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_alloc_J = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_alloc_Rho = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_alloc_F = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_alloc_G = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_FieldSolver = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_FieldSolverF = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_FieldSolverG = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_FieldGather = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_UpdateAux = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_MovingWindow = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_afterPushPSATD = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_depos_J = amrex::IntVect::TheZeroVector()
 
amrex::IntVect ng_depos_rho = amrex::IntVect::TheZeroVector()
 

Detailed Description

This class computes and stores the number of guard cells needed for the allocation of the MultiFabs and required for each part of the PIC loop.

Member Function Documentation

◆ Init()

void guardCellManager::Init ( const amrex::Real  dt,
const amrex::RealVect  dx,
const bool  do_subcycling,
const bool  do_fdtd_nci_corr,
const bool  do_nodal,
const bool  do_moving_window,
const int  moving_window_dir,
const int  nox,
const int  nox_fft,
const int  noy_fft,
const int  noz_fft,
const int  nci_corr_stencil,
const int  maxwell_solver_id,
const int  max_level,
const amrex::Array< amrex::Real, 3 >  v_galilean,
const amrex::Array< amrex::Real, 3 >  v_comoving,
const bool  safe_guard_cells,
const int  do_electrostatic 
)

Initialize number of guard cells depending on the options used.

Parameters
do_subcyclingbool, whether to use subcycling
do_fdtd_nci_corrbool, whether to use Godfrey NCI corrector
do_nodalbool, whether the field solver is nodal
do_moving_windowbool, whether to use moving window
aux_is_nodalbool, true if the aux grid is nodal
moving_window_dirdirection of moving window
noxorder of current deposition
nox_fftorder of PSATD in x direction
noy_fftorder of PSATD in y direction
noz_fftorder of PSATD in z direction
nci_corr_stencilstencil of NCI corrector
maxwell_solver_idif of Maxwell solver
max_levelmax level of the simulation

Member Data Documentation

◆ ng_afterPushPSATD

amrex::IntVect guardCellManager::ng_afterPushPSATD = amrex::IntVect::TheZeroVector()

◆ ng_alloc_EB

amrex::IntVect guardCellManager::ng_alloc_EB = amrex::IntVect::TheZeroVector()

◆ ng_alloc_F

amrex::IntVect guardCellManager::ng_alloc_F = amrex::IntVect::TheZeroVector()

◆ ng_alloc_G

amrex::IntVect guardCellManager::ng_alloc_G = amrex::IntVect::TheZeroVector()

◆ ng_alloc_J

amrex::IntVect guardCellManager::ng_alloc_J = amrex::IntVect::TheZeroVector()

◆ ng_alloc_Rho

amrex::IntVect guardCellManager::ng_alloc_Rho = amrex::IntVect::TheZeroVector()

◆ ng_depos_J

amrex::IntVect guardCellManager::ng_depos_J = amrex::IntVect::TheZeroVector()

◆ ng_depos_rho

amrex::IntVect guardCellManager::ng_depos_rho = amrex::IntVect::TheZeroVector()

◆ ng_FieldGather

amrex::IntVect guardCellManager::ng_FieldGather = amrex::IntVect::TheZeroVector()

◆ ng_FieldSolver

amrex::IntVect guardCellManager::ng_FieldSolver = amrex::IntVect::TheZeroVector()

◆ ng_FieldSolverF

amrex::IntVect guardCellManager::ng_FieldSolverF = amrex::IntVect::TheZeroVector()

◆ ng_FieldSolverG

amrex::IntVect guardCellManager::ng_FieldSolverG = amrex::IntVect::TheZeroVector()

◆ ng_MovingWindow

amrex::IntVect guardCellManager::ng_MovingWindow = amrex::IntVect::TheZeroVector()

◆ ng_UpdateAux

amrex::IntVect guardCellManager::ng_UpdateAux = amrex::IntVect::TheZeroVector()

The documentation for this class was generated from the following files: