Neumann Evaluator for QCAD Poisson Problem. More...
#include <QCAD_PoissonNeumann.hpp>
Public Types | |
typedef EvalT::ScalarT | ScalarT |
Public Member Functions | |
PoissonNeumann (Teuchos::ParameterList &p) | |
void | evaluateFields (typename Traits::EvalData d) |
virtual ScalarT & | getValue (const std::string &n) |
Protected Member Functions | |
ScalarT | inverseFDIntOneHalf (const ScalarT x) |
compute the inverse of the Fermi-Dirac integral of 1/2 order | |
ScalarT | potentialForMBComplIon (const ScalarT &Nc, const ScalarT &Nv, const ScalarT &Eg, const double &Chi, const std::string &dopType, const double &dopingConc) |
built-in potential for MB statistics and complete ionization | |
ScalarT | potentialForMBIncomplIon (const ScalarT &Nc, const ScalarT &Nv, const ScalarT &Eg, const double &Chi, const std::string &dopType, const double &dopingConc, const double &dopantActE) |
built-in potential for MB statistics and incomplete ionization | |
ScalarT | potentialForFDComplIon (const ScalarT &Nc, const ScalarT &Nv, const ScalarT &Eg, const double &Chi, const std::string &dopType, const double &dopingConc) |
built-in potential for FD statistics and complete ionization | |
ScalarT | potentialForZeroKFDComplIon (const ScalarT &Nc, const ScalarT &Nv, const ScalarT &Eg, const double &Chi, const std::string &dopType, const double &dopingConc) |
built-in potential for zero-K FD statistics and complete ionization | |
Private Attributes | |
ScalarT | user_value |
std::string | material |
std::string | ebName |
std::string | carrierStatistics |
std::string | incompIonization |
double | dopingDonor |
double | dopingAcceptor |
double | donorActE |
double | acceptorActE |
ScalarT | temperature |
ScalarT | kbT |
ScalarT | V0 |
ScalarT | qPhiRef |
double | energy_unit_in_eV |
Constant energy reference for heterogeneous structures,[eV]. | |
Teuchos::RCP < QCAD::MaterialDatabase > | materialDB |
Material database. |
Neumann Evaluator for QCAD Poisson Problem.
Definition at line 30 of file QCAD_PoissonNeumann.hpp.
typedef EvalT::ScalarT QCAD::PoissonNeumann< EvalT, Traits >::ScalarT |
Definition at line 34 of file QCAD_PoissonNeumann.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::PoissonNeumann | ( | Teuchos::ParameterList & | p | ) |
Definition at line 17 of file QCAD_PoissonNeumann_Def.hpp.
void QCAD::PoissonNeumann< EvalT, Traits >::evaluateFields | ( | typename Traits::EvalData | d | ) |
Contacts on insulator or metal
Ohmic contacts on semiconductor (charge neutrality and equilibrium )
Otherwise, just use the user_value converted to the units of the solution.
Register bcValue
Call base class evaluateFields, which sets relevant nodes using value member
Definition at line 93 of file QCAD_PoissonNeumann_Def.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::ScalarT & QCAD::PoissonNeumann< EvalT, Traits >::getValue | ( | const std::string & | n | ) | [virtual] |
Definition at line 430 of file QCAD_PoissonNeumann_Def.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::ScalarT QCAD::PoissonNeumann< EvalT, Traits >::inverseFDIntOneHalf | ( | const ScalarT | x | ) | [inline, protected] |
compute the inverse of the Fermi-Dirac integral of 1/2 order
Definition at line 224 of file QCAD_PoissonNeumann_Def.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::ScalarT QCAD::PoissonNeumann< EvalT, Traits >::potentialForMBComplIon | ( | const ScalarT & | Nc, | |
const ScalarT & | Nv, | |||
const ScalarT & | Eg, | |||
const double & | Chi, | |||
const std::string & | dopType, | |||
const double & | dopingConc | |||
) | [protected] |
built-in potential for MB statistics and complete ionization
Definition at line 250 of file QCAD_PoissonNeumann_Def.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::ScalarT QCAD::PoissonNeumann< EvalT, Traits >::potentialForMBIncomplIon | ( | const ScalarT & | Nc, | |
const ScalarT & | Nv, | |||
const ScalarT & | Eg, | |||
const double & | Chi, | |||
const std::string & | dopType, | |||
const double & | dopingConc, | |||
const double & | dopantActE | |||
) | [protected] |
built-in potential for MB statistics and incomplete ionization
Definition at line 304 of file QCAD_PoissonNeumann_Def.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::ScalarT QCAD::PoissonNeumann< EvalT, Traits >::potentialForFDComplIon | ( | const ScalarT & | Nc, | |
const ScalarT & | Nv, | |||
const ScalarT & | Eg, | |||
const double & | Chi, | |||
const std::string & | dopType, | |||
const double & | dopingConc | |||
) | [protected] |
built-in potential for FD statistics and complete ionization
Definition at line 355 of file QCAD_PoissonNeumann_Def.hpp.
QCAD::PoissonNeumann< EvalT, Traits >::ScalarT QCAD::PoissonNeumann< EvalT, Traits >::potentialForZeroKFDComplIon | ( | const ScalarT & | Nc, | |
const ScalarT & | Nv, | |||
const ScalarT & | Eg, | |||
const double & | Chi, | |||
const std::string & | dopType, | |||
const double & | dopingConc | |||
) | [protected] |
built-in potential for zero-K FD statistics and complete ionization
Definition at line 385 of file QCAD_PoissonNeumann_Def.hpp.
ScalarT QCAD::PoissonNeumann< EvalT, Traits >::user_value [private] |
Definition at line 67 of file QCAD_PoissonNeumann.hpp.
std::string QCAD::PoissonNeumann< EvalT, Traits >::material [private] |
Definition at line 69 of file QCAD_PoissonNeumann.hpp.
std::string QCAD::PoissonNeumann< EvalT, Traits >::ebName [private] |
Definition at line 70 of file QCAD_PoissonNeumann.hpp.
std::string QCAD::PoissonNeumann< EvalT, Traits >::carrierStatistics [private] |
Definition at line 71 of file QCAD_PoissonNeumann.hpp.
std::string QCAD::PoissonNeumann< EvalT, Traits >::incompIonization [private] |
Definition at line 72 of file QCAD_PoissonNeumann.hpp.
double QCAD::PoissonNeumann< EvalT, Traits >::dopingDonor [private] |
Definition at line 74 of file QCAD_PoissonNeumann.hpp.
double QCAD::PoissonNeumann< EvalT, Traits >::dopingAcceptor [private] |
Definition at line 75 of file QCAD_PoissonNeumann.hpp.
double QCAD::PoissonNeumann< EvalT, Traits >::donorActE [private] |
Definition at line 76 of file QCAD_PoissonNeumann.hpp.
double QCAD::PoissonNeumann< EvalT, Traits >::acceptorActE [private] |
Definition at line 77 of file QCAD_PoissonNeumann.hpp.
ScalarT QCAD::PoissonNeumann< EvalT, Traits >::temperature [private] |
Definition at line 79 of file QCAD_PoissonNeumann.hpp.
ScalarT QCAD::PoissonNeumann< EvalT, Traits >::kbT [private] |
Definition at line 82 of file QCAD_PoissonNeumann.hpp.
ScalarT QCAD::PoissonNeumann< EvalT, Traits >::V0 [private] |
Definition at line 83 of file QCAD_PoissonNeumann.hpp.
ScalarT QCAD::PoissonNeumann< EvalT, Traits >::qPhiRef [private] |
Definition at line 84 of file QCAD_PoissonNeumann.hpp.
double QCAD::PoissonNeumann< EvalT, Traits >::energy_unit_in_eV [private] |
Constant energy reference for heterogeneous structures,[eV].
Definition at line 86 of file QCAD_PoissonNeumann.hpp.
Teuchos::RCP<QCAD::MaterialDatabase> QCAD::PoissonNeumann< EvalT, Traits >::materialDB [private] |
Material database.
Definition at line 89 of file QCAD_PoissonNeumann.hpp.