Common routines for the registry of simulator dependent quantities. More...
#include "libviennashe/src/viennashe_all.hpp"
#include "libviennashe/src/quantity_wrappers.hpp"
#include "libviennashe/include/quantity.h"
#include <cstring>
Go to the source code of this file.
Namespaces | |
namespace | libviennashe |
The internal C++ namespace of the library. | |
namespace | libviennashe::detail |
Functions | |
template<typename DeviceType , typename PotentialQuantityType , typename CarrierQuantityType , typename MobilityModel > | |
void | libviennashe::detail::register_DD_current_density (quan_register_internal ®, DeviceType const &device, PotentialQuantityType const &potential, CarrierQuantityType const &carrier, viennashe::carrier_type_id ctype, MobilityModel const &mobility_model, std::string name) |
Registers a current density from a DD simulator. More... | |
template<typename DeviceType , typename SHEQuanT , typename ConfigT > | |
void | libviennashe::detail::register_SHE_current_density (quan_register_internal ®, DeviceType const &device, SHEQuanT const &shequan, ConfigT const &conf, std::string name) |
Registers a current density from a SHE simulator. More... | |
template<typename DeviceType , typename SHEQuanT , typename ConfigT > | |
void | libviennashe::detail::register_average_velocity (quan_register_internal ®, DeviceType const &device, SHEQuanT const &shequan, ConfigT const &conf, std::string name) |
Registers the average carrier velocity for a SHE simulator. More... | |
template<typename DeviceType , typename SHEQuanT , typename ConfigT > | |
void | libviennashe::detail::register_average_energy (quan_register_internal ®, DeviceType const &device, SHEQuanT const &shequan, ConfigT const &conf, std::string name) |
Registers the average kinetic energy for a SHE simulator. More... | |
template<typename DeviceType , typename SHEQuanT > | |
void | libviennashe::detail::register_average_expansion_order (quan_register_internal ®, DeviceType const &device, SHEQuanT const &shequan, std::string name) |
Registers the average expansion order (SHE simulator) More... | |
template<typename DeviceType , typename PotentialAccessor > | |
void | libviennashe::detail::register_electric_field (quan_register_internal ®, DeviceType const &device, PotentialAccessor const &potential, std::string quantity_name) |
Registers the electric field (vector) for any simulator. More... | |
template<typename DeviceType , typename PotentialAccessor > | |
void | libviennashe::detail::register_electric_flux (quan_register_internal ®, DeviceType const &device, PotentialAccessor const &potential, std::string quantity_name) |
Registers the electric flux density (vector) for any simulator. More... | |
template<typename SimulatorT > | |
void | libviennashe::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 | 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. More... | |
template<typename DOSAccessorT , typename VertexType > | |
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. More... | |
template<typename SimulatorT > | |
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. More... | |
template<typename SimulatorT > | |
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. More... | |
template<typename SimulatorT > | |
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. More... | |
Common routines for the registry of simulator dependent quantities.
Definition in file quantity_register.hpp.