Phoxonics
1.0
Object Oriented FDTD Software
|
Public Member Functions | |
ElectroMagnetic2D () | |
virtual | ~ElectroMagnetic2D () |
void | configure () overridefinal |
void | print_me () overridefinal |
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) overridefinal |
void | process () overridefinal |
void | update_field (std::string component) overridefinal |
void | apply_sources (double time) overridefinal |
void | apply_detectors (double time) overridefinal |
void | init_hdf5_files () overridefinal |
void | record_hdf5_slice () overridefinal |
void | visualize_real_time () overridefinal |
void | calculate_detectors_amp_phase () overridefinal |
void | record_hdf5_detectors () overridefinal |
void | generate_hdf5_shell (bool execute_shell) overridefinal |
![]() | |
EngineBase () | |
virtual | ~EngineBase () |
EngineBase () | |
virtual | ~EngineBase () |
![]() | |
virtual void | configure (std::shared_ptr< ConfigBase > config_base) |
virtual void | configure (std::shared_ptr< ConfigBase > config_base) |
Public Attributes | |
int | periods { 0 } |
int | use_threads { 0 } |
std::string | component1 { "" } |
std::string | component2 { "" } |
std::string | component3 { "" } |
std::string | propagation_direction { "" } |
std::shared_ptr < ElectroMagCells2D > | em_cells_2d_ |
![]() | |
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 } |
![]() | |
std::shared_ptr< SimulationConfig > | sim_config { nullptr } |
|
explicit |
|
virtual |
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::core::EngineBase::detectors_base_, phoxonics::core::EngineBase::grid_base_, phoxonics::core::SimulationItemBase::log_, and phoxonics::common::Logger::log_trac().
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::core::EngineBase::grid_base_, phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_trac(), and phoxonics::core::EngineBase::sources_base_.
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::core::EngineBase::detectors_base_, phoxonics::core::SimulationItemBase::log_, and phoxonics::common::Logger::log_trac().
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References component1, component2, component3, phoxonics::core::SimulationItemBase::config_param_heleper_, phoxonics::core::EngineBase::configure(), phoxonics::core::ConfigParamHelper::get_config_param_value(), phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_trac(), periods, propagation_direction, phoxonics::core::SimulationItemBase::sim_config, and use_threads.
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::visual::Hdf5Renderer::generate_hdf5_sh(), phoxonics::core::SimulationItemBase::hdf5_renderer_, phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_info(), phoxonics::common::Logger::log_trac(), and phoxonics::core::SimulationItemBase::sim_config.
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::common::ArrSizeHelper::arr_dim_x, phoxonics::common::ArrSizeHelper::arr_dim_y, phoxonics::core::EngineBase::h5_data_dataset_name, phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_trac(), and phoxonics::core::SimulationItemBase::sim_config.
Referenced by start().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References component1, component2, component3, phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_info(), phoxonics::common::Logger::log_trac(), periods, phoxonics::core::EngineBase::print_me(), propagation_direction, and use_threads.
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References apply_detectors(), apply_sources(), calculate_detectors_amp_phase(), component1, component2, component3, phoxonics::core::EngineBase::generate_animation, generate_hdf5_shell(), phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_info(), phoxonics::common::Logger::log_trac(), periods, record_hdf5_detectors(), record_hdf5_slice(), update_field(), and visualize_real_time().
Referenced by start().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::core::EngineBase::detectors_base_, phoxonics::core::SimulationItemBase::log_, and phoxonics::common::Logger::log_trac().
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References component1, component2, component3, phoxonics::core::EngineBase::grid_base_, phoxonics::core::SimulationItemBase::log_, and phoxonics::common::Logger::log_trac().
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References init_hdf5_files(), phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_trac(), process(), and phoxonics::core::EngineBase::start().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::core::EmConstants::courant, phoxonics::core::ElectroMagCell::dz, em_cells_2d_, phoxonics::core::SimulationItemBase::em_constants_, phoxonics::core::ElectroMagCell::ez, phoxonics::core::EngineBase::grid_base_, phoxonics::core::ElectroMagCell::hx, phoxonics::core::ElectroMagCell::hy, phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_trac(), phoxonics::core::ElectroMagCell::material_type, and phoxonics::core::SimulationItemBase::sim_config.
Referenced by process().
|
finaloverridevirtual |
Reimplemented from phoxonics::core::EngineBase.
References phoxonics::visual::GnuplotConfig::additional_commands, component1, phoxonics::core::EngineBase::grid_base_, phoxonics::core::SimulationItemBase::log_, phoxonics::common::Logger::log_trac(), phoxonics::core::EngineBase::real_time_visualization, phoxonics::core::SimulationItemBase::sim_config, and phoxonics::core::EngineBase::visualization_commands.
Referenced by process().
std::string phoxonics::core::ElectroMagnetic2D::component1 { "" } |
Referenced by configure(), print_me(), process(), record_hdf5_slice(), and visualize_real_time().
std::string phoxonics::core::ElectroMagnetic2D::component2 { "" } |
Referenced by configure(), print_me(), process(), and record_hdf5_slice().
std::string phoxonics::core::ElectroMagnetic2D::component3 { "" } |
Referenced by configure(), print_me(), process(), and record_hdf5_slice().
std::shared_ptr<ElectroMagCells2D> phoxonics::core::ElectroMagnetic2D::em_cells_2d_ |
Referenced by update_field().
int phoxonics::core::ElectroMagnetic2D::periods { 0 } |
Referenced by configure(), print_me(), and process().
std::string phoxonics::core::ElectroMagnetic2D::propagation_direction { "" } |
Referenced by configure(), and print_me().
int phoxonics::core::ElectroMagnetic2D::use_threads { 0 } |
Referenced by configure(), and print_me().