00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef EVTHELSYS_HH
00023 #define EVTHELSYS_HH
00024
00025
00026 #include <iostream>
00027
00028 #include "EvtGenBase/EvtVector4R.hh"
00029 #include "EvtGenBase/EvtVector3R.hh"
00030
00031 #include <fstream>
00032
00033
00034
00035
00036
00037
00038
00039
00040 using std::endl;
00041 using std::fstream;
00042 EvtComplex Djmn(int j, int m, int n, double phi,double theta,double gamma);
00043 class EvtHelSys
00044 {
00045
00046 friend double djmn(int j, int m, int n, double theta);
00047 friend double djmn(double j, double m, double n, double theta);
00048 friend EvtComplex Djmn(int j, int m, int n, double phi,double theta,double gamma);
00049 friend EvtComplex Djmn(double j, double m, double n, double phi,double theta,double gamma);
00050 public:
00051
00052
00053 virtual ~EvtHelSys();
00054
00055
00056 EvtHelSys();
00057 EvtHelSys( const EvtVector4R & p4p, const EvtVector4R & p4d);
00058
00059 double getHelAng(int i), Angles(EvtVector4R, int);
00060
00061 EvtVector4R checkparent(),checkdaug(),checkst(int i);
00062
00063 EvtVector4R Helrotate(EvtVector4R p1, double phi, double theta);
00064 private:
00065 EvtVector4R _p4parent,_p4daug,_bp4p,_rotatep4p,_rotatep4d,_bst;
00066
00067 };
00068
00069 #endif
00070