WarpX
PsatdAlgorithmRZ.H
Go to the documentation of this file.
1 /* Copyright 2019 David Grote
2  *
3  * This file is part of WarpX.
4  *
5  * License: BSD-3-Clause-LBNL
6  */
7 #ifndef WARPX_PSATD_ALGORITHM_RZ_H_
8 #define WARPX_PSATD_ALGORITHM_RZ_H_
9 
11 
12 /* \brief Class that updates the field in spectral space
13  * and stores the coefficients of the corresponding update equation.
14  */
16 {
17 
18  public:
19  PsatdAlgorithmRZ(SpectralKSpaceRZ const & spectral_kspace,
20  amrex::DistributionMapping const & dm,
21  const SpectralFieldIndex& spectral_index,
22  int n_rz_azimuthal_modes, int norder_z,
23  short grid_type, amrex::Real dt_step,
24  bool update_with_rho,
25  bool time_averaging,
26  int J_in_time,
27  int rho_in_time,
28  bool dive_cleaning,
29  bool divb_cleaning);
30  // Redefine functions from base class
32 
34 
44  void CurrentCorrection (SpectralFieldDataRZ& field_data) final;
45 
55  void VayDeposition (SpectralFieldDataRZ& field_data) final;
56 
57  private:
58 
60  // Note that dt is saved to use in InitializeSpectralCoefficients
61  amrex::Real m_dt;
69 };
70 
71 #endif // WARPX_PSATD_ALGORITHM_RZ_H_
Definition: PsatdAlgorithmRZ.H:16
void InitializeSpectralCoefficients(SpectralFieldDataRZ const &f)
Definition: PsatdAlgorithmRZ.cpp:334
SpectralRealCoefficients X2_coef
Definition: PsatdAlgorithmRZ.H:67
PsatdAlgorithmRZ(SpectralKSpaceRZ const &spectral_kspace, amrex::DistributionMapping const &dm, const SpectralFieldIndex &spectral_index, int n_rz_azimuthal_modes, int norder_z, short grid_type, amrex::Real dt_step, bool update_with_rho, bool time_averaging, int J_in_time, int rho_in_time, bool dive_cleaning, bool divb_cleaning)
Definition: PsatdAlgorithmRZ.cpp:19
void CurrentCorrection(SpectralFieldDataRZ &field_data) final
Virtual function for current correction in Fourier space (Vay et al, 2013). This function overrides t...
Definition: PsatdAlgorithmRZ.cpp:422
void VayDeposition(SpectralFieldDataRZ &field_data) final
Virtual function for Vay current deposition in Fourier space (Vay et al, 2013). This function overrid...
Definition: PsatdAlgorithmRZ.cpp:488
SpectralRealCoefficients S_ck_coef
Definition: PsatdAlgorithmRZ.H:67
bool m_dive_cleaning
Definition: PsatdAlgorithmRZ.H:65
SpectralRealCoefficients X1_coef
Definition: PsatdAlgorithmRZ.H:67
SpectralRealCoefficients C_coef
Definition: PsatdAlgorithmRZ.H:67
bool m_divb_cleaning
Definition: PsatdAlgorithmRZ.H:66
bool coefficients_initialized
Definition: PsatdAlgorithmRZ.H:59
SpectralRealCoefficients X6_coef
Definition: PsatdAlgorithmRZ.H:68
SpectralRealCoefficients X3_coef
Definition: PsatdAlgorithmRZ.H:67
void pushSpectralFields(SpectralFieldDataRZ &f) final
Definition: PsatdAlgorithmRZ.cpp:77
bool m_update_with_rho
Definition: PsatdAlgorithmRZ.H:62
amrex::Real m_dt
Definition: PsatdAlgorithmRZ.H:61
int m_J_in_time
Definition: PsatdAlgorithmRZ.H:64
bool m_time_averaging
Definition: PsatdAlgorithmRZ.H:63
SpectralRealCoefficients X5_coef
Definition: PsatdAlgorithmRZ.H:68
Definition: SpectralBaseAlgorithmRZ.H:21
Definition: SpectralFieldDataRZ.H:23
Definition: SpectralFieldData.H:34
Definition: SpectralKSpaceRZ.H:21