|
Jpp
|
3D track. More...
#include <JTrack3D.hh>
Public Member Functions | |
| JTrack3D () | |
| Default constructor. More... | |
| JTrack3D (const JAxis3D &axis, const JTime &t0) | |
| Constructor. More... | |
| JTrack3D (const JVector3D &pos, const JVersor3D &dir, const JTime &t0) | |
| Constructor. More... | |
| JTrack3D (const JVertex3D &vertex, const JVersor3D &dir) | |
| Constructor. More... | |
| JVertex3D | getVertex () const |
| Get vertex of this track. More... | |
| void | move (const double step, const double velocity) |
| Move vertex along this track with given velocity. More... | |
| double | getT (const JVector3D &pos) const |
| Get arrival time of Cherenkov light at given 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 JVector3D &pos) const |
| Get cosine angle of emission of Cherenkov light on PMT. More... | |
| double | getT () const |
| Get time. More... | |
| JTime & | add (const JTime &value) |
| Addition operator. More... | |
| JTime & | sub (const JTime &value) |
| Subtraction operator. More... | |
| const JAxis3D & | getAxis () const |
| Get axis. More... | |
| void | setAxis (const JAxis3D &axis) |
| Set axis. More... | |
| JAxis3D & | negate () |
| Negate axis. More... | |
| void | move (const double step) |
| Move vertex along this axis. More... | |
| double | getIntersection (const JVector3D &pos) const |
| Get longitudinal position along axis of position of closest approach with given position. More... | |
| double | getIntersection (const JAxis3D &axis, const double precision=1.0e-8) const |
| Get longitudinal position along axis of position of closest approach with given axis. More... | |
| double | getDistanceSquared (const JVector3D &pos) const |
| Get distance squared. More... | |
| double | getDistance (const JVector3D &pos) const |
| Get distance. More... | |
| JAxis3D & | rotate (const JRotation3D &R) |
| Rotate axis. More... | |
| JAxis3D & | rotate (const JRotation3X &R) |
| Rotate around X-axis. More... | |
| JAxis3D & | rotate (const JRotation3Y &R) |
| Rotate around Y-axis. More... | |
| JAxis3D & | rotate (const JRotation3Z &R) |
| Rotate around Z-axis. More... | |
| JAxis3D & | rotate (const JQuaternion3D &Q) |
| Rotate axis. More... | |
| JAxis3D & | rotate_back (const JRotation3D &R) |
| Rotate back axis. More... | |
| JAxis3D & | rotate_back (const JRotation3X &R) |
| Rotate back around X-axis. More... | |
| JAxis3D & | rotate_back (const JRotation3Y &R) |
| Rotate back around Y-axis. More... | |
| JAxis3D & | rotate_back (const JRotation3Z &R) |
| Rotate back around Z-axis. More... | |
| JPosition3D & | rotate_back (const JQuaternion3D &Q) |
| Rotate back. More... | |
| JDirection3D & | rotate_back (const JQuaternion3D &Q) |
| Rotate back. More... | |
| void | transform (const JAxis3D &axis) |
| Transform axis to reference frame of given axis. More... | |
| void | transform (const JRotation3D &R, const JVector3D &pos) |
| Transform axis. More... | |
| void | transform (const JTransformation3D &T) |
| Transform axis. More... | |
| JVector3D & | transform (const JMatrix3D &T) |
| Transform. More... | |
| JVector3D & | transform (const JMatrix3D &T) |
| Transform. More... | |
| JDirection3D & | transform (const JMatrix3D &T) |
| Transform. More... | |
| void | transform_back (const JRotation3D &R, const JVector3D &pos) |
| Transform back axis. More... | |
| void | transform_back (const JTransformation3D &T) |
| Transform back axis. More... | |
| double | getDot (const JAngle3D &angle) const |
| Get dot product. 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 JAngle3D &angle) const |
| Get dot product. More... | |
| double | getDot (const JVersor3Z &dir) const |
| Get dot product. More... | |
| double | getDot (const JVersor3D &versor) const |
| Get dot product. 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 JAngle3D () const | |
| Type conversion operator. More... | |
| operator JVersor3D () const | |
| Type conversion operator. More... | |
| operator JVector2D () const | |
| Type conversion operator. More... | |
| double | getX () const |
| Get x position. More... | |
| double | getY () const |
| Get y position. More... | |
| double | getZ () const |
| Get z position. More... | |
| JVector3D & | add (const JVector3D &vector) |
| Add vector. More... | |
| JVector3D & | sub (const JVector3D &vector) |
| Subtract vector. More... | |
| JVector3D & | mul (const double factor) |
| Scale vector. More... | |
| JVector3D & | mul (const JSecond_t &object) |
| Multiply with object. More... | |
| JVersor3D & | mul (const JSecond_t &object) |
| Multiply with object. More... | |
| JVector3D & | div (const double factor) |
| Scale vector. More... | |
| bool | equals (const JVector3D &vector, const double precision=std::numeric_limits< double >::min()) const |
| Check equality. More... | |
| bool | equals (const JVersor3D &versor, 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 & | cross (const JVector3D &first, const JVector3D &second) |
| Get cross product. More... | |
| const JDirection3D & | getDirection () const |
| Get direction. More... | |
| JDirection3D & | getDirection () |
| Get direction. More... | |
| void | setDirection (const JDirection3D &dir) |
| Set direction. More... | |
| operator JVector3D () const | |
| Type conversion operator. More... | |
| double | getDX () const |
| Get x direction. More... | |
| double | getDY () const |
| Get y direction. More... | |
| double | getDZ () const |
| Get z direction. More... | |
| double | getTheta () const |
| Get theta angle. More... | |
| double | getPhi () const |
| Get phi angle. More... | |
| JVersor3D & | normalise () |
| Normalise versor. More... | |
| JTime & | negate () |
| Prefix unary minus. More... | |
| JTime & | add (const JTime &value) |
| Addition operator. More... | |
| JTime & | sub (const JTime &value) |
| Subtraction operator. More... | |
| JTime & | mul (const double value) |
| Multiplication operator. More... | |
| JTime & | div (const double value) |
| Division operator. More... | |
| double | getT () const |
| Get time. More... | |
Protected Attributes | |
| double | __x |
| double | __y |
| double | __z |
| double | __dx |
| double | __dy |
| double | __dz |
| double | __t |
Friends | |
| std::istream & | operator>> (std::istream &in, JTrack3D &track) |
| Read track from input. More... | |
| std::ostream & | operator<< (std::ostream &out, const JTrack3D &track) |
| Write track to output. More... | |
| JReader & | operator>> (JReader &in, JTrack3D &track) |
| Read track from input. More... | |
| JWriter & | operator<< (JWriter &out, const JTrack3D &track) |
| Write track to output. More... | |
3D track.
Definition at line 30 of file JTrack3D.hh.
|
inline |
Default constructor.
Definition at line 47 of file JTrack3D.hh.
|
inline |
Constructor.
| pos | position |
| dir | direction |
| t0 | time at vertex |
Definition at line 73 of file JTrack3D.hh.
|
inline |
|
inline |
Move vertex along this track with given velocity.
| step | step |
| velocity | velocity |
Definition at line 112 of file JTrack3D.hh.
|
inline |
Get arrival time of Cherenkov light at given position.
| pos | position [m] |
Definition at line 126 of file JTrack3D.hh.
Get photon direction of Cherenkov light on PMT.
| pos | PMT position |
Definition at line 147 of file JTrack3D.hh.
|
inline |
Get cosine angle of impact of Cherenkov light on PMT.
| axis | PMT axis |
Definition at line 170 of file JTrack3D.hh.
|
inline |
Get cosine angle of emission of Cherenkov light on PMT.
| pos | PMT position |
Definition at line 182 of file JTrack3D.hh.
|
inline |
|
inline |
Addition operator.
| value | time |
Definition at line 66 of file JGeometry3D/JTime.hh.
|
inline |
Subtraction operator.
| value | time |
Definition at line 80 of file JGeometry3D/JTime.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Get longitudinal position along axis of position of closest approach with given position.
| pos | position |
Definition at line 157 of file JAxis3D.hh.
|
inlineinherited |
Get longitudinal position along axis of position of closest approach with given axis.
If the axes are paralel, this position corresponds to the vertex of the given axis.
| axis | axis |
| precision | precision |
Definition at line 175 of file JAxis3D.hh.
|
inlineinherited |
Get distance squared.
| pos | position |
Definition at line 206 of file JAxis3D.hh.
|
inlineinherited |
|
inlineinherited |
Rotate axis.
| R | rotation matrix |
Definition at line 236 of file JAxis3D.hh.
|
inlineinherited |
Rotate around X-axis.
| R | rotation matrix |
Definition at line 266 of file JAxis3D.hh.
|
inlineinherited |
Rotate around Y-axis.
| R | rotation matrix |
Definition at line 296 of file JAxis3D.hh.
|
inlineinherited |
Rotate around Z-axis.
| R | rotation matrix |
Definition at line 326 of file JAxis3D.hh.
|
inlineinherited |
|
inlineinherited |
Rotate back axis.
| R | rotation matrix |
Definition at line 251 of file JAxis3D.hh.
|
inlineinherited |
Rotate back around X-axis.
| R | rotation matrix |
Definition at line 281 of file JAxis3D.hh.
|
inlineinherited |
Rotate back around Y-axis.
| R | rotation matrix |
Definition at line 311 of file JAxis3D.hh.
|
inlineinherited |
Rotate back around Z-axis.
| R | rotation matrix |
Definition at line 341 of file JAxis3D.hh.
|
inlineinherited |
Rotate back.
| Q | quaternion |
Definition at line 311 of file JPosition3D.hh.
|
inlineinherited |
Rotate back.
| Q | quaternion |
Definition at line 319 of file JDirection3D.hh.
|
inlineinherited |
Transform axis to reference frame of given axis.
| axis | axis |
Definition at line 370 of file JAxis3D.hh.
|
inlineinherited |
Transform axis.
The final position and direction are obtained as follows:
R);pos);| R | rotation matrix |
| pos | position of origin |
Definition at line 390 of file JAxis3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Transform back axis.
The final position and direction are obtained as follows:
| R | rotation matrix |
| pos | position of origin (before rotation) |
Definition at line 426 of file JAxis3D.hh.
|
inlineinherited |
|
inlineinherited |
Get dot product.
| angle | angle |
Definition at line 333 of file JDirection3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Scale vector.
| factor | multiplication factor |
Definition at line 173 of file JVector3D.hh.
|
inlineinherited |
Multiply with object.
| object | object |
Definition at line 273 of file JMath.hh.
|
inlineinherited |
Multiply with object.
| object | object |
Definition at line 273 of file JMath.hh.
|
inlineinherited |
Scale vector.
| factor | division factor |
Definition at line 189 of file JVector3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
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 297 of file JVector3D.hh.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Normalise versor.
This operation may set the result to the unit z-vector.
Definition at line 167 of file JVersor3D.hh.
|
inlineinherited |
Addition operator.
| value | time |
Definition at line 66 of file JGeometry3D/JTime.hh.
Subtraction operator.
| value | time |
Definition at line 80 of file JGeometry3D/JTime.hh.
|
inlineinherited |
Multiplication operator.
| value | multiplication factor |
Definition at line 94 of file JGeometry3D/JTime.hh.
|
inlineinherited |
Division operator.
| value | multiplication factor |
Definition at line 108 of file JGeometry3D/JTime.hh.
|
inlineinherited |
|
friend |
Read track from input.
| in | input stream |
| track | track |
Definition at line 195 of file JTrack3D.hh.
|
friend |
Write track to output.
| out | output stream |
| track | track |
Definition at line 211 of file JTrack3D.hh.
Read track from input.
| in | reader |
| track | track |
Definition at line 228 of file JTrack3D.hh.
Write track to output.
| out | writer |
| track | track |
Definition at line 244 of file JTrack3D.hh.
|
protectedinherited |
Definition at line 308 of file JVector3D.hh.
|
protectedinherited |
Definition at line 309 of file JVector3D.hh.
|
protectedinherited |
Definition at line 310 of file JVector3D.hh.
|
protectedinherited |
Definition at line 181 of file JVersor3D.hh.
|
protectedinherited |
Definition at line 182 of file JVersor3D.hh.
|
protectedinherited |
Definition at line 183 of file JVersor3D.hh.
|
protectedinherited |
Definition at line 188 of file JGeometry3D/JTime.hh.
1.8.16