Phoxonics  1.0
Object Oriented FDTD Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
phoxonics::core::EngineBase Class Reference
Inheritance diagram for phoxonics::core::EngineBase:
Inheritance graph
[legend]
Collaboration diagram for phoxonics::core::EngineBase:
Collaboration graph
[legend]

Public Member Functions

 EngineBase ()
 
virtual ~EngineBase ()
 
virtual void configure () override
 
virtual void print_me () override
 
virtual void start (std::shared_ptr< GridBase > grid_base, std::vector< std::shared_ptr< SourceBase >> sources_base, std::vector< std::shared_ptr< DetectorBase >> detectors_base, std::shared_ptr< PmlBase > pml_base)
 
 EngineBase ()
 
virtual ~EngineBase ()
 
virtual void configure () override
 
virtual void print_me () override
 
virtual void start (std::shared_ptr< GridBase > grid_base, std::vector< std::shared_ptr< SourceBase >> sources_base, std::vector< std::shared_ptr< DetectorBase >> detectors_base, std::shared_ptr< PmlBase > pml_base)
 
- Public Member Functions inherited from phoxonics::core::SimulationItemBase
virtual void configure (std::shared_ptr< ConfigBase > config_base)
 
virtual void configure (std::shared_ptr< ConfigBase > config_base)
 

Public Attributes

bool mpi_enabled { false }
 
bool cuda_enabled { false }
 
std::string h5_geometry_file { "" }
 
std::string h5_data_file { "" }
 
std::string h5_geom_dataset_name { "" }
 
std::string h5_data_dataset_name { "" }
 
bool real_time_visualization { false }
 
std::string visualization_commands { "" }
 
bool generate_animation { false }
 
- Public Attributes inherited from phoxonics::core::SimulationItemBase
std::shared_ptr< SimulationConfigsim_config { nullptr }
 

Protected Member Functions

virtual void process ()
 
virtual void update_field (std::string component)
 
virtual void apply_sources (double time)
 
virtual void apply_pml ()
 
virtual void apply_detectors (double time)
 
virtual void init_hdf5_files ()
 
virtual void record_hdf5_slice ()
 
virtual void visualize_real_time ()
 
virtual void calculate_detectors_amp_phase ()
 
virtual void record_hdf5_detectors ()
 
virtual void generate_hdf5_shell (bool execute_shell)
 
std::string h5_component_data_file (std::string component)
 
virtual void process ()
 
virtual void update_field (std::string component)
 
virtual void apply_sources (double time)
 
virtual void apply_pml ()
 
virtual void apply_detectors (double time)
 
virtual void init_hdf5_files ()
 
virtual void record_hdf5_slice ()
 
virtual void visualize_real_time ()
 
virtual void calculate_detectors_amp_phase ()
 
virtual void record_hdf5_detectors ()
 
virtual void generate_hdf5_shell (bool execute_shell)
 
std::string h5_component_data_file (std::string component)
 
- Protected Member Functions inherited from phoxonics::core::SimulationItemBase
 SimulationItemBase ()
 
virtual ~SimulationItemBase ()
 
 SimulationItemBase ()
 
virtual ~SimulationItemBase ()
 

Protected Attributes

std::shared_ptr< GridBasegrid_base_
 
std::vector< std::shared_ptr
< SourceBase > > 
sources_base_
 
std::vector< std::shared_ptr
< DetectorBase > > 
detectors_base_
 
std::shared_ptr< PmlBasepml_base_
 
- Protected Attributes inherited from phoxonics::core::SimulationItemBase
phoxonics::common::Logger log_
 
ConfigParamHelper config_param_heleper_
 
EmConstants em_constants_
 
phoxonics::common::Folder fld_
 
phoxonics::common::Utilities utils_
 
phoxonics::common::Strings strs_
 
phoxonics::visual::Hdf5Renderer hdf5_renderer_
 
phoxonics::common::Config cfg_
 

Additional Inherited Members

- Protected Types inherited from phoxonics::core::SimulationItemBase
typedef
phoxonics::common::Formatter 
fmt_
 
typedef
phoxonics::common::Formatter 
fmt_
 

Constructor & Destructor Documentation

phoxonics::core::EngineBase::EngineBase ( )
explicit
phoxonics::core::EngineBase::~EngineBase ( )
virtual
phoxonics::core::EngineBase::EngineBase ( )
explicit
virtual phoxonics::core::EngineBase::~EngineBase ( )
virtual

Member Function Documentation

void phoxonics::core::EngineBase::apply_detectors ( double  time)
protectedvirtual
virtual void phoxonics::core::EngineBase::apply_detectors ( double  time)
protectedvirtual
void phoxonics::core::EngineBase::apply_pml ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::apply_pml ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::apply_sources ( double  time)
protectedvirtual
void phoxonics::core::EngineBase::apply_sources ( double  time)
protectedvirtual
void phoxonics::core::EngineBase::calculate_detectors_amp_phase ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::calculate_detectors_amp_phase ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::configure ( )
overridevirtual
void phoxonics::core::EngineBase::configure ( )
overridevirtual
virtual void phoxonics::core::EngineBase::generate_hdf5_shell ( bool  execute_shell)
protectedvirtual
void phoxonics::core::EngineBase::generate_hdf5_shell ( bool  execute_shell)
protectedvirtual
std::string phoxonics::core::EngineBase::h5_component_data_file ( std::string  component)
protected
std::string phoxonics::core::EngineBase::h5_component_data_file ( std::string  component)
protected
void phoxonics::core::EngineBase::init_hdf5_files ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::init_hdf5_files ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::print_me ( )
overridevirtual
void phoxonics::core::EngineBase::print_me ( )
overridevirtual
virtual void phoxonics::core::EngineBase::process ( )
protectedvirtual
void phoxonics::core::EngineBase::process ( )
protectedvirtual
void phoxonics::core::EngineBase::record_hdf5_detectors ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::record_hdf5_detectors ( )
protectedvirtual
void phoxonics::core::EngineBase::record_hdf5_slice ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::record_hdf5_slice ( )
protectedvirtual
void phoxonics::core::EngineBase::start ( std::shared_ptr< GridBase grid_base,
std::vector< std::shared_ptr< SourceBase >>  sources_base,
std::vector< std::shared_ptr< DetectorBase >>  detectors_base,
std::shared_ptr< PmlBase pml_base 
)
virtual
virtual void phoxonics::core::EngineBase::start ( std::shared_ptr< GridBase grid_base,
std::vector< std::shared_ptr< SourceBase >>  sources_base,
std::vector< std::shared_ptr< DetectorBase >>  detectors_base,
std::shared_ptr< PmlBase pml_base 
)
virtual
void phoxonics::core::EngineBase::update_field ( std::string  component)
protectedvirtual
virtual void phoxonics::core::EngineBase::update_field ( std::string  component)
protectedvirtual
void phoxonics::core::EngineBase::visualize_real_time ( )
protectedvirtual
virtual void phoxonics::core::EngineBase::visualize_real_time ( )
protectedvirtual

Member Data Documentation

bool phoxonics::core::EngineBase::cuda_enabled { false }

Referenced by configure(), and print_me().

std::vector< std::shared_ptr< DetectorBase > > phoxonics::core::EngineBase::detectors_base_
protected
bool phoxonics::core::EngineBase::generate_animation { false }
std::shared_ptr< GridBase > phoxonics::core::EngineBase::grid_base_
protected
std::string phoxonics::core::EngineBase::h5_data_dataset_name { "" }
std::string phoxonics::core::EngineBase::h5_data_file { "" }
std::string phoxonics::core::EngineBase::h5_geom_dataset_name { "" }

Referenced by configure(), and print_me().

std::string phoxonics::core::EngineBase::h5_geometry_file { "" }

Referenced by configure(), and print_me().

bool phoxonics::core::EngineBase::mpi_enabled { false }

Referenced by configure(), and print_me().

std::shared_ptr< PmlBase > phoxonics::core::EngineBase::pml_base_
protected
bool phoxonics::core::EngineBase::real_time_visualization { false }
std::vector< std::shared_ptr< SourceBase > > phoxonics::core::EngineBase::sources_base_
protected
std::string phoxonics::core::EngineBase::visualization_commands { "" }