24ScreeningFunction::ScreeningFunction() : inner(0.0),
35 throw invalid_argument(
"ERROR: Inner radius of transition region >= "
56 v.push_back(
"Screening function information:\n");
57 v.push_back(
strpr(
"Inner radius : %16.8E\n",
inner));
58 v.push_back(
strpr(
"Outer radius : %16.8E\n",
outer));
59 v.push_back(
"Transition region functional form:\n");
60 v.push_back(
"x := (r - inner) / (outer - inner)\n");
61 v.push_back(
"fs(x) := 1 - f(x)\n");
63 v.insert(v.end(), ci.begin(), ci.end());
std::vector< std::string > info() const
Get string with formula of compact function.
void setType(Type const type)
Set function type.
double scale
Inverse width.
double inner
Inner radius where transition region starts.
CoreFunction core
Core function to be used in the transition region.
void changeLengthUnits(double const conv)
Change length units of screening function.
std::vector< std::string > info() const
Get string with information of screening function.
double outer
Outer radius where transition region ends.
void setInnerOuter(double inner, double outer)
Set inner and outer limit of transition region.
string strpr(const char *format,...)
String version of printf function.