aboutsummaryrefslogtreecommitdiff
path: root/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithm.H
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithm.H26
1 files changed, 4 insertions, 22 deletions
diff --git a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithm.H b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithm.H
index a53319327..f7cd06edf 100644
--- a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithm.H
+++ b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithm.H
@@ -33,6 +33,7 @@ class PsatdAlgorithm : public SpectralBaseAlgorithm
*
* \param[in] spectral_kspace spectral space
* \param[in] dm distribution mapping
+ * \param[in] spectral_index object containing indices to access data in spectral space
* \param[in] norder_x order of the spectral solver along x
* \param[in] norder_y order of the spectral solver along y
* \param[in] norder_z order of the spectral solver along z
@@ -47,6 +48,7 @@ class PsatdAlgorithm : public SpectralBaseAlgorithm
PsatdAlgorithm (
const SpectralKSpace& spectral_kspace,
const amrex::DistributionMapping& dm,
+ const SpectralFieldIndex& spectral_index,
const int norder_x,
const int norder_y,
const int norder_z,
@@ -66,28 +68,6 @@ class PsatdAlgorithm : public SpectralBaseAlgorithm
virtual void pushSpectralFields (SpectralFieldData& f) const override final;
/**
- * \brief Returns the number of fields stored in spectral space
- */
- virtual int getRequiredNumberOfFields () const override final
- {
- if (m_J_linear_in_time)
- {
- return SpectralFieldIndexJLinearInTime::n_fields;
- }
- else
- {
- if (m_time_averaging)
- {
- return SpectralFieldIndexTimeAveraging::n_fields;
- }
- else
- {
- return SpectralFieldIndex::n_fields;
- }
- }
- }
-
- /**
* \brief Initializes the coefficients used in \c pushSpectralFields to update the E and B fields
*
* \param[in] spectral_kspace spectral space
@@ -170,6 +150,8 @@ class PsatdAlgorithm : public SpectralBaseAlgorithm
// These real and complex coefficients are allocated only with averaged Galilean PSATD
SpectralComplexCoefficients Psi1_coef, Psi2_coef, Y1_coef, Y2_coef, Y3_coef, Y4_coef;
+ SpectralFieldIndex m_spectral_index;
+
// Centered modified finite-order k vectors
KVectorComponent modified_kx_vec_centered;
#if (AMREX_SPACEDIM==3)