#include <PsatdAlgorithmPml.H>
|
| PsatdAlgorithmPml (const SpectralKSpace &spectral_kspace, const amrex::DistributionMapping &dm, const SpectralFieldIndex &spectral_index, int norder_x, int norder_y, int norder_z, short grid_type, const amrex::Vector< amrex::Real > &v_galilean, amrex::Real dt, bool dive_cleaning, bool divb_cleaning) |
| Constructor of the class PsatdAlgorithmPml. More...
|
|
void | InitializeSpectralCoefficients (const SpectralKSpace &spectral_kspace, const amrex::DistributionMapping &dm) |
| Initializes the coefficients used in pushSpectralFields to update the E and B fields. More...
|
|
void | pushSpectralFields (SpectralFieldData &f) const final |
| Updates the E and B fields in spectral space, according to the relevant PSATD equations. More...
|
|
void | CurrentCorrection (SpectralFieldData &field_data) final |
| Virtual function for current correction in Fourier space (Vay et al, 2013). This function overrides the virtual function CurrentCorrection in the base class SpectralBaseAlgorithm and cannot be overridden by further derived classes. More...
|
|
void | VayDeposition (SpectralFieldData &field_data) 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 SpectralBaseAlgorithm and cannot be overridden by further derived classes. More...
|
|
virtual | ~SpectralBaseAlgorithm ()=default |
|
| SpectralBaseAlgorithm (const SpectralBaseAlgorithm &)=default |
|
SpectralBaseAlgorithm & | operator= (const SpectralBaseAlgorithm &)=default |
|
| SpectralBaseAlgorithm (SpectralBaseAlgorithm &&)=default |
|
SpectralBaseAlgorithm & | operator= (SpectralBaseAlgorithm &&)=default |
|
void | ComputeSpectralDivE (int lev, SpectralFieldData &field_data, const std::array< std::unique_ptr< amrex::MultiFab >, 3 > &Efield, amrex::MultiFab &divE) |
| Compute spectral divergence of E. More...
|
|
◆ PsatdAlgorithmPml()
PsatdAlgorithmPml::PsatdAlgorithmPml |
( |
const SpectralKSpace & |
spectral_kspace, |
|
|
const amrex::DistributionMapping & |
dm, |
|
|
const SpectralFieldIndex & |
spectral_index, |
|
|
int |
norder_x, |
|
|
int |
norder_y, |
|
|
int |
norder_z, |
|
|
short |
grid_type, |
|
|
const amrex::Vector< amrex::Real > & |
v_galilean, |
|
|
amrex::Real |
dt, |
|
|
bool |
dive_cleaning, |
|
|
bool |
divb_cleaning |
|
) |
| |
Constructor of the class PsatdAlgorithmPml.
- Parameters
-
[in] | spectral_kspace | Spectral space |
[in] | dm | Distribution mapping |
[in] | spectral_index | Object containing indices to access data in spectral space |
[in] | norder_x | Order of the spectral solver along x |
[in] | norder_y | Order of the spectral solver along y |
[in] | norder_z | Order of the spectral solver along z |
[in] | grid_type | Type of grid (collocated or not) |
[in] | v_galilean | Galilean velocity |
[in] | dt | Time step of the simulation |
[in] | dive_cleaning | Whether to use divergence correction for E (F term) |
[in] | divb_cleaning | Whether to use divergence correction for B (G term) |
◆ CurrentCorrection()
Virtual function for current correction in Fourier space (Vay et al, 2013). This function overrides the virtual function CurrentCorrection
in the base class SpectralBaseAlgorithm
and cannot be overridden by further derived classes.
- Parameters
-
[in,out] | field_data | All fields in Fourier space |
Implements SpectralBaseAlgorithm.
◆ InitializeSpectralCoefficients()
Initializes the coefficients used in pushSpectralFields
to update the E and B fields.
- Parameters
-
[in] | spectral_kspace | Spectral space |
[in] | dm | Distribution mapping |
◆ pushSpectralFields()
Updates the E and B fields in spectral space, according to the relevant PSATD equations.
- Parameters
-
[in,out] | f | All fields in spectral space |
Implements SpectralBaseAlgorithm.
◆ VayDeposition()
Virtual function for Vay current deposition in Fourier space (Vay et al, 2013). This function overrides the virtual function VayDeposition
in the base class SpectralBaseAlgorithm
and cannot be overridden by further derived classes.
- Parameters
-
[in,out] | field_data | All fields in Fourier space |
Implements SpectralBaseAlgorithm.
◆ C_coef
◆ inv_k2_coef
◆ m_divb_cleaning
bool PsatdAlgorithmPml::m_divb_cleaning |
|
private |
◆ m_dive_cleaning
bool PsatdAlgorithmPml::m_dive_cleaning |
|
private |
◆ m_dt
amrex::Real PsatdAlgorithmPml::m_dt |
|
private |
◆ m_is_galilean
bool PsatdAlgorithmPml::m_is_galilean |
|
private |
◆ m_v_galilean
◆ modified_kx_vec_centered
◆ modified_kz_vec_centered
◆ S_ck_coef
◆ T2_coef
The documentation for this class was generated from the following files:
- /home/docs/checkouts/readthedocs.org/user_builds/warpx/checkouts/latest/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmPml.H
- /home/docs/checkouts/readthedocs.org/user_builds/warpx/checkouts/latest/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmPml.cpp