ViennaSHE 1.3.0
Free open-source semiconductor device simulator using spherical harmonics expansions techniques.
libviennashe::detail Namespace Reference

Functions

template<typename DeviceType , typename PotentialQuantityType , typename CarrierQuantityType , typename MobilityModel >
void register_DD_current_density (quan_register_internal &reg, 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 register_SHE_current_density (quan_register_internal &reg, 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 register_average_velocity (quan_register_internal &reg, 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 register_average_energy (quan_register_internal &reg, 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 register_average_expansion_order (quan_register_internal &reg, DeviceType const &device, SHEQuanT const &shequan, std::string name)
 Registers the average expansion order (SHE simulator) More...
 
template<typename DeviceType , typename PotentialAccessor >
void register_electric_field (quan_register_internal &reg, 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 register_electric_flux (quan_register_internal &reg, DeviceType const &device, PotentialAccessor const &potential, std::string quantity_name)
 Registers the electric flux density (vector) for any simulator. More...
 

Function Documentation

◆ register_average_energy()

template<typename DeviceType , typename SHEQuanT , typename ConfigT >
void libviennashe::detail::register_average_energy ( quan_register_internal reg,
DeviceType const &  device,
SHEQuanT const &  shequan,
ConfigT const &  conf,
std::string  name 
)

Registers the average kinetic energy for a SHE simulator.

Parameters
regThe internal quantity register
deviceThe device
shequanAn accessor to the SHE quantities
confThe simulator configuration
nameA unique name for the new quantity

Definition at line 126 of file quantity_register.hpp.

◆ register_average_expansion_order()

template<typename DeviceType , typename SHEQuanT >
void libviennashe::detail::register_average_expansion_order ( quan_register_internal reg,
DeviceType const &  device,
SHEQuanT const &  shequan,
std::string  name 
)

Registers the average expansion order (SHE simulator)

Parameters
regThe internal quantity register
deviceThe device
shequanAn accessor to the SHE quantities
nameA unique name for the new quantity

Definition at line 149 of file quantity_register.hpp.

◆ register_average_velocity()

template<typename DeviceType , typename SHEQuanT , typename ConfigT >
void libviennashe::detail::register_average_velocity ( quan_register_internal reg,
DeviceType const &  device,
SHEQuanT const &  shequan,
ConfigT const &  conf,
std::string  name 
)

Registers the average carrier velocity for a SHE simulator.

Parameters
regThe internal quantity register
deviceThe device
shequanAn accessor to the SHE quantities
confThe configuration of the simulator used for computing the quantity shequan
nameA unique name for the new quantity

Definition at line 103 of file quantity_register.hpp.

◆ register_DD_current_density()

template<typename DeviceType , typename PotentialQuantityType , typename CarrierQuantityType , typename MobilityModel >
void libviennashe::detail::register_DD_current_density ( quan_register_internal reg,
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.

Parameters
regThe internal quantity register
deviceThe device
potentialAn accessor to the potential
carrierAn accessor to the carrier density (n or p)
ctypeThe carrier type. Must match the carrier density carrier type
mobility_modelA suitable mobility model (DD mobility)
nameA unique name for the new quantity

Definition at line 53 of file quantity_register.hpp.

◆ register_electric_field()

template<typename DeviceType , typename PotentialAccessor >
void libviennashe::detail::register_electric_field ( quan_register_internal reg,
DeviceType const &  device,
PotentialAccessor const &  potential,
std::string  quantity_name 
)

Registers the electric field (vector) for any simulator.

Parameters
regThe internal quantity register
deviceThe device
potentialAn accessor to the electrostatic potential
quantity_nameA unique name for the new quantity

Definition at line 174 of file quantity_register.hpp.

◆ register_electric_flux()

template<typename DeviceType , typename PotentialAccessor >
void libviennashe::detail::register_electric_flux ( quan_register_internal reg,
DeviceType const &  device,
PotentialAccessor const &  potential,
std::string  quantity_name 
)

Registers the electric flux density (vector) for any simulator.

Parameters
regThe internal quantity register
deviceThe device
potentialAn accessor to the elec. potential
quantity_nameA unique name for the new quantity

Definition at line 194 of file quantity_register.hpp.

◆ register_SHE_current_density()

template<typename DeviceType , typename SHEQuanT , typename ConfigT >
void libviennashe::detail::register_SHE_current_density ( quan_register_internal reg,
DeviceType const &  device,
SHEQuanT const &  shequan,
ConfigT const &  conf,
std::string  name 
)

Registers a current density from a SHE simulator.

Parameters
regThe internal quantity register
deviceThe device
shequanAn accessor to the SHE quantities
confThe simulator configuration
nameA unique name for the new quantity

Definition at line 79 of file quantity_register.hpp.