20 FootprintGauss::FootprintGauss(
const std::vector<double> P)
25 FootprintGauss::FootprintGauss(
double width_ratio)
37 if (alpha < 0.0 || alpha > M_PI_2)
39 if (widthRatio() == 0.0)
41 const double arg = std::sin(alpha) * M_SQRT1_2 / widthRatio();
47 std::stringstream result;
48 result <<
"\n" <<
pyfmt::indent() <<
"# Defining footprint:\n";
50 result <<
"ba.FootprintGauss";
51 result <<
"(" << pyfmt::printDouble(widthRatio()) <<
")";
55 static_assert(!std::is_copy_constructible<FootprintGauss>::value,
56 "FootprintGauss should not be copy constructable");
57 static_assert(!std::is_copy_assignable<FootprintGauss>::value,
58 "FootprintGauss should not be copy assignable");
Defines M_PI and some more mathematical constants.
Defines namespace MathFunctions.
Defines functions in namespace pyfmt.
double erf(double arg)
Error function of real-valued argument.
std::string indent(size_t width)
Returns a string of blanks with given width.