ViennaSHE 1.3.0
Free open-source semiconductor device simulator using spherical harmonics expansions techniques.
mobility.hpp
Go to the documentation of this file.
1#ifndef VIENNASHE_MODELS_MOBILITY_HPP
2#define VIENNASHE_MODELS_MOBILITY_HPP
3
4/* ============================================================================
5 Copyright (c) 2011-2022, Institute for Microelectronics,
6 Institute for Analysis and Scientific Computing,
7 TU Wien.
8
9 -----------------
10 ViennaSHE - The Vienna Spherical Harmonics Expansion Boltzmann Solver
11 -----------------
12
13 http://viennashe.sourceforge.net/
14
15 License: MIT (X11), see file LICENSE in the base directory
16=============================================================================== */
17
18// viennashe
19#include "viennashe/forwards.h"
20
23
24namespace viennashe
25{
26 namespace models
27 {
29 namespace result_of
30 {
32 template < typename DeviceType >
34 {
36 };
37
38 } // result_of
39
46 template < typename DeviceType >
48 create_mobility_model(DeviceType const & device,
50 {
52 }
53
60 template < typename DeviceType >
62 {
64 params.mu0 = mu;
65 params.field.enabled = false;
66 params.lattice.enabled = false;
67 params.impurity.enabled = false;
68 params.surface.enabled = false;
69
71 }
72
73
74 } // models
75} // viennashe
76
77#endif /* VIENNASHE_MODELS_MOBILITY_HPP */
78
Defines the physical properties of a device, e.g. doping. This is the implementation for 2d and highe...
Definition: device.hpp:818
The main mobility model. Contains submodels for lattice, impurity, field and surface scattering relat...
Contains forward declarations and definition of small classes that must be defined at an early stage.
Contains basic mobility models for lattice, impurity, field and surface mobility changes.
Contains PODs for the mobility parameters of the mobility models.
viennashe::models::dd::mobility< DeviceType > create_mobility_model(DeviceType const &device, viennashe::models::dd::mobility_paramters const &params)
Creates a new mobility model using the given parameters.
Definition: mobility.hpp:48
viennashe::models::dd::mobility< DeviceType > create_constant_mobility_model(DeviceType const &device, double mu)
Returns a mobility model, which always yields the same mobility.
Definition: mobility.hpp:61
The main ViennaSHE namespace. All functionality resides inside this namespace.
Definition: accessors.hpp:40
The combined POD for the mobility parameters.
mobility_detail::field_dependence field
mobility_detail::surface_scattering surface
mobility_detail::lattice_scattering lattice
mobility_detail::impurity_scattering impurity
Compiletime mobility-type getter.
Definition: mobility.hpp:34
viennashe::models::dd::mobility< DeviceType > type
Definition: mobility.hpp:35