46 #ifndef Xyce_N_DEV_DopeInfo_h
47 #define Xyce_N_DEV_DopeInfo_h
78 std::vector<double> & CVec,
79 std::vector<double> & CdonorVec,
80 std::vector<double> & CacceptorVec,
84 std::vector<double> & CVec,
85 std::vector<double> & CdonorVec,
86 std::vector<double> & CacceptorVec,
87 std::vector<double> & xVec, std::vector<double> &yVec,
DeviceSupport & devSup);
89 static double nsdep(
double x,
double W,
double Dt);
90 static double ngdep(
double x,
double y,
double W,
double ax,
double ay);
91 static double ngdep2(
double x,
double y,
double ax,
double ay);
92 static double erf(
double x);
95 std::vector<double> & nvec, std::vector<double> & y2,
DeviceSupport & devSup);
98 std::vector<double> & nvec, std::vector<double> & y2_n,
99 std::vector<double> & pvec, std::vector<double> & y2_p,
DeviceSupport & devSup);
155 os << di.
name <<
":\n";
156 os <<
" type = " << di.
type <<
"\n";
157 os <<
" funcType = " << di.
funcType <<
"\n";
161 os <<
" exp. string = " << di.
exprString <<
"\n";
164 os <<
" xloc = " << di.
xloc <<
"\n";
165 os <<
" xwidth = " << di.
xwidth <<
"\n";
166 os <<
" yloc = " << di.
yloc <<
"\n";
167 os <<
" ywidth = " << di.
ywidth <<
"\n";
169 os <<
" Nmax = " << di.
Nmax <<
"\n";
170 os <<
" Nmin = " << di.
Nmin <<
"\n";
172 os <<
" flatX = " << di.
flatX <<
"\n";
173 os <<
" flatY = " << di.
flatY <<
"\n";
std::vector< double > dopeVec
static double ngdep(double x, double y, double W, double ax, double ay)
static ParametricData< DopeInfo > & getParametricData()
static double ngdep2(double x, double y, double ax, double ay)
static double nsdep(double x, double W, double Dt)
Pure virtual class to augment a linear system.
static void readDopingFile(std::string &filename, std::vector< double > &xloc, std::vector< double > &nvec, std::vector< double > &y2, DeviceSupport &devSup)
std::vector< double > xlocVec
void setupInfo(std::vector< double > &CVec, std::vector< double > &CdonorVec, std::vector< double > &CacceptorVec, std::vector< double > &xVec, DeviceSupport &devSup)
std::vector< double > y2Vec
void setupInfo2d(std::vector< double > &CVec, std::vector< double > &CdonorVec, std::vector< double > &CacceptorVec, std::vector< double > &xVec, std::vector< double > &yVec, DeviceSupport &devSup)
static double erf(double x)
bool processParam(Param &ndParam, std::string ¶m, DevicePDEInstance &di)
std::vector< double > splintDopeVec
Manages parameter binding for class C.
void processParams()
processParams post processes the parameters that have been set in the object of the derived class...
CompositeParam is the base class for classes that wish to only manage the processing of parameter dat...
std::ostream & operator<<(std::ostream &os, const Configuration &configuration)