diff options
Diffstat (limited to 'Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmRZ.cpp')
-rw-r--r-- | Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmRZ.cpp | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmRZ.cpp b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmRZ.cpp index 002f9e55f..b96d5fa93 100644 --- a/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmRZ.cpp +++ b/Source/FieldSolver/SpectralSolver/SpectralAlgorithms/PsatdAlgorithmRZ.cpp @@ -215,7 +215,8 @@ void PsatdAlgorithmRZ::InitializeSpectralCoefficients (SpectralFieldDataRZ const } void -PsatdAlgorithmRZ::CurrentCorrection (SpectralFieldDataRZ& field_data, +PsatdAlgorithmRZ::CurrentCorrection (const int lev, + SpectralFieldDataRZ& field_data, std::array<std::unique_ptr<amrex::MultiFab>,3>& current, const std::unique_ptr<amrex::MultiFab>& rho) { @@ -225,11 +226,12 @@ PsatdAlgorithmRZ::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){ @@ -289,13 +291,16 @@ PsatdAlgorithmRZ::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 -PsatdAlgorithmRZ::VayDeposition (SpectralFieldDataRZ& /*field_data*/, +PsatdAlgorithmRZ::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"); |