VTK writer class. More...
#include <she_vtk_writer.hpp>
Public Member Functions | |
she_vtk_writer () | |
template<typename DeviceType , typename SHEQuantityT > | |
void | operator() (DeviceType const &device, viennashe::config const &conf, SHEQuantityT const &quan, std::string const &filename) |
Triggers the write process. More... | |
bool | write_segments () const |
void | write_segments (bool b) |
bool | with_debug_quantities () const |
void | with_debug_quantities (bool b) |
Protected Types | |
enum | quantity_ids { VIENNASHE_SHE_VTK_QUAN_INVALID = 0 , VIENNASHE_SHE_VTK_QUAN_GENERALIZED_DISTRIBUTION_FUNCTION , VIENNASHE_SHE_VTK_QUAN_DISTRIBUTION_FUNCTION , VIENNASHE_SHE_VTK_QUAN_DENSITY_OF_STATES , VIENNASHE_SHE_VTK_QUAN_GROUP_VELOCITY , VIENNASHE_SHE_VTK_QUAN_KINETIC_ENERGY , VIENNASHE_SHE_VTK_QUAN_EXPANSION_ORDER , VIENNASHE_SHE_VTK_QUAN_EXPANSION_ADAPTION , VIENNASHE_SHE_VTK_QUAN_UNKNOWN_INDEX , VIENNASHE_SHE_VTK_QUAN_UNKNOWN_MASK , VIENNASHE_SHE_VTK_QUAN_UNKNOWN_NUM } |
typedef SHEDeviceType::mesh_type | MeshType |
typedef viennagrid::result_of::cell_tag< MeshType >::type | CellTag |
typedef viennagrid::result_of::point< MeshType >::type | PointType |
typedef viennagrid::result_of::vertex< MeshType >::type | VertexType |
typedef viennagrid::result_of::cell< MeshType >::type | CellType |
Protected Member Functions | |
template<typename DeviceType , typename SHEQuantity , typename CellType > | |
bool | is_valid (DeviceType const &device, SHEQuantity const &quan, CellType const &cell, std::size_t index_H) |
Checks whether a certain cell in x-space is inside the conduction band or the valence band at total energy index index_H. More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
long | get_cell_num (DeviceType const &device, SegmentType const &segment, SHEQuantity const &quan) |
Determines the number of cells in the output mesh in (x, H)-space. More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
long | get_point_num (DeviceType const &device, SegmentType const &segment, SHEQuantity const &quan) |
Determines the number of vertices of the output mesh in (x, H)-space. More... | |
void | writeHeader (std::ofstream &writer) |
Writes the VTK XML file header for the unstructured grid file format. More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
void | writePoints (DeviceType const &device, SegmentType const &segment, SHEQuantity const &quan, std::ofstream &writer) |
Implementation for writing the vertex coordinates in (x, H)-space. More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
void | writeCells (DeviceType const &device, SegmentType const &segment, SHEQuantity const &quan, std::ofstream &writer) |
Implementation for writing the cells in (x, H)-space (derived from a mesh in x-space) More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
void | writePointData (DeviceType const &device, SegmentType const &segment, SHEQuantity const &quan, std::ofstream &writer, std::string name_in_file="result") |
Implementation for writing the data (that is usually the energy distribution function) to the vertices in (x, H)-space. More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
void | writeCellDataArray (DeviceType const &device, SegmentType const &segment, viennashe::config const &conf, SHEQuantity const &quan, std::ofstream &writer, quantity_ids quan_id) |
Writes data defined on cells to file. More... | |
template<typename DeviceType , typename SegmentType , typename SHEQuantity > | |
void | writeCellData (DeviceType const &device, SegmentType const &segment, viennashe::config const &conf, SHEQuantity const &quan, std::ofstream &writer) |
Writes data defined on cells to file. More... | |
void | writeFooter (std::ofstream &writer) |
template<typename DeviceType , typename SegmentType > | |
bool | segment_is_semiconductor_only (DeviceType const &device, SegmentType const &segment) |
template<typename DeviceType , typename SegmentType , typename SHEQuantityT > | |
void | write_segment (DeviceType const &device, SegmentType const &segment, viennashe::config const &conf, SHEQuantityT const &quan, std::string filename) |
VTK writer class.
Definition at line 109 of file she_vtk_writer.hpp.
|
protected |
Definition at line 115 of file she_vtk_writer.hpp.
|
protected |
Definition at line 119 of file she_vtk_writer.hpp.
|
protected |
Definition at line 113 of file she_vtk_writer.hpp.
|
protected |
Definition at line 117 of file she_vtk_writer.hpp.
|
protected |
Definition at line 118 of file she_vtk_writer.hpp.
|
protected |
Definition at line 400 of file she_vtk_writer.hpp.
|
inline |
Definition at line 590 of file she_vtk_writer.hpp.
|
inlineprotected |
Determines the number of cells in the output mesh in (x, H)-space.
Definition at line 136 of file she_vtk_writer.hpp.
|
inlineprotected |
Determines the number of vertices of the output mesh in (x, H)-space.
Definition at line 198 of file she_vtk_writer.hpp.
|
inlineprotected |
Checks whether a certain cell in x-space is inside the conduction band or the valence band at total energy index index_H.
Definition at line 123 of file she_vtk_writer.hpp.
|
inline |
Triggers the write process.
device | The device (includes a ViennaGrid mesh) on which simulation is carried out |
quan | The SHE quantity in (x, H)-space to be written (typically distribution function, expansion order or error indicator) |
filename | Name of the file to be written to |
conf | The simulator configuration |
Definition at line 600 of file she_vtk_writer.hpp.
|
inlineprotected |
Definition at line 537 of file she_vtk_writer.hpp.
|
inline |
Definition at line 664 of file she_vtk_writer.hpp.
|
inline |
Definition at line 665 of file she_vtk_writer.hpp.
|
inlineprotected |
Definition at line 554 of file she_vtk_writer.hpp.
|
inline |
Definition at line 661 of file she_vtk_writer.hpp.
|
inline |
Definition at line 662 of file she_vtk_writer.hpp.
|
inlineprotected |
Writes data defined on cells to file.
Definition at line 506 of file she_vtk_writer.hpp.
|
inlineprotected |
Writes data defined on cells to file.
Definition at line 416 of file she_vtk_writer.hpp.
|
inlineprotected |
Implementation for writing the cells in (x, H)-space (derived from a mesh in x-space)
Definition at line 271 of file she_vtk_writer.hpp.
|
inlineprotected |
Definition at line 530 of file she_vtk_writer.hpp.
|
inlineprotected |
Writes the VTK XML file header for the unstructured grid file format.
Definition at line 227 of file she_vtk_writer.hpp.
|
inlineprotected |
Implementation for writing the data (that is usually the energy distribution function) to the vertices in (x, H)-space.
Definition at line 369 of file she_vtk_writer.hpp.
|
inlineprotected |
Implementation for writing the vertex coordinates in (x, H)-space.
Definition at line 236 of file she_vtk_writer.hpp.