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

#include <PML_RZ.H>

Public Member Functions

 PML_RZ (int lev, const amrex::BoxArray &grid_ba, const amrex::DistributionMapping &grid_dm, const amrex::Geometry *geom, int ncell, int do_pml_in_domain)
 
void ApplyDamping (amrex::MultiFab *Et_fp, amrex::MultiFab *Ez_fp, amrex::MultiFab *Bt_fp, amrex::MultiFab *Bz_fp, amrex::Real dt)
 
std::array< amrex::MultiFab *, 2 > GetE_fp ()
 
std::array< amrex::MultiFab *, 2 > GetB_fp ()
 
void PushPSATD (int lev)
 
void FillBoundaryE ()
 
void FillBoundaryB ()
 
void FillBoundaryE (PatchType patch_type, std::optional< bool > nodal_sync=std::nullopt)
 
void FillBoundaryB (PatchType patch_type, std::optional< bool > nodal_sync=std::nullopt)
 
void CheckPoint (const std::string &dir) const
 
void Restart (const std::string &dir)
 

Private Member Functions

void PushPMLPSATDSinglePatchRZ (int lev, SpectralSolverRZ &solver, std::array< std::unique_ptr< amrex::MultiFab >, 2 > &pml_E, std::array< std::unique_ptr< amrex::MultiFab >, 2 > &pml_B)
 

Private Attributes

const int m_ncell
 
const int m_do_pml_in_domain
 
const amrex::Geometrym_geom
 
std::array< std::unique_ptr< amrex::MultiFab >, 2 > pml_E_fp
 
std::array< std::unique_ptr< amrex::MultiFab >, 2 > pml_B_fp
 

Constructor & Destructor Documentation

◆ PML_RZ()

PML_RZ::PML_RZ ( int  lev,
const amrex::BoxArray grid_ba,
const amrex::DistributionMapping grid_dm,
const amrex::Geometry geom,
int  ncell,
int  do_pml_in_domain 
)

Member Function Documentation

◆ ApplyDamping()

void PML_RZ::ApplyDamping ( amrex::MultiFab Et_fp,
amrex::MultiFab Ez_fp,
amrex::MultiFab Bt_fp,
amrex::MultiFab Bz_fp,
amrex::Real  dt 
)

◆ CheckPoint()

void PML_RZ::CheckPoint ( const std::string &  dir) const

◆ FillBoundaryB() [1/2]

void PML_RZ::FillBoundaryB ( )

◆ FillBoundaryB() [2/2]

void PML_RZ::FillBoundaryB ( PatchType  patch_type,
std::optional< bool >  nodal_sync = std::nullopt 
)

◆ FillBoundaryE() [1/2]

void PML_RZ::FillBoundaryE ( )

◆ FillBoundaryE() [2/2]

void PML_RZ::FillBoundaryE ( PatchType  patch_type,
std::optional< bool >  nodal_sync = std::nullopt 
)

◆ GetB_fp()

std::array< amrex::MultiFab *, 2 > PML_RZ::GetB_fp ( )

◆ GetE_fp()

std::array< amrex::MultiFab *, 2 > PML_RZ::GetE_fp ( )

◆ PushPMLPSATDSinglePatchRZ()

void PML_RZ::PushPMLPSATDSinglePatchRZ ( int  lev,
SpectralSolverRZ solver,
std::array< std::unique_ptr< amrex::MultiFab >, 2 > &  pml_E,
std::array< std::unique_ptr< amrex::MultiFab >, 2 > &  pml_B 
)
private

◆ PushPSATD()

void PML_RZ::PushPSATD ( int  lev)

◆ Restart()

void PML_RZ::Restart ( const std::string &  dir)

Member Data Documentation

◆ m_do_pml_in_domain

const int PML_RZ::m_do_pml_in_domain
private

◆ m_geom

const amrex::Geometry* PML_RZ::m_geom
private

◆ m_ncell

const int PML_RZ::m_ncell
private

◆ pml_B_fp

std::array<std::unique_ptr<amrex::MultiFab>,2> PML_RZ::pml_B_fp
private

◆ pml_E_fp

std::array<std::unique_ptr<amrex::MultiFab>,2> PML_RZ::pml_E_fp
private

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