diff options
Diffstat (limited to 'Source/FieldSolver/SpectralSolver/SpectralSolver.cpp')
-rw-r--r-- | Source/FieldSolver/SpectralSolver/SpectralSolver.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Source/FieldSolver/SpectralSolver/SpectralSolver.cpp b/Source/FieldSolver/SpectralSolver/SpectralSolver.cpp index 5d2c954ce..0cfd899df 100644 --- a/Source/FieldSolver/SpectralSolver/SpectralSolver.cpp +++ b/Source/FieldSolver/SpectralSolver/SpectralSolver.cpp @@ -14,6 +14,8 @@ #include "Utils/WarpXProfilerWrapper.H" #include "Utils/WarpXUtil.H" +#include <memory> + #if WARPX_USE_PSATD /* \brief Initialize the spectral Maxwell solver @@ -53,23 +55,23 @@ SpectralSolver::SpectralSolver( // Initialize the corresponding coefficients over k space if (pml) { - algorithm = std::unique_ptr<PMLPsatdAlgorithm>( new PMLPsatdAlgorithm( - k_space, dm, norder_x, norder_y, norder_z, nodal, dt ) ); + algorithm = std::make_unique<PMLPsatdAlgorithm>( + k_space, dm, norder_x, norder_y, norder_z, nodal, dt); } else { if (fft_do_time_averaging){ - algorithm = std::unique_ptr<AvgGalileanAlgorithm>( new AvgGalileanAlgorithm( - k_space, dm, norder_x, norder_y, norder_z, nodal, v_galilean, dt ) ); + algorithm = std::make_unique<AvgGalileanAlgorithm>( + k_space, dm, norder_x, norder_y, norder_z, nodal, v_galilean, dt); } else { if ((v_galilean[0]==0) && (v_galilean[1]==0) && (v_galilean[2]==0)){ // v_galilean is 0: use standard PSATD algorithm - algorithm = std::unique_ptr<PsatdAlgorithm>( new PsatdAlgorithm( - k_space, dm, norder_x, norder_y, norder_z, nodal, dt, update_with_rho ) ); + algorithm = std::make_unique<PsatdAlgorithm>( + k_space, dm, norder_x, norder_y, norder_z, nodal, dt, update_with_rho); } else { - algorithm = std::unique_ptr<GalileanAlgorithm>( new GalileanAlgorithm( - k_space, dm, norder_x, norder_y, norder_z, nodal, v_galilean, dt, update_with_rho ) ); + algorithm = std::make_unique<GalileanAlgorithm>( + k_space, dm, norder_x, norder_y, norder_z, nodal, v_galilean, dt, update_with_rho); } } } |