00001 //-------------------------------------------------------------------------- 00002 // 00003 // Environment: 00004 // This software is part of the EvtGen package developed jointly 00005 // for the BaBar and CLEO collaborations. If you use all or part 00006 // of it, please give an appropriate acknowledgement. 00007 // 00008 // Copyright Information: See EvtGen/COPYRIGHT 00009 // Copyright (C) 1998 Caltech, UCSB 00010 // 00011 // Module: EvtGen/EvtNeutrinoParticle.hh 00012 // 00013 // Description:Class to describe neutrinos 00014 // 00015 // Modification history: 00016 // 00017 // RYD September 25, 1996 Module created 00018 // 00019 //------------------------------------------------------------------------ 00020 00021 #ifndef EVTNEUTRINOPARTICLE_HH 00022 #define EVTNEUTRINOPARTICLE_HH 00023 00024 #include "EvtGenBase/EvtDiracSpinor.hh" 00025 #include "EvtGenBase/EvtParticle.hh" 00026 //#include "EvtGenBase/EvtId.hh" 00027 class EvtId; 00028 class EvtVector4R; 00029 00030 class EvtNeutrinoParticle:public EvtParticle { 00031 00032 public: 00033 00034 EvtNeutrinoParticle(); 00035 virtual ~EvtNeutrinoParticle(); 00036 void init(EvtId part_n,const EvtVector4R& p4); 00037 //Return spinors 00038 EvtDiracSpinor spParentNeutrino() const; 00039 EvtDiracSpinor spNeutrino() const; 00040 EvtSpinDensity rotateToHelicityBasis() const; 00041 EvtSpinDensity rotateToHelicityBasis(double alpha, 00042 double beta, 00043 double gamma) const; 00044 00045 private: 00046 00047 EvtDiracSpinor spinor_rest; 00048 EvtDiracSpinor spinor_parent; 00049 00050 EvtNeutrinoParticle(const EvtNeutrinoParticle& n); 00051 EvtNeutrinoParticle& operator=(const EvtNeutrinoParticle& n); 00052 00053 }; 00054 #endif 00055