|
|
|||
File indexing completed on 2026-08-06 09:20:06
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 EVTLAMBDAB2LAMBDAV_HH 0022 #define EVTLAMBDAB2LAMBDAV_HH 0023 0024 #include "EvtGenBase/EvtDecayProb.hh" 0025 #include "EvtGenBase/EvtGenKine.hh" 0026 #include "EvtGenBase/EvtPDL.hh" 0027 #include "EvtGenBase/EvtParticle.hh" 0028 #include "EvtGenBase/EvtReport.hh" 0029 0030 #include <stdlib.h> 0031 #include <string> 0032 0033 namespace VID { 0034 enum VectorMesonType 0035 { 0036 JPSI, 0037 OMEGA, 0038 RHO, 0039 RHO_OMEGA_MIXING 0040 }; 0041 } 0042 0043 // Description: 0044 // Class to generate LambdaB -> Lambda(p pi) V(Vp Vm) decays 0045 // with V a vector meson such as J/psi (mu+mu-) 0046 // Rho (pi+pi-) 0047 // Omega (pi+pi-) 0048 // Rho-omega mixing (pi+pi-) 0049 // 0050 // DECAY : LambdaB -> Lambda + vector meson 0051 // 0052 // d(Sigma) 0053 // -------- = 1 + A*B*cos(theta) + 2*A*Re(C*exp(i*phi))*sin(theta) 0054 // d(Omega) 0055 // 0056 // with A (real) : lambdaB helicity asymmetry parameter 0057 // B (real) : lambdaB polarisation 0058 // C (complex) : lambdaB density matrix element rho+- 0059 // 0060 // cf : O. Leitner, Z.J Ajaltouni, E. Conte, 0061 // PCCF RI 0601, ECT-05-15, LPNHE/2006-01, hep-ph/0602043 0062 0063 class EvtLambdaB2LambdaV : public EvtDecayProb { 0064 public: 0065 EvtLambdaB2LambdaV(); 0066 0067 EvtDecayBase* clone() override; 0068 0069 std::string getName() override; 0070 void init() override; 0071 void initProbMax() override; 0072 void decay( EvtParticle* lambdab ) override; 0073 0074 private: 0075 //class name for report method 0076 std::string fname; 0077 0078 //meson vector identity 0079 VID::VectorMesonType Vtype; 0080 0081 //decay dynamics parameters 0082 double A; 0083 double B; 0084 EvtComplex C; 0085 0086 //V mass generator method 0087 double getVMass( double MASS_LAMBDAB, double MASS_LAMBDA ); 0088 0089 //PDF generator method 0090 double BreitWignerRelPDF( double m, double _m0, double _g0 ); 0091 double RhoOmegaMixingPDF( double m, double _mr, double _gr, double _mo, 0092 double _go ); 0093 }; 0094 0095 //******************************************************************* 0096 //* * 0097 //* Class EvtLambda2PPiForLambdaB2LambdaV * 0098 //* * 0099 //******************************************************************* 0100 // 0101 // DECAY : Lambda -> p + pi- 0102 // 0103 // d(Sigma) 0104 // -------- = 1 + A*B*cos(theta) + 2*A*Re(D*exp(i*phi))*sin(theta) 0105 // d(Omega) 0106 // 0107 // with A (real) : lambda asymmetry parameter 0108 // B (real) : lambda polarisation 0109 // C (real) : lambdaB polarisation 0110 // D (complex) : lambda density matrix element rho+- 0111 // 0112 // cf : O. Leitner, Z.J Ajaltouni, E. Conte 0113 // PCCF RI 0601, ECT-05-15, LPNHE/2006-01, hep-ph/0602043 0114 0115 class EvtLambda2PPiForLambdaB2LambdaV : public EvtDecayProb { 0116 public: 0117 EvtLambda2PPiForLambdaB2LambdaV(); 0118 EvtDecayBase* clone() override; 0119 0120 std::string getName() override; 0121 void init() override; 0122 void initProbMax() override; 0123 void decay( EvtParticle* lambda ) override; 0124 0125 private: 0126 //class name for report method 0127 std::string fname; 0128 0129 //meson vector identity 0130 VID::VectorMesonType Vtype; 0131 0132 //decay dynamics parameters 0133 double A; 0134 double B; 0135 double C; 0136 EvtComplex D; 0137 }; 0138 0139 //******************************************************************* 0140 //* * 0141 //* Class EvtV2VpVmForLambdaB2LambdaV * 0142 //* * 0143 //******************************************************************* 0144 // 0145 // DECAY : vector meson V -> Vp + Vm 0146 // 0147 // d(Sigma) 0148 // -------- = (1-3A)*cos(theta)^2 + (1+A) //leptonic decays 0149 // d(Omega) 0150 // 0151 // d(Sigma) 0152 // -------- = (3A-1)*cos(theta)^2 + (1-A) //hadronic decays 0153 // d(Omega) 0154 // 0155 // with A (real) : V density matrix element indicating the 0156 // probability to be longitudinally polarized 0157 // 0158 // cf : O. Leitner, Z.J Ajaltouni, E. Conte 0159 // PCCF RI 0601, ECT-05-15, LPNHE/2006-01, hep-ph/0602043 0160 0161 class EvtV2VpVmForLambdaB2LambdaV : public EvtDecayProb { 0162 public: 0163 EvtV2VpVmForLambdaB2LambdaV(); 0164 0165 EvtDecayBase* clone() override; 0166 0167 std::string getName() override; 0168 void init() override; 0169 void initProbMax() override; 0170 void decay( EvtParticle* V ) override; 0171 0172 private: 0173 //class name for report method 0174 std::string fname; 0175 0176 //meson vector identity 0177 VID::VectorMesonType Vtype; 0178 //decay dynamics parameters 0179 double A; 0180 }; 0181 0182 #endif
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|