File indexing completed on 2025-04-19 09:09:51
0001 #ifndef ATOOLS_Math_ZAlign_H
0002 #define ATOOLS_Math_ZAlign_H
0003
0004 #include "ATOOLS/Math/Poincare.H"
0005
0006 namespace ATOOLS {
0007
0008 class ZAlign {
0009 private:
0010
0011 Poincare m_cmso, m_zrot, m_cmsn;
0012 Vec4D m_pao, m_pan, m_pb;
0013
0014 int m_stat;
0015
0016 public:
0017
0018 inline ZAlign() {}
0019
0020 ZAlign(const Vec4D &pa,const Vec4D &pb,
0021 const double &ma2,const double &mb2,
0022 const int mode=0);
0023
0024 void Align(Vec4D &p) const;
0025 Vec4D Align(const Vec4D &p) const;
0026
0027 operator Poincare_Sequence() const;
0028
0029 inline const Vec4D &PaOld() const { return m_pao; }
0030 inline const Vec4D &PaNew() const { return m_pan; }
0031 inline const Vec4D &Pb() const { return m_pb; }
0032
0033 inline int Status() const { return m_stat; }
0034
0035 };
0036
0037 }
0038
0039 #endif