|
qupid 0.2
Quasi-Signal Generation Model for Pixelized Detector
|
Mathematical functions for signal modelling: Gaussian and Woods-Saxon profiles, ellipse geometry, and thin wrappers around the <cmath> functions. More...
Namespaces | |
| namespace | Gaussian |
| Normalized Gaussian profiles. | |
| namespace | GeometryCalc |
| Ellipse radii and plane angles used by the Woods-Saxon profiles. | |
| namespace | WoodSaxon |
| Woods-Saxon (Fermi-function) profiles. | |
Functions | |
| double | Sqrt (const double &x) |
| std::sqrt wrapper. | |
| double | Power (const double &x, const double &exponent) |
| std::pow wrapper. | |
| double | Sin (const double &x) |
| std::sin wrapper. | |
| double | Cos (const double &x) |
| std::cos wrapper. | |
| double | ATan (const double &x) |
| std::atan wrapper. | |
| double | ATan2 (const double &y, const double &x) |
| Quadrant-aware arctangent with swapped argument forwarding. | |
| double | Exp (const double &x) |
| std::exp wrapper. | |
| double | Gaus (const double &x, const double &mean, const double &sigma, const bool &norm) |
Gaussian kernel norm is true. | |
| QPMatrix | RotationMatrix (double theta) |
| Counterclockwise 2D rotation matrix. | |
Variables | |
| const double | InvPi = 0.3183098861837906715377675267450287240689192 |
| const double | InvSqrtPi = 0.5641895835477562869480794515607725858440506 |
| const double | InvSqrt2Pi = 0.3989422804014326779399460599343818684758586 |
| const double | Degree = 0.01745329251994329576923690768488612713442871 |
| one degree in radians, | |
| const double | Pi = 3.1415926535897932384626433832795028841971693 |
Mathematical functions for signal modelling: Gaussian and Woods-Saxon profiles, ellipse geometry, and thin wrappers around the <cmath> functions.
Angles are in radians throughout.
| double QPMath::Sqrt | ( | const double & | x | ) |
std::sqrt wrapper.
| x | operand |

Definition at line 192 of file QPMath.cpp.
Referenced by QPMath::GeometryCalc::EllipseRotAxis(), QPMath::Gaussian::MatrixForm2D(), QPMath::Gaussian::RotAxis2D(), QPMath::WoodSaxon::RotAxis2D(), QPMath::WoodSaxon::RotAxis2DUnsync(), QPMath::Gaussian::Simple2D(), QPMath::WoodSaxon::Simple2D(), QPMath::Gaussian::UniAxis2D(), and QPMath::WoodSaxon::UniAxis2D().
| double QPMath::Power | ( | const double & | x, |
| const double & | exponent | ||
| ) |
std::pow wrapper.
| x | base |
| exponent | exponent |

Definition at line 196 of file QPMath.cpp.
Referenced by QPMath::GeometryCalc::EllipseRotAxis(), QPMath::Gaussian::RotAxis2D(), QPMath::WoodSaxon::RotAxis2D(), QPMath::WoodSaxon::RotAxis2DUnsync(), QPMath::Gaussian::Simple2D(), QPMath::WoodSaxon::Simple2D(), QPMath::Gaussian::UniAxis2D(), and QPMath::WoodSaxon::UniAxis2D().
| double QPMath::Sin | ( | const double & | x | ) |
std::sin wrapper.
| x | angle, radians |

Definition at line 200 of file QPMath.cpp.
Referenced by QPMath::Gaussian::Assymetry2D(), QPMath::GeometryCalc::EllipseRotAxis(), RotationMatrix(), and QPMath::Gaussian::RotAxis2D().
| double QPMath::Cos | ( | const double & | x | ) |
std::cos wrapper.
| x | angle, radians |

Definition at line 204 of file QPMath.cpp.
Referenced by QPMath::Gaussian::Assymetry2D(), QPMath::GeometryCalc::EllipseRotAxis(), RotationMatrix(), and QPMath::Gaussian::RotAxis2D().
| double QPMath::ATan | ( | const double & | x | ) |
| double QPMath::ATan2 | ( | const double & | y, |
| const double & | x | ||
| ) |
Quadrant-aware arctangent with swapped argument forwarding.


| y | first argument (passed to std::atan2 as its second argument) |
| x | second argument (passed to std::atan2 as its first argument) |
Definition at line 212 of file QPMath.cpp.
Referenced by QPMath::GeometryCalc::Angle().
| double QPMath::Exp | ( | const double & | x | ) |
std::exp wrapper.
| x | operand |

Definition at line 216 of file QPMath.cpp.
Referenced by Gaus(), QPMath::Gaussian::MatrixForm2D(), and QPMath::WoodSaxon::Simple1D().
| double QPMath::Gaus | ( | const double & | x, |
| const double & | mean, | ||
| const double & | sigma, | ||
| const bool & | norm | ||
| ) |
Gaussian kernel 

norm is true.
Returns 


| x | evaluation point |
| mean | mean |
| sigma | width |
| norm | normalize to unit integral |
Definition at line 220 of file QPMath.cpp.
References Exp().
Referenced by QPMath::Gaussian::Simple1D().
| QPMatrix QPMath::RotationMatrix | ( | double | theta | ) |
Counterclockwise 2D rotation matrix.
![\[ R(\theta) = \begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix} \]](form_24.png)
| theta | rotation angle, radians |
Definition at line 232 of file QPMath.cpp.
Referenced by QPSignalGaussian::QPSignalGaussian().
| const double QPMath::InvPi = 0.3183098861837906715377675267450287240689192 |
| const double QPMath::InvSqrtPi = 0.5641895835477562869480794515607725858440506 |

Definition at line 13 of file QPMath.hpp.
| const double QPMath::InvSqrt2Pi = 0.3989422804014326779399460599343818684758586 |

Definition at line 14 of file QPMath.hpp.
Referenced by QPMath::Gaussian::RotAxis2D(), QPMath::Gaussian::Simple2D(), and QPMath::Gaussian::UniAxis2D().
| const double QPMath::Degree = 0.01745329251994329576923690768488612713442871 |
one degree in radians, 
Definition at line 15 of file QPMath.hpp.
| const double QPMath::Pi = 3.1415926535897932384626433832795028841971693 |