The internal C++ namespace of the library. More...
Namespaces | |
namespace | detail |
namespace | quantity |
Contains everything quantity related. | |
Classes | |
class | array_to_accessor |
Maps a C-array to an element based accessor. Uses element.id() as an index to the C-array. More... | |
struct | meshtype |
The mesh types supported by libviennashe. More... | |
struct | quan_register_internal |
C++ to C wrapper of the quantity registry. More... | |
Functions | |
template<typename SimulatorT > | |
void | register_quans (SimulatorT const &sim, quan_register_internal ®) |
Main quantity regsiter function. Add your simulator quantities here. More... | |
template<typename SHEQuanT , typename DFWrapperT , typename CellType > | |
void | she_fill_edf_at_cell (SHEQuanT const &quan, DFWrapperT const &edfacc, CellType const &cell, double **ekin, double **edf, viennashe_index_type *len) |
Fills the given C-arrays with the EDF at a vertex. More... | |
template<typename DOSAccessorT , typename VertexType > | |
void | she_fill_dos_at_cell (viennashe_index_type num, double deltaeps, DOSAccessorT const &dosacc, VertexType const &vt, double **ekin, double **dos, viennashe_index_type *len) |
Fills the given C-arrays ekin and dos with the DOS at a vertex. More... | |
template<typename SimulatorT > | |
void | she_fill_edf (SimulatorT const &sim, viennashe::carrier_type_id ctype, double **ekin, double **edf, viennashe_index_type *len) |
Fills the given C-arrays with the complete EDF. More... | |
template<typename SimulatorT > | |
void | she_fill_dos (SimulatorT const &sim, viennashe::carrier_type_id ctype, double **ekin, double **dos, viennashe_index_type *len) |
Fills the given C-arrays ekin and dos with the DOS for every vertex. More... | |
template<typename SimulatorT > | |
void | she_fill_group_velocity (SimulatorT const &sim, viennashe::carrier_type_id ctype, double **ekin, double **vg, viennashe_index_type *len) |
Fills the given C-arrays ekin and vg with the group velocity for every vertex. More... | |
The internal C++ namespace of the library.
void libviennashe::register_quans | ( | SimulatorT const & | sim, |
quan_register_internal & | reg | ||
) |
Main quantity regsiter function. Add your simulator quantities here.
sim | The simulator from which quantities can be obtained |
reg | The internal quantity registry |
Definition at line 215 of file quantity_register.hpp.
void libviennashe::she_fill_dos | ( | SimulatorT const & | sim, |
viennashe::carrier_type_id | ctype, | ||
double ** | ekin, | ||
double ** | dos, | ||
viennashe_index_type * | len | ||
) |
Fills the given C-arrays ekin and dos with the DOS for every vertex.
sim | The SHE simulator (run will NOT be called!) |
ctype | The carrier type for which the EDF shall be returned |
ekin | Return value: single array. Will hold the energy values |
dos | Return value: single array. Will hold the DOS values |
len | Return value. Will hold the length of ekin and dos |
Definition at line 453 of file quantity_register.hpp.
void libviennashe::she_fill_dos_at_cell | ( | viennashe_index_type | num, |
double | deltaeps, | ||
DOSAccessorT const & | dosacc, | ||
VertexType const & | vt, | ||
double ** | ekin, | ||
double ** | dos, | ||
viennashe_index_type * | len | ||
) |
Fills the given C-arrays ekin and dos with the DOS at a vertex.
num | The number of energies for which to fill |
deltaeps | The delta in kinetic energy |
dosacc | A C++ accessor to the DOS |
vt | The vertex at which to extract the DOS |
ekin | Return value: single array. Will hold the energy values |
dos | Return value: single array. Will hold the DOS values |
len | Return value. Will hold the length of ekin and dos |
Definition at line 392 of file quantity_register.hpp.
void libviennashe::she_fill_edf | ( | SimulatorT const & | sim, |
viennashe::carrier_type_id | ctype, | ||
double ** | ekin, | ||
double ** | edf, | ||
viennashe_index_type * | len | ||
) |
Fills the given C-arrays with the complete EDF.
sim | The SHE simulator (run will NOT be called!) |
ctype | The carrier type for which the EDF shall be returned |
ekin | Return value: single array. Will hold the kinetic energies |
edf | Return value: single array. Will hold the EDF values |
len | Return value: single value. Will hold the length of each array |
Definition at line 413 of file quantity_register.hpp.
void libviennashe::she_fill_edf_at_cell | ( | SHEQuanT const & | quan, |
DFWrapperT const & | edfacc, | ||
CellType const & | cell, | ||
double ** | ekin, | ||
double ** | edf, | ||
viennashe_index_type * | len | ||
) |
Fills the given C-arrays with the EDF at a vertex.
quan | The SHE quantities |
edfacc | A energy distribution function wrapper for quan |
cell | The cell for which to extract the EDF |
ekin | Return value: single array. Will hold the kinetic energies |
edf | Return value: single array. Will hold the EDF values |
len | Return value: single value. Will hold the length of each array |
Definition at line 367 of file quantity_register.hpp.
void libviennashe::she_fill_group_velocity | ( | SimulatorT const & | sim, |
viennashe::carrier_type_id | ctype, | ||
double ** | ekin, | ||
double ** | vg, | ||
viennashe_index_type * | len | ||
) |
Fills the given C-arrays ekin and vg with the group velocity for every vertex.
sim | The SHE simulator (run will NOT be called!) |
ctype | The carrier type for which the EDF shall be returned |
ekin | Return value: single array. Will hold the energy values |
vg | Return value: single array. Will hold the group velocity values |
len | Return value. Will hold the length of ekin and dos |
Definition at line 483 of file quantity_register.hpp.