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

#include <PsatdAlgorithmRZ.H>

Inheritance diagram for PsatdAlgorithmRZ:
SpectralBaseAlgorithmRZ

Public Member Functions

 PsatdAlgorithmRZ (SpectralKSpaceRZ const &spectral_kspace, amrex::DistributionMapping const &dm, int const n_rz_azimuthal_modes, int const norder_z, bool const nodal, amrex::Real const dt_step)
 
virtual void pushSpectralFields (SpectralFieldDataRZ &f) override final
 
virtual int getRequiredNumberOfFields () const override final
 
void InitializeSpectralCoefficients (SpectralFieldDataRZ const &f)
 
virtual void CurrentCorrection (SpectralFieldDataRZ &field_data, std::array< std::unique_ptr< amrex::MultiFab >, 3 > &current, const std::unique_ptr< amrex::MultiFab > &rho) override final
 Virtual function for current correction in Fourier space (Vay et al, 2013). This function overrides the virtual function CurrentCorrection in the base class SpectralBaseAlgorithmRZ and cannot be overridden by further derived classes. More...
 
virtual void VayDeposition (SpectralFieldDataRZ &field_data, std::array< std::unique_ptr< amrex::MultiFab >, 3 > &current) override final
 Virtual function for Vay current deposition in Fourier space (Vay et al, 2013). This function overrides the virtual function VayDeposition in the base class SpectralBaseAlgorithmRZ and cannot be overridden by further derived classes. More...
 
- Public Member Functions inherited from SpectralBaseAlgorithmRZ
virtual ~SpectralBaseAlgorithmRZ ()
 
void ComputeSpectralDivE (SpectralFieldDataRZ &field_data, const std::array< std::unique_ptr< amrex::MultiFab >, 3 > &Efield, amrex::MultiFab &divE)
 Compute spectral divergence of E. More...
 

Private Attributes

bool coefficients_initialized
 
amrex::Real m_dt
 
SpectralRealCoefficients C_coef
 
SpectralRealCoefficients S_ck_coef
 
SpectralRealCoefficients X1_coef
 
SpectralRealCoefficients X2_coef
 
SpectralRealCoefficients X3_coef
 

Additional Inherited Members

- Protected Types inherited from SpectralBaseAlgorithmRZ
using SpectralRealCoefficients = amrex::FabArray< amrex::BaseFab< amrex::Real > >
 
using SpectralComplexCoefficients = amrex::FabArray< amrex::BaseFab< Complex > >
 
- Protected Member Functions inherited from SpectralBaseAlgorithmRZ
 SpectralBaseAlgorithmRZ (SpectralKSpaceRZ const &spectral_kspace, amrex::DistributionMapping const &dm, int const norder_z, bool const nodal)
 
- Protected Attributes inherited from SpectralBaseAlgorithmRZ
KVectorComponent modified_kz_vec
 

Constructor & Destructor Documentation

◆ PsatdAlgorithmRZ()

PsatdAlgorithmRZ::PsatdAlgorithmRZ ( SpectralKSpaceRZ const &  spectral_kspace,
amrex::DistributionMapping const &  dm,
int const  n_rz_azimuthal_modes,
int const  norder_z,
bool const  nodal,
amrex::Real const  dt_step 
)

Member Function Documentation

◆ CurrentCorrection()

void PsatdAlgorithmRZ::CurrentCorrection ( SpectralFieldDataRZ field_data,
std::array< std::unique_ptr< amrex::MultiFab >, 3 > &  current,
const std::unique_ptr< amrex::MultiFab > &  rho 
)
finaloverridevirtual

Virtual function for current correction in Fourier space (Vay et al, 2013). This function overrides the virtual function CurrentCorrection in the base class SpectralBaseAlgorithmRZ and cannot be overridden by further derived classes.

Parameters
[in,out]field_dataAll fields in Fourier space
[in,out]currentArray of unique pointers to MultiFab storing the three components of the current density
[in]rhoUnique pointer to MultiFab storing the charge density

Implements SpectralBaseAlgorithmRZ.

◆ getRequiredNumberOfFields()

virtual int PsatdAlgorithmRZ::getRequiredNumberOfFields ( ) const
inlinefinaloverridevirtual

◆ InitializeSpectralCoefficients()

void PsatdAlgorithmRZ::InitializeSpectralCoefficients ( SpectralFieldDataRZ const &  f)

◆ pushSpectralFields()

void PsatdAlgorithmRZ::pushSpectralFields ( SpectralFieldDataRZ f)
finaloverridevirtual

◆ VayDeposition()

void PsatdAlgorithmRZ::VayDeposition ( SpectralFieldDataRZ field_data,
std::array< std::unique_ptr< amrex::MultiFab >, 3 > &  current 
)
finaloverridevirtual

Virtual function for Vay current deposition in Fourier space (Vay et al, 2013). This function overrides the virtual function VayDeposition in the base class SpectralBaseAlgorithmRZ and cannot be overridden by further derived classes.

Parameters
[in,out]field_dataAll fields in Fourier space
[in,out]currentArray of unique pointers to MultiFab storing the three components of the current density

Implements SpectralBaseAlgorithmRZ.

Member Data Documentation

◆ C_coef

SpectralRealCoefficients PsatdAlgorithmRZ::C_coef
private

◆ coefficients_initialized

bool PsatdAlgorithmRZ::coefficients_initialized
private

◆ m_dt

amrex::Real PsatdAlgorithmRZ::m_dt
private

◆ S_ck_coef

SpectralRealCoefficients PsatdAlgorithmRZ::S_ck_coef
private

◆ X1_coef

SpectralRealCoefficients PsatdAlgorithmRZ::X1_coef
private

◆ X2_coef

SpectralRealCoefficients PsatdAlgorithmRZ::X2_coef
private

◆ X3_coef

SpectralRealCoefficients PsatdAlgorithmRZ::X3_coef
private

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