8 #ifndef ELECTROMAGNETIC1D_HPP_
9 #define ELECTROMAGNETIC1D_HPP_
11 #include "../../../common/common.hpp"
14 #include "../cells/ElectroMagCells1D.hpp"
15 #include "../cell/ElectroMagCell.hpp"
43 std::shared_ptr<
PmlBase> pml_base) override final;
void start(std::shared_ptr< GridBase > grid_base, std::vector< std::shared_ptr< SourceBase >> sources_base, std::vector< std::shared_ptr< DetectorBase >> fluxes_base, std::shared_ptr< PmlBase > pml_base) overridefinal
Definition: ElectroMagnetic1D.cpp:91
void apply_sources(double time) overridefinal
Definition: ElectroMagnetic1D.cpp:163
void process() overridefinal
Definition: ElectroMagnetic1D.cpp:99
Definition: CommonBase.hpp:14
int use_threads
Definition: ElectroMagnetic1D.hpp:27
void configure() overridefinal
Definition: ElectroMagnetic1D.cpp:23
std::string component2
Definition: ElectroMagnetic1D.hpp:29
int periods
Definition: ElectroMagnetic1D.hpp:26
void apply_detectors(double time) overridefinal
Definition: ElectroMagnetic1D.cpp:170
ElectroMagnetic1D()
Definition: ElectroMagnetic1D.cpp:15
virtual ~ElectroMagnetic1D()
Definition: ElectroMagnetic1D.cpp:19
Definition: PmlBase.hpp:22
Definition: DetectorBase.hpp:22
Definition: EngineBase.hpp:26
Definition: GridBase.hpp:26
std::shared_ptr< ElectroMagCells1D > em_cells_1d_
Definition: ElectroMagnetic1D.hpp:31
std::string propagation_direction
Definition: ElectroMagnetic1D.hpp:30
void apply_pml() overridefinal
Definition: ElectroMagnetic1D.cpp:175
std::string component1
Definition: ElectroMagnetic1D.hpp:28
void update_field(std::string component) overridefinal
Definition: ElectroMagnetic1D.cpp:135
void print_me() overridefinal
Definition: ElectroMagnetic1D.cpp:84
Definition: ElectroMagnetic1D.hpp:21
Definition: SourceBase.hpp:22