Phoxonics  1.0
Object Oriented FDTD Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ElectroMagCells1D.hpp
Go to the documentation of this file.
1 /*
2  * ElectroMagCells1D.hpp
3  *
4  * Created on: Nov 14, 2014
5  * Author: cuda
6  */
7 
8 #ifndef ELECTROMAGCELLS1D_HPP_
9 #define ELECTROMAGCELLS1D_HPP_
10 
11 #include "CellsBase.hpp"
12 #include "CellsFactoryReg.hpp"
13 #include "../cell/ElectroMagCell.hpp"
14 #include "../../../common/common.hpp"
15 #include "../../../visual/visual.hpp"
16 #include <vector>
17 
18 namespace phoxonics {
19 namespace core {
20 
21 class ElectroMagCells1D : public CellsBase {
22 public:
24  virtual ~ElectroMagCells1D();
25 
26  std::vector<ElectroMagCell> cells;
27 
28  // configure cells
29  void configure() override final;
30 
31  // print cells object
32  void print_me() override final;
33 
34  // generate an h5 file from the group of cells
35  void generate_cells_h5(std::string material_property) override final;
36 
37  // generate an h5 file from the group of cells
38  void generate_cells_slice_h5(std::string component,
39  std::shared_ptr<phoxonics::common::Hdf5Base> hdf5_base) override final;
40 
41  // visualize slice cells
42  void visualize_cells_slice(std::string component,
43  phoxonics::visual::GnuplotConfig gp_config) override final;
44 
45 private:
46  // visualization helper
47  Gnuplot gp_;
48  phoxonics::visual::Gnuplot1D gnuplot_1d_;
49 };
50 
51 } /* namespace core */
52 } /* namespace phoxonics */
53 
54 #endif /* ELECTROMAGCELLS1D_HPP_ */
std::vector< ElectroMagCell > cells
Definition: ElectroMagCells1D.hpp:26
void generate_cells_slice_h5(std::string component, std::shared_ptr< phoxonics::common::Hdf5Base > hdf5_base) overridefinal
Definition: ElectroMagCells1D.cpp:60
Definition: CellsBase.hpp:20
void configure() overridefinal
Definition: ElectroMagCells1D.cpp:23
Definition: CommonBase.hpp:14
ElectroMagCells1D()
Definition: ElectroMagCells1D.cpp:15
STL namespace.
void generate_cells_h5(std::string material_property) overridefinal
Definition: ElectroMagCells1D.cpp:36
void visualize_cells_slice(std::string component, phoxonics::visual::GnuplotConfig gp_config) overridefinal
Definition: ElectroMagCells1D.cpp:91
Definition: ElectroMagCells1D.hpp:21
virtual ~ElectroMagCells1D()
Definition: ElectroMagCells1D.cpp:19
void print_me() overridefinal
Definition: ElectroMagCells1D.cpp:30