Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-08-06 09:20:05

0001 
0002 /***********************************************************************
0003 * Copyright 1998-2020 CERN for the benefit of the EvtGen authors       *
0004 *                                                                      *
0005 * This file is part of EvtGen.                                         *
0006 *                                                                      *
0007 * EvtGen is free software: you can redistribute it and/or modify       *
0008 * it under the terms of the GNU General Public License as published by *
0009 * the Free Software Foundation, either version 3 of the License, or    *
0010 * (at your option) any later version.                                  *
0011 *                                                                      *
0012 * EvtGen is distributed in the hope that it will be useful,            *
0013 * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
0014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
0015 * GNU General Public License for more details.                         *
0016 *                                                                      *
0017 * You should have received a copy of the GNU General Public License    *
0018 * along with EvtGen.  If not, see <https://www.gnu.org/licenses/>.     *
0019 ***********************************************************************/
0020 
0021 #ifndef EVTBSTOLLLL_HYPERCPAMP_HH
0022 #define EVTBSTOLLLL_HYPERCPAMP_HH
0023 
0024 class EvtId;
0025 class EvtAmp;
0026 class EvtParticle;
0027 
0028 // Description: Preparation of the decay amplitude for the process:
0029 //              B^0_{q}(p,M1) -> ell^+(k1,m) ell^-(k2,m) ell^+(k3,m) ell^-(k4,m)
0030 //              in the HyperCP model.
0031 //
0032 //              [1] D.S.Gorbunov, Nucl.Phys.B602, pp.213-237 (2001);
0033 //              [2] S.V. Demidov, D.S.Gorbunov, hep-ph/1112.5230v2, 17 April 2012.
0034 //
0035 // Note: The code of this module is based on the EvtbsToLLLLAmp.cpp module code.
0036 
0037 class EvtbsToLLLLHyperCPAmp {
0038   public:
0039     void CalcAmp( EvtParticle* parent, EvtAmp& amp, double mS, double mP,
0040                   double gammaS, double gammaP, double mLiiLR, double Fc,
0041                   double mD23LL, double mD23RR, double mD32LL, double mD32RR,
0042                   double mD13LL, double mD13RR, double mD31LL, double mD31RR );
0043 
0044     double CalcMaxProb( EvtId parnum, EvtId l1num, EvtId l2num, EvtId l3num,
0045                         EvtId l4num, double mS, double mP, double gammaS,
0046                         double gammaP, double mLiiLR, double Fc, double mD23LL,
0047                         double mD23RR, double mD32LL, double mD32RR,
0048                         double mD13LL, double mD13RR, double mD31LL,
0049                         double mD31RR );
0050 
0051     double lambda( double a, double b, double c );
0052 };
0053 
0054 #endif