|
WarpX
|
#include <SpectralSolverRZ.H>
Public Member Functions | |
| SpectralSolverRZ (const int lev, amrex::BoxArray const &realspace_ba, amrex::DistributionMapping const &dm, int const n_rz_azimuthal_modes, int const norder_z, bool const nodal, const amrex::Array< amrex::Real, 3 > &v_galilean, amrex::RealVect const dx, amrex::Real const dt, bool const update_with_rho, const bool fft_do_time_averaging, const bool J_linear_in_time, const bool dive_cleaning, const bool divb_cleaning) | |
| void | ForwardTransform (const int lev, amrex::MultiFab const &field_mf, int const field_index, int const i_comp=0) |
| void | ForwardTransform (const int lev, amrex::MultiFab const &field_mf1, int const field_index1, amrex::MultiFab const &field_mf2, int const field_index2) |
| void | BackwardTransform (const int lev, amrex::MultiFab &field_mf, int const field_index, int const i_comp=0) |
| void | BackwardTransform (const int lev, amrex::MultiFab &field_mf1, int const field_index1, amrex::MultiFab &field_mf2, int const field_index2) |
| void | pushSpectralFields () |
| void | InitFilter (amrex::IntVect const &filter_npass_each_dir, bool const compensation) |
| void | ApplyFilter (const int lev, int const field_index) |
| void | ApplyFilter (const int lev, int const field_index1, int const field_index2, int const field_index3) |
| void | ComputeSpectralDivE (const int lev, const std::array< std::unique_ptr< amrex::MultiFab >, 3 > &Efield, amrex::MultiFab &divE) |
| Public interface to call the member function ComputeSpectralDivE of the base class SpectralBaseAlgorithmRZ from objects of class SpectralSolverRZ. More... | |
| void | CurrentCorrection (const int lev, std::array< std::unique_ptr< amrex::MultiFab >, 3 > ¤t, const std::unique_ptr< amrex::MultiFab > &rho) |
Public interface to call the virtual function CurrentCorrection, defined in the base class SpectralBaseAlgorithmRZ and possibly overridden by its derived classes (e.g. PsatdAlgorithmRZ), from objects of class SpectralSolverRZ through the private unique pointer algorithm. More... | |
| void | VayDeposition (const int lev, std::array< std::unique_ptr< amrex::MultiFab >, 3 > ¤t) |
Public interface to call the virtual function VayDeposition, declared in the base class SpectralBaseAlgorithmRZ and defined in its derived classes, from objects of class SpectralSolverRZ through the private unique pointer algorithm. More... | |
| void | CopySpectralDataComp (const int src_comp, const int dest_comp) |
Copy spectral data from component src_comp to component dest_comp of field_data.fields. More... | |
| void | ZeroOutDataComp (const int icomp) |
Set to zero the data on component icomp of field_data.fields. More... | |
| void | ScaleDataComp (const int icomp, const amrex::Real scale_factor) |
Scale the data on component icomp of field_data.fields by a given scale factor. More... | |
Public Attributes | |
| SpectralFieldIndex | m_spectral_index |
Private Attributes | |
| SpectralKSpaceRZ | k_space |
| SpectralFieldDataRZ | field_data |
| std::unique_ptr< SpectralBaseAlgorithmRZ > | algorithm |
| SpectralSolverRZ::SpectralSolverRZ | ( | const int | lev, |
| amrex::BoxArray const & | realspace_ba, | ||
| amrex::DistributionMapping const & | dm, | ||
| int const | n_rz_azimuthal_modes, | ||
| int const | norder_z, | ||
| bool const | nodal, | ||
| const amrex::Array< amrex::Real, 3 > & | v_galilean, | ||
| amrex::RealVect const | dx, | ||
| amrex::Real const | dt, | ||
| bool const | update_with_rho, | ||
| const bool | fft_do_time_averaging, | ||
| const bool | J_linear_in_time, | ||
| const bool | dive_cleaning, | ||
| const bool | divb_cleaning | ||
| ) |
|
inline |
|
inline |
| void SpectralSolverRZ::BackwardTransform | ( | const int | lev, |
| amrex::MultiFab & | field_mf, | ||
| int const | field_index, | ||
| int const | i_comp = 0 |
||
| ) |
| void SpectralSolverRZ::BackwardTransform | ( | const int | lev, |
| amrex::MultiFab & | field_mf1, | ||
| int const | field_index1, | ||
| amrex::MultiFab & | field_mf2, | ||
| int const | field_index2 | ||
| ) |
| void SpectralSolverRZ::ComputeSpectralDivE | ( | const int | lev, |
| const std::array< std::unique_ptr< amrex::MultiFab >, 3 > & | Efield, | ||
| amrex::MultiFab & | divE | ||
| ) |
Public interface to call the member function ComputeSpectralDivE of the base class SpectralBaseAlgorithmRZ from objects of class SpectralSolverRZ.
|
inline |
Copy spectral data from component src_comp to component dest_comp of field_data.fields.
| [in] | src_comp | component of the source FabArray from which the data are copied |
| [in] | dest_comp | component of the destination FabArray where the data are copied |
| void SpectralSolverRZ::CurrentCorrection | ( | const int | lev, |
| std::array< std::unique_ptr< amrex::MultiFab >, 3 > & | current, | ||
| const std::unique_ptr< amrex::MultiFab > & | rho | ||
| ) |
Public interface to call the virtual function CurrentCorrection, defined in the base class SpectralBaseAlgorithmRZ and possibly overridden by its derived classes (e.g. PsatdAlgorithmRZ), from objects of class SpectralSolverRZ through the private unique pointer algorithm.
| [in,out] | current | two-dimensional array of unique pointers to MultiFab storing the three components of the current density |
| [in] | rho | unique pointer to MultiFab storing the charge density |
| void SpectralSolverRZ::ForwardTransform | ( | const int | lev, |
| amrex::MultiFab const & | field_mf, | ||
| int const | field_index, | ||
| int const | i_comp = 0 |
||
| ) |
| void SpectralSolverRZ::ForwardTransform | ( | const int | lev, |
| amrex::MultiFab const & | field_mf1, | ||
| int const | field_index1, | ||
| amrex::MultiFab const & | field_mf2, | ||
| int const | field_index2 | ||
| ) |
|
inline |
| void SpectralSolverRZ::pushSpectralFields | ( | ) |
|
inline |
Scale the data on component icomp of field_data.fields by a given scale factor.
| [in] | icomp | component of the FabArray where the data are scaled |
| [in] | scale_factor | scale factor to use for scaling |
| void SpectralSolverRZ::VayDeposition | ( | const int | lev, |
| std::array< std::unique_ptr< amrex::MultiFab >, 3 > & | current | ||
| ) |
Public interface to call the virtual function VayDeposition, declared in the base class SpectralBaseAlgorithmRZ and defined in its derived classes, from objects of class SpectralSolverRZ through the private unique pointer algorithm.
| [in,out] | current | Array of unique pointers to MultiFab storing the three components of the current density |
|
inline |
Set to zero the data on component icomp of field_data.fields.
| [in] | icomp | component of the FabArray where the data are set to zero |
|
private |
|
private |
|
private |
| SpectralFieldIndex SpectralSolverRZ::m_spectral_index |
1.8.13