aboutsummaryrefslogtreecommitdiff
path: root/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H
diff options
context:
space:
mode:
Diffstat (limited to 'Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H')
-rw-r--r--Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H23
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H b/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H
index 4bf88077f..1e042da27 100644
--- a/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H
+++ b/Source/FieldSolver/FiniteDifferenceSolver/FiniteDifferenceSolver.H
@@ -37,6 +37,13 @@ class FiniteDifferenceSolver
void EvolveB ( std::array< std::unique_ptr<amrex::MultiFab>, 3 >& Bfield,
std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Efield,
amrex::Real const dt );
+
+ void EvolveE ( std::array< std::unique_ptr<amrex::MultiFab>, 3 >& Efield,
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Bfield,
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Jfield,
+ std::unique_ptr<amrex::MultiFab> const& Ffield,
+ amrex::Real const dt );
+
private:
int m_fdtd_algo;
@@ -63,12 +70,28 @@ class FiniteDifferenceSolver
std::array< std::unique_ptr<amrex::MultiFab>, 3 >& Bfield,
std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Efield,
amrex::Real const dt );
+
+ template< typename T_Algo >
+ void EvolveECylindrical (
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 >& Efield,
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Bfield,
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Jfield,
+ std::unique_ptr<amrex::MultiFab> const& Ffield,
+ amrex::Real const dt );
#else
template< typename T_Algo >
void EvolveBCartesian (
std::array< std::unique_ptr<amrex::MultiFab>, 3 >& Bfield,
std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Efield,
amrex::Real const dt );
+
+ template< typename T_Algo >
+ void EvolveECartesian (
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 >& Efield,
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Bfield,
+ std::array< std::unique_ptr<amrex::MultiFab>, 3 > const& Jfield,
+ std::unique_ptr<amrex::MultiFab> const& Ffield,
+ amrex::Real const dt );
#endif
};