ViennaSHE 1.3.0
Free open-source semiconductor device simulator using spherical harmonics expansions techniques.
viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT > Class Template Reference

A convenience wrapper for evaluating the generalized distribution function (i.e. f * Z, with density of states Z). Note: Evaluations are quite costly. If you wish to evaluate integrals over the distribution function, you should definitely consider the use of SHE expansion coefficients as well as the orthogonality relations for spherical harmonics. More...

#include <df_wrappers.hpp>

Public Types

typedef viennashe::config::dispersion_relation_type dispersion_relation_type
 
typedef SHEQuantityT she_quantity_type
 

Public Member Functions

 generalized_df_wrapper (DeviceType const &device, viennashe::config const &conf, SHEQuantityT const &quan)
 
double operator() (CellType const &cell, double kinetic_energy, double theta, double phi, std::size_t index_H_guess=0) const
 Returns the energy distribution function for the respective carrier in one valley on a vertex: More...
 
SHEQuantityT const & quan () const
 
dispersion_relation_type const & dispersion_relation () const
 

Detailed Description

template<typename DeviceType, typename SHEQuantityT>
class viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >

A convenience wrapper for evaluating the generalized distribution function (i.e. f * Z, with density of states Z). Note: Evaluations are quite costly. If you wish to evaluate integrals over the distribution function, you should definitely consider the use of SHE expansion coefficients as well as the orthogonality relations for spherical harmonics.

Template Parameters
DeviceTypeThe device type on which to evaluate the distribution function
VectorTypeVector type used for the SHE result vector.

Definition at line 456 of file df_wrappers.hpp.

Member Typedef Documentation

◆ dispersion_relation_type

template<typename DeviceType , typename SHEQuantityT >
typedef viennashe::config::dispersion_relation_type viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >::dispersion_relation_type

Definition at line 468 of file df_wrappers.hpp.

◆ she_quantity_type

template<typename DeviceType , typename SHEQuantityT >
typedef SHEQuantityT viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >::she_quantity_type

Definition at line 469 of file df_wrappers.hpp.

Constructor & Destructor Documentation

◆ generalized_df_wrapper()

template<typename DeviceType , typename SHEQuantityT >
viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >::generalized_df_wrapper ( DeviceType const &  device,
viennashe::config const &  conf,
SHEQuantityT const &  quan 
)
inline

Definition at line 471 of file df_wrappers.hpp.

Member Function Documentation

◆ dispersion_relation()

template<typename DeviceType , typename SHEQuantityT >
dispersion_relation_type const & viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >::dispersion_relation ( ) const
inline

Definition at line 494 of file df_wrappers.hpp.

◆ operator()()

template<typename DeviceType , typename SHEQuantityT >
double viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >::operator() ( CellType const &  cell,
double  kinetic_energy,
double  theta,
double  phi,
std::size_t  index_H_guess = 0 
) const
inline

Returns the energy distribution function for the respective carrier in one valley on a vertex:

Parameters
cellThe cell from which the SHE coefficient should be returned
kinetic_energyKinetic energy
thetaPolar angle
phiAzimuthal angle
index_H_guessThe total energy index for starting the search for the best total energy index available. Allows to speed-up evaluation considerably.

Definition at line 483 of file df_wrappers.hpp.

◆ quan()

template<typename DeviceType , typename SHEQuantityT >
SHEQuantityT const & viennashe::she::generalized_df_wrapper< DeviceType, SHEQuantityT >::quan ( ) const
inline

Definition at line 492 of file df_wrappers.hpp.


The documentation for this class was generated from the following file: