Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4KL3DecayChannel.hh
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// $Id$
28//
29//
30// ------------------------------------------------------------
31// GEANT 4 class header file
32//
33// History: first implementation, based on object model of
34// 7 June 1997 H.Kurashige
35// ------------------------------------------------------------
36#ifndef G4KL3DecayChannel_h
37#define G4KL3DecayChannel_h 1
38
39#include "G4ios.hh"
40#include "globals.hh"
41#include "G4VDecayChannel.hh"
42
44{
45 public: // With Description
46 //Constructors
47 G4KL3DecayChannel(const G4String& theParentName,
48 G4double theBR,
49 const G4String& thePionName,
50 const G4String& theLeptonName,
51 const G4String& theNutrinoName);
52 // Destructor
53 virtual ~G4KL3DecayChannel();
54
55 protected:
56 // Copy constructor and assignment operator
59
60 private:
62
63 public: // With Description
65
66 protected:
67 // assignment of daughter particles for arrays of daughters[] etc.
68 enum{idPi=0, idLepton=1, idNutrino=2};
70
71 protected:
72 // calcurate momentum of daughters
73 // results will be stored in Edaughter[3] and Pdaughter[3]
74 void PhaseSpace(G4double Mparent,
75 const G4double* Mdaughter,
76 G4double* Edaughter,
77 G4double* Pdaughter);
78
79 protected:
80 // Dalitz Plot Density
81 // KL3 decay Dalitz Plot Density
82 // see Chounet et al Phys. Rep. 4, 201
83 // arguments
84 // Epi: kinetic enregy of pion
85 // El: kinetic enregy of lepton (e or mu)
86 // Enu: kinetic energy of nutrino
87 // constants
88 // pLambda : linear energy dependence of f+
89 // pXi0 : = f+(0)/f-
90 // pNorm : normalization factor
92 private:
93 // constants used in DalitzDensity()
94 // Kon mass
95 G4double massK;
96 // coefficients
97 G4double pLambda;
98 G4double pXi0;
99
100 public:
101 void SetDalitzParameter(G4double aLambda, G4double aXi );
104};
105
106inline
108{
109 pLambda = aLambda;
110 pXi0 = aXi;
111}
112
113inline
115{
116 return pLambda;
117}
118
119inline
121{
122 return pXi0;
123}
124
125
126#endif
127
128
129
130
double G4double
Definition: G4Types.hh:64
void PhaseSpace(G4double Mparent, const G4double *Mdaughter, G4double *Edaughter, G4double *Pdaughter)
virtual G4DecayProducts * DecayIt(G4double)
G4double GetDalitzParameterLambda() const
G4double GetDalitzParameterXi() const
G4double DalitzDensity(G4double Epi, G4double El, G4double Enu)
void SetDalitzParameter(G4double aLambda, G4double aXi)
G4KL3DecayChannel & operator=(const G4KL3DecayChannel &)