Jpp
19.0.0
the software that should make you happy
|
Linear fit of straight line parallel to z-axis to set of hits (objects with position and time). More...
#include <JLine1ZEstimator.hh>
Public Types | |
typedef double JLine1Z::* | parameter_type |
Public Member Functions | |
JEstimator () | |
Default constructor. More... | |
template<class T > | |
JEstimator (T __begin, T __end) | |
Constructor. More... | |
template<class T > | |
const JEstimator< JLine1Z > & | operator() (T __begin, T __end) |
Fit. More... | |
template<class T > | |
void | update (T __begin, T __end, const JMatrixNZ &A) |
Update track parameters using updated co-variance matrix (e.g. matrix with one hit switched off). More... | |
void | move (const double step, const double velocity) |
Move vertex along this line with given velocity. More... | |
void | setZ (const double z, const double velocity) |
Set z-position of vertex. More... | |
double | getDistanceSquared (const JVector3D &pos) const |
Get distance squared. More... | |
double | getDistance (const JVector3D &pos) const |
Get distance. More... | |
double | getT (const JVector3D &pos) const |
Get arrival time of Cherenkov light at given position. More... | |
double | getT () const |
Get time. More... | |
double | getZ (const JPosition3D &pos) const |
Get point of emission of Cherenkov light along muon path. More... | |
double | getZ () const |
Get z position. More... | |
JVersor3D | getDirection (const JVector3D &pos) const |
Get photon direction of Cherenkov light on PMT. More... | |
double | getDot (const JAxis3D &axis) const |
Get cosine angle of impact of Cherenkov light on PMT. More... | |
double | getDot (const JAngle3D &angle) const |
Get dot product. More... | |
double | getDot (const JVersor3D &dir) const |
Get dot product. More... | |
double | getDot (const JVersor3Z &dir) const |
Get dot product. More... | |
double | getDot (const JVector3D &vector) const |
Get dot product. More... | |
JVertex3D & | negate () |
Prefix unary minus. More... | |
JVertex3D & | add (const JVertex3D &value) |
Addition operator. More... | |
JVector3D & | add (const JVector3D &vector) |
Add vector. More... | |
JTime & | add (const JTime &value) |
Addition operator. More... | |
JVertex3D & | sub (const JVertex3D &value) |
Subtraction operator. More... | |
JVector3D & | sub (const JVector3D &vector) |
Subtract vector. More... | |
JTime & | sub (const JTime &value) |
Subtraction operator. More... | |
JVertex3D & | mul (const double value) |
Multiplication operator. More... | |
JFirst_t & | mul (const JSecond_t &object) |
Multiply with object. More... | |
JFirst_t & | mul (const JSecond_t &object) |
Multiply with object. More... | |
JVertex3D & | div (const double value) |
Division operator. More... | |
const JPosition3D & | getPosition () const |
Get position. More... | |
JPosition3D & | getPosition () |
Get position. More... | |
void | setPosition (const JVector3D &pos) |
Set position. More... | |
operator JAngle3D () const | |
Type conversion operator. More... | |
operator JVersor3D () const | |
Type conversion operator. More... | |
JPosition3D & | rotate (const JRotation3D &R) |
Rotate. More... | |
JPosition3D & | rotate (const JRotation3X &R) |
Rotate around X-axis. More... | |
JPosition3D & | rotate (const JRotation3Y &R) |
Rotate around Y-axis. More... | |
JPosition3D & | rotate (const JRotation3Z &R) |
Rotate around Z-axis. More... | |
JPosition3D & | rotate (const JQuaternion3D &Q) |
Rotate. More... | |
JPosition3D & | rotate_back (const JRotation3D &R) |
Rotate back. More... | |
JPosition3D & | rotate_back (const JRotation3X &R) |
Rotate back around X-axis. More... | |
JPosition3D & | rotate_back (const JRotation3Y &R) |
Rotate back around Y-axis. More... | |
JPosition3D & | rotate_back (const JRotation3Z &R) |
Rotate back around Z-axis. More... | |
JPosition3D & | rotate_back (const JQuaternion3D &Q) |
Rotate back. More... | |
void | transform (const JRotation3D &R, const JVector3D &pos) |
Transform position. More... | |
JVector3D & | transform (const JMatrix3D &T) |
Transform. More... | |
void | transform_back (const JRotation3D &R, const JVector3D &pos) |
Transform back position. More... | |
operator JVector2D () const | |
Type conversion operator. More... | |
double | getX () const |
Get x position. More... | |
double | getY () const |
Get y position. More... | |
bool | equals (const JVector3D &vector, const double precision=std::numeric_limits< double >::min()) const |
Check equality. More... | |
double | getLengthSquared () const |
Get length squared. More... | |
double | getLength () const |
Get length. More... | |
JVector3D & | getCross (const JVector3D &first, const JVector3D &second) |
Get cross product. More... | |
void | setT (const double time) |
Set time. More... | |
Static Public Member Functions | |
static parameter_type | pX () |
static parameter_type | pY () |
static parameter_type | pT () |
Public Attributes | |
JMATH::JMatrix3S | V |
co-variance matrix of fit parameters More... | |
JMATH::JSVD3D | svd |
Static Public Attributes | |
static const int | NUMBER_OF_PARAMETERS = 3 |
number of parameters of fit More... | |
static double | MINIMAL_SVD_WEIGHT = 1.0e-4 |
minimal SVD weight. More... | |
Protected Attributes | |
double | __x |
double | __y |
double | __z |
double | __t |
Linear fit of straight line parallel to z-axis to set of hits (objects with position and time).
where:
Defining:
The parameters are estimated in the constructor of this class based on consecutive pairs of equations by which the quadratic terms in
,
and
are eliminated.
Definition at line 89 of file JLine1ZEstimator.hh.
|
inherited |
Definition at line 178 of file JLine1Z.hh.
|
inline |
|
inline |
Constructor.
__begin | begin of data |
__end | end of data |
Definition at line 108 of file JLine1ZEstimator.hh.
|
inline |
Fit.
The template argument T
refers to an iterator of a data structure which should have the following member methods:
__begin | begin of data |
__end | end of data |
Definition at line 129 of file JLine1ZEstimator.hh.
|
inline |
Update track parameters using updated co-variance matrix (e.g. matrix with one hit switched off).
In this, it is assumed that the changes in x and y positions are small compared to the actual distances between the track and the hits.
The template argument T
refers to an iterator of a data structure which should have the following member methods:
__begin | begin of data |
__end | end of data |
A | co-variance matrix of hits |
Definition at line 257 of file JLine1ZEstimator.hh.
|
inlineinherited |
Move vertex along this line with given velocity.
step | step |
velocity | velocity |
Definition at line 62 of file JLine1Z.hh.
|
inlineinherited |
Set z-position of vertex.
z | z-position |
velocity | velocity |
Definition at line 75 of file JLine1Z.hh.
|
inlineinherited |
Get distance squared.
pos | position |
Definition at line 87 of file JLine1Z.hh.
|
inlineinherited |
Get distance.
pos | position |
Definition at line 102 of file JLine1Z.hh.
|
inlineinherited |
Get arrival time of Cherenkov light at given position.
pos | position [m] |
Definition at line 114 of file JLine1Z.hh.
|
inlineinherited |
|
inlineinherited |
Get point of emission of Cherenkov light along muon path.
pos | position |
Definition at line 134 of file JLine1Z.hh.
|
inlineinherited |
Get photon direction of Cherenkov light on PMT.
pos | PMT position |
Definition at line 148 of file JLine1Z.hh.
|
inlineinherited |
Get cosine angle of impact of Cherenkov light on PMT.
axis | PMT axis |
Definition at line 172 of file JLine1Z.hh.
|
inlineinherited |
Get dot product.
angle | angle |
Definition at line 378 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
dir | direction |
Definition at line 393 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
dir | direction |
Definition at line 408 of file JPosition3D.hh.
|
inlineinherited |
Get dot product.
vector | vector |
Definition at line 282 of file JVector3D.hh.
|
inlinestaticinherited |
Definition at line 180 of file JLine1Z.hh.
|
inlinestaticinherited |
Definition at line 181 of file JLine1Z.hh.
|
inlinestaticinherited |
Definition at line 182 of file JLine1Z.hh.
|
inlineinherited |
Addition operator.
value | line |
Definition at line 87 of file JVertex3D.hh.
Addition operator.
value | time |
Definition at line 67 of file JGeometry3D/JTime.hh.
Subtraction operator.
value | line |
Definition at line 102 of file JVertex3D.hh.
Subtract vector.
vector | vector |
Definition at line 158 of file JVector3D.hh.
Subtraction operator.
value | time |
Definition at line 81 of file JGeometry3D/JTime.hh.
|
inlineinherited |
Multiplication operator.
value | multiplication factor |
Definition at line 117 of file JVertex3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Division operator.
value | multiplication factor |
Definition at line 132 of file JVertex3D.hh.
|
inlineinherited |
Get position.
Definition at line 130 of file JPosition3D.hh.
|
inlineinherited |
Get position.
Definition at line 141 of file JPosition3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Type conversion operator.
Definition at line 174 of file JPosition3D.hh.
|
inlineinherited |
Rotate.
R | rotation matrix |
Definition at line 186 of file JPosition3D.hh.
|
inlineinherited |
Rotate around X-axis.
R | rotation matrix |
Definition at line 214 of file JPosition3D.hh.
|
inlineinherited |
Rotate around Y-axis.
R | rotation matrix |
Definition at line 242 of file JPosition3D.hh.
|
inlineinherited |
Rotate around Z-axis.
R | rotation matrix |
Definition at line 270 of file JPosition3D.hh.
|
inlineinherited |
Rotate.
Q | quaternion |
Definition at line 298 of file JPosition3D.hh.
|
inlineinherited |
Rotate back.
R | rotation matrix |
Definition at line 200 of file JPosition3D.hh.
|
inlineinherited |
Rotate back around X-axis.
R | rotation matrix |
Definition at line 228 of file JPosition3D.hh.
|
inlineinherited |
Rotate back around Y-axis.
R | rotation matrix |
Definition at line 256 of file JPosition3D.hh.
|
inlineinherited |
Rotate back around Z-axis.
R | rotation matrix |
Definition at line 284 of file JPosition3D.hh.
|
inlineinherited |
Rotate back.
Q | quaternion |
Definition at line 312 of file JPosition3D.hh.
|
inlineinherited |
Transform position.
The final position is obtained as follows:
R | rotation matrix |
pos | position of origin (after rotation) |
Definition at line 331 of file JPosition3D.hh.
|
inlineinherited |
Transform back position.
The final position is obtained as follows:
R | rotation matrix |
pos | position of origin (before rotation) |
Definition at line 359 of file JPosition3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Check equality.
vector | vector |
precision | precision |
Definition at line 221 of file JVector3D.hh.
|
inlineinherited |
|
inlineinherited |
Get length.
Definition at line 246 of file JVector3D.hh.
|
inlineinherited |
Get cross product.
Note that this vector should not overlap with the first or second vector,
first | first vector |
second | second vector |
Definition at line 299 of file JVector3D.hh.
|
inlineinherited |
|
static |
number of parameters of fit
Definition at line 352 of file JLine1ZEstimator.hh.
co-variance matrix of fit parameters
Definition at line 353 of file JLine1ZEstimator.hh.
JMATH::JSVD3D JFIT::JEstimator< JLine1Z >::svd |
Definition at line 354 of file JLine1ZEstimator.hh.
|
static |
minimal SVD weight.
Set default minimal SVD weight.
Definition at line 355 of file JLine1ZEstimator.hh.
|
protectedinherited |
Definition at line 310 of file JVector3D.hh.
|
protectedinherited |
Definition at line 311 of file JVector3D.hh.
|
protectedinherited |
Definition at line 312 of file JVector3D.hh.
|
protectedinherited |
Definition at line 202 of file JGeometry3D/JTime.hh.