diff options
Diffstat (limited to 'Source/FieldSolver/SpectralSolver/SpectralAlgorithms/GalileanPsatdAlgorithmRZ.cpp')
-rw-r--r-- | Source/FieldSolver/SpectralSolver/SpectralAlgorithms/GalileanPsatdAlgorithmRZ.cpp | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/GalileanPsatdAlgorithmRZ.cpp b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/GalileanPsatdAlgorithmRZ.cpp index 85de8ffc1..dd608fa18 100644 --- a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/GalileanPsatdAlgorithmRZ.cpp +++ b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/GalileanPsatdAlgorithmRZ.cpp @@ -286,7 +286,8 @@ void GalileanPsatdAlgorithmRZ::InitializeSpectralCoefficients (SpectralFieldData } void -GalileanPsatdAlgorithmRZ::CurrentCorrection (SpectralFieldDataRZ& field_data, +GalileanPsatdAlgorithmRZ::CurrentCorrection (const int lev, + SpectralFieldDataRZ& field_data, std::array<std::unique_ptr<amrex::MultiFab>,3>& current, const std::unique_ptr<amrex::MultiFab>& rho ) { @@ -296,11 +297,11 @@ GalileanPsatdAlgorithmRZ::CurrentCorrection (SpectralFieldDataRZ& field_data, using Idx = SpectralFieldIndex; // Forward Fourier transform of J and rho - field_data.ForwardTransform( *current[0], Idx::Jx, + field_data.ForwardTransform( lev, *current[0], Idx::Jx, *current[1], Idx::Jy); - field_data.ForwardTransform( *current[2], Idx::Jz, 0); - field_data.ForwardTransform( *rho, Idx::rho_old, 0 ); - field_data.ForwardTransform( *rho, Idx::rho_new, 1 ); + field_data.ForwardTransform( lev, *current[2], Idx::Jz, 0); + field_data.ForwardTransform( lev, *rho, Idx::rho_old, 0 ); + field_data.ForwardTransform( lev, *rho, Idx::rho_new, 1 ); // Loop over boxes for (amrex::MFIter mfi(field_data.fields); mfi.isValid(); ++mfi){ @@ -364,14 +365,16 @@ GalileanPsatdAlgorithmRZ::CurrentCorrection (SpectralFieldDataRZ& field_data, } // Backward Fourier transform of J - field_data.BackwardTransform( *current[0], Idx::Jx, + field_data.BackwardTransform( lev, + *current[0], Idx::Jx, *current[1], Idx::Jy); - field_data.BackwardTransform( *current[2], Idx::Jz, 0 ); + field_data.BackwardTransform( lev, *current[2], Idx::Jz, 0 ); } void -GalileanPsatdAlgorithmRZ::VayDeposition (SpectralFieldDataRZ& /*field_data*/, +GalileanPsatdAlgorithmRZ::VayDeposition (const int /*lev*/, + SpectralFieldDataRZ& /*field_data*/, std::array<std::unique_ptr<amrex::MultiFab>,3>& /*current*/) { amrex::Abort("Vay deposition not implemented in RZ geometry"); |