File indexing completed on 2025-04-19 09:10:12
0001 #ifndef PHOTONS_MEs_Scalar_To_Vector_Lepton_Neutrino_H
0002 #define PHOTONS_MEs_Scalar_To_Vector_Lepton_Neutrino_H
0003
0004 #include "PHOTONS++/MEs/PHOTONS_ME_Base.H"
0005 #include "PHOTONS++/Tools/Dipole_FF.H"
0006 #include "ATOOLS/Math/Tensor.H"
0007
0008 namespace PHOTONS {
0009 class Scalar_To_Vector_Lepton_Neutrino: public PHOTONS_ME_Base, public Dipole_FF {
0010 private:
0011 bool m_switch;
0012 bool m_ffmodel;
0013
0014 double m_fplusprimezero;
0015 double m_fpluszero;
0016
0017 virtual void BoostOriginalPVVToMultipoleCMS();
0018
0019 virtual Complex InfraredSubtractedME_0_0();
0020 virtual Complex InfraredSubtractedME_0_1();
0021 virtual Complex InfraredSubtractedME_0_2();
0022
0023 virtual Complex InfraredSubtractedME_1_05(unsigned int);
0024 virtual Complex InfraredSubtractedME_1_15(unsigned int);
0025
0026 virtual Complex InfraredSubtractedME_2_1(unsigned int, unsigned int);
0027
0028 double FormFactorAp(double);
0029 double FormFactorAm(double);
0030 double FormFactorF(double);
0031 double FormFactorG(double);
0032
0033 Lorentz_Ten2D AuxiliaryTensor(Vec4D,Vec4D,double);
0034
0035 public:
0036 Scalar_To_Vector_Lepton_Neutrino(const Particle_Vector_Vector&);
0037 virtual ~Scalar_To_Vector_Lepton_Neutrino();
0038
0039 virtual double GetBeta_0_0();
0040 virtual double GetBeta_0_1();
0041 virtual double GetBeta_0_2();
0042
0043 virtual double GetBeta_1_1(unsigned int);
0044 virtual double GetBeta_1_2(unsigned int);
0045
0046 virtual double GetBeta_2_2(unsigned int, unsigned int);
0047
0048 virtual void FillMomentumArrays(const Particle_Vector_Vector&);
0049 virtual double Smod(unsigned int);
0050 };
0051 }
0052 #endif