Import Geant4 0.0.0 source tree
This commit is contained in:
@@ -0,0 +1,120 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiLambda.cc,v 2.2 1998/09/24 09:23:57 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiLambda.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiLambda ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiLambda::G4AntiLambda(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[2];
|
||||
// anti_lambda -> anti_proton + pi+
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_lambda",0.639,2,"anti_proton","pi+");
|
||||
// anti_lambda -> anti_neutron + pi0
|
||||
mode[1] = new G4PhaseSpaceDecayChannel("anti_lambda",0.358,2,"anti_neutron","pi0");
|
||||
|
||||
for (G4int index=0; index <2; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiLambda G4AntiLambda::theAntiLambda(
|
||||
"anti_lambda", 1.115684*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, -1, -3122,
|
||||
false, 0.2632*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiLambda* G4AntiLambda::AntiLambdaDefinition(){return &theAntiLambda;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiLambda::theAntiLambdaLengthCut = -1.0;
|
||||
G4double* G4AntiLambda::theAntiLambdaKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4AntiLambda::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiLambdaLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiLambdaKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiLambdacPlus.cc,v 2.1 1998/08/04 11:14:46 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiLambdacPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiLambdacPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiLambdacPlus::G4AntiLambdacPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiLambdacPlus G4AntiLambdacPlus::theAntiLambdacPlus(
|
||||
"anti_lambda_c+", 2.2849*GeV, 0.0*MeV, -1.*eplus,
|
||||
1, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, +1, -4122,
|
||||
false, 0.206e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiLambdacPlus* G4AntiLambdacPlus::AntiLambdacPlusDefinition(){return &theAntiLambdacPlus;}
|
||||
G4AntiLambdacPlus* G4AntiLambdacPlus::AntiLambdacPlus(){return &theAntiLambdacPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiLambdacPlus::theAntiLambdacPlusLengthCut = -1.0;
|
||||
G4double* G4AntiLambdacPlus::theAntiLambdacPlusKineticEnergyCuts = NULL;
|
||||
|
||||
@@ -0,0 +1,105 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiNeutron.cc,v 2.3 1998/09/24 09:24:00 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// H.Kurashige 7 July 1996
|
||||
// **********************************************************************
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiNeutron.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### ANTI NEUTRON ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiNeutron::G4AntiNeutron(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
//
|
||||
G4AntiNeutron G4AntiNeutron::theAntiNeutron(
|
||||
"anti_neutron", 0.93956563*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
1, +1, 0,
|
||||
"baryon", 0, -1, -2112,
|
||||
true, -1.0, NULL
|
||||
);
|
||||
G4AntiNeutron* G4AntiNeutron::AntiNeutronDefinition(){return &theAntiNeutron;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiNeutron::theAntiNeutronLengthCut = -1.0;
|
||||
G4double* G4AntiNeutron::theAntiNeutronKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4AntiNeutron::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiNeutronLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiNeutronKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiOmegaMinus.cc,v 2.2 1998/09/24 09:24:01 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiOmegaMinus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiOmegaMinus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiOmegaMinus::G4AntiOmegaMinus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[3];
|
||||
// anti_omega- -> anti_lambda + kaon+
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_omega-",0.678,2,"anti_lambda","kaon+");
|
||||
// anti_omega- -> anti_xi0 + pi+
|
||||
mode[1] = new G4PhaseSpaceDecayChannel("anti_omega-",0.236,2,"anti_xi0","pi+");
|
||||
// anti_omega- -> anti_xi- + pi0
|
||||
mode[2] = new G4PhaseSpaceDecayChannel("anti_omega-",0.086,2,"anti_xi-","pi0");
|
||||
|
||||
for (G4int index=0; index <3; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiOmegaMinus G4AntiOmegaMinus::theAntiOmegaMinus(
|
||||
"anti_omega-", 1.67245*GeV, 0.0*MeV, eplus,
|
||||
3, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, -1, -3334,
|
||||
false, 0.0822*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiOmegaMinus* G4AntiOmegaMinus::AntiOmegaMinusDefinition(){return &theAntiOmegaMinus;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiOmegaMinus::theAntiOmegaMinusLengthCut = -1.0;
|
||||
G4double* G4AntiOmegaMinus::theAntiOmegaMinusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,105 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiOmegacZero.cc,v 2.1 1998/08/04 11:14:48 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiOmegacZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiOmegacZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiOmegacZero::G4AntiOmegacZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiOmegacZero G4AntiOmegacZero::theAntiOmegacZero(
|
||||
"anti_omega_c0", 2.704*GeV, 0.0*MeV, 0.*eplus,
|
||||
1, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, -1, -4332,
|
||||
false, 0.064e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiOmegacZero* G4AntiOmegacZero::AntiOmegacZeroDefinition(){return &theAntiOmegacZero;}
|
||||
G4AntiOmegacZero* G4AntiOmegacZero::AntiOmegacZero(){return &theAntiOmegacZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiOmegacZero::theAntiOmegacZeroLengthCut = -1.0;
|
||||
G4double* G4AntiOmegacZero::theAntiOmegacZeroKineticEnergyCuts = NULL;
|
||||
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4AntiOmegacZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiOmegacZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiOmegacZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiProton.cc,v 2.2 1998/09/24 09:24:02 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// H.Kurashige 7 July 1996
|
||||
// **********************************************************************
|
||||
// ----------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiProton.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### ANTIPROTON ###
|
||||
// ######################################################################
|
||||
G4AntiProton::G4AntiProton(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
//
|
||||
G4AntiProton G4AntiProton::theAntiProton(
|
||||
"anti_proton", 0.9382723*GeV, 0.0*MeV, -1.0*eplus,
|
||||
1, +1, 0,
|
||||
1, -1, 0,
|
||||
"baryon", 0, -1, -2212,
|
||||
true, -1.0, NULL
|
||||
);
|
||||
|
||||
G4AntiProton* G4AntiProton::AntiProtonDefinition(){return &theAntiProton;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiProton::theAntiProtonLengthCut = -1.0;
|
||||
G4double* G4AntiProton::theAntiProtonKineticEnergyCuts = NULL;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,92 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiSigmaMinus.cc,v 2.2 1998/09/24 09:24:03 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiSigmaMinus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiSigmaMinus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiSigmaMinus::G4AntiSigmaMinus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// anti_sigma- -> anti_neutron + pi+
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_sigma-",1.00,2,"anti_neutron","pi+");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiSigmaMinus G4AntiSigmaMinus::theAntiSigmaMinus(
|
||||
"anti_sigma-", 1.19744*GeV, 0.0*MeV, eplus,
|
||||
1, +1, 0,
|
||||
2, +2, 0,
|
||||
"baryon", 0, -1, -3112,
|
||||
false, 0.1479*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiSigmaMinus* G4AntiSigmaMinus::AntiSigmaMinusDefinition()
|
||||
{
|
||||
return &theAntiSigmaMinus;
|
||||
}
|
||||
|
||||
// initialization for static cut values
|
||||
G4double G4AntiSigmaMinus::theAntiSigmaMinusLengthCut = -1.0;
|
||||
G4double* G4AntiSigmaMinus::theAntiSigmaMinusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,96 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiSigmaPlus.cc,v 2.2 1998/09/24 09:24:04 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiSigmaPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiSigmaPlus #######
|
||||
// ######################################################################
|
||||
|
||||
G4AntiSigmaPlus::G4AntiSigmaPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[2];
|
||||
// anti_sigma+ -> anti_proton + pi0
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_sigma+",0.516,2,"anti_proton","pi0");
|
||||
// anti_sigma+ -> anti_neutron + pi+
|
||||
mode[1] = new G4PhaseSpaceDecayChannel("anti_sigma+",0.483,2,"anti_neutron","pi-");
|
||||
|
||||
for (G4int index=0; index <2; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiSigmaPlus G4AntiSigmaPlus::theAntiSigmaPlus(
|
||||
"anti_sigma+", 1.18937*GeV, 0.0*MeV, -1.*eplus,
|
||||
1, +1, 0,
|
||||
2, -2, 0,
|
||||
"baryon", 0, -1, -3222,
|
||||
false, 0.0799*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiSigmaPlus* G4AntiSigmaPlus::AntiSigmaPlusDefinition()
|
||||
{
|
||||
return &theAntiSigmaPlus;
|
||||
}
|
||||
|
||||
// initialization for static cut values
|
||||
G4double G4AntiSigmaPlus::theAntiSigmaPlusLengthCut = -1.0;
|
||||
G4double* G4AntiSigmaPlus::theAntiSigmaPlusKineticEnergyCuts = NULL;
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiSigmaZero.cc,v 2.2 1998/09/24 09:24:05 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiSigmaZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiSigmaZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiSigmaZero::G4AntiSigmaZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
// anti_sigma0 -> anti_lambda + gamma
|
||||
G4VDecayChannel* mode = new G4PhaseSpaceDecayChannel("anti_sigma0",1.000,2,"anti_lambda","gamma");
|
||||
|
||||
table->Insert(mode);
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiSigmaZero G4AntiSigmaZero::theAntiSigmaZero(
|
||||
"anti_sigma0", 1.19255*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
2, 0, 0,
|
||||
"baryon", 0, -1, -3212,
|
||||
false, 7.4e-11*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiSigmaZero* G4AntiSigmaZero::AntiSigmaZeroDefinition()
|
||||
{
|
||||
return &theAntiSigmaZero;
|
||||
}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiSigmaZero::theAntiSigmaZeroLengthCut = -1.0;
|
||||
G4double* G4AntiSigmaZero::theAntiSigmaZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4AntiSigmaZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiSigmaZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiSigmaZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiSigmacPlus.cc,v 2.1 1998/08/04 11:14:51 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiSigmacPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiSigmacPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiSigmacPlus::G4AntiSigmacPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// anti_sigmac+ -> anti_lambda_c + pi0
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_sigma_c+",1.000,2,"anti_lambda_c+","pi0");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiSigmacPlus G4AntiSigmacPlus::theAntiSigmacPlus(
|
||||
"anti_sigma_c+", 2.4535*GeV, 0.0*MeV, -1.0*eplus,
|
||||
1, +1, 0,
|
||||
2, -1, 0,
|
||||
"baryon", 0, -1, -4212,
|
||||
false, 0.0*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiSigmacPlus* G4AntiSigmacPlus::AntiSigmacPlusDefinition(){return &theAntiSigmacPlus;}
|
||||
G4AntiSigmacPlus* G4AntiSigmacPlus::AntiSigmacPlus(){return &theAntiSigmacPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiSigmacPlus::theAntiSigmacPlusLengthCut = -1.0;
|
||||
G4double* G4AntiSigmacPlus::theAntiSigmacPlusKineticEnergyCuts = NULL;
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiSigmacPlusPlus.cc,v 2.1 1998/08/04 11:14:52 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiSigmacPlusPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiSigmacPlusPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiSigmacPlusPlus::G4AntiSigmacPlusPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// anti_sigma_c++ -> anti_lambda_c+ + pi-
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_sigma_c++",1.000,2,"anti_lambda_c+","pi-");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiSigmacPlusPlus G4AntiSigmacPlusPlus::theAntiSigmacPlusPlus(
|
||||
"anti_sigma_c++", 2.4529*GeV, 0.0*MeV, -2.0*eplus,
|
||||
1, +1, 0,
|
||||
2, -2, 0,
|
||||
"baryon", 0, -1, -4222,
|
||||
false, 0.0*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiSigmacPlusPlus* G4AntiSigmacPlusPlus::AntiSigmacPlusPlusDefinition(){return &theAntiSigmacPlusPlus;}
|
||||
G4AntiSigmacPlusPlus* G4AntiSigmacPlusPlus::AntiSigmacPlusPlus(){return &theAntiSigmacPlusPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiSigmacPlusPlus::theAntiSigmacPlusPlusLengthCut = -1.0;
|
||||
G4double* G4AntiSigmacPlusPlus::theAntiSigmacPlusPlusKineticEnergyCuts = NULL;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,122 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiSigmacZero.cc,v 2.1 1998/08/04 11:14:53 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiSigmacZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiSigmacZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiSigmacZero::G4AntiSigmacZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// anti_sigmac0 -> anti_lambda_c+ + pi+
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_sigma_c0",1.000,2,"anti_lambda_c+","pi+");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiSigmacZero G4AntiSigmacZero::theAntiSigmacZero(
|
||||
"anti_sigma_c0", 2.4521*GeV, 0.0*MeV, +0.0*eplus,
|
||||
1, +1, 0,
|
||||
2, 0, 0,
|
||||
"baryon", 0, -1, -4112,
|
||||
false, 0.0*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiSigmacZero* G4AntiSigmacZero::AntiSigmacZeroDefinition(){return &theAntiSigmacZero;}
|
||||
G4AntiSigmacZero* G4AntiSigmacZero::AntiSigmacZero(){return &theAntiSigmacZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiSigmacZero::theAntiSigmacZeroLengthCut = -1.0;
|
||||
G4double* G4AntiSigmacZero::theAntiSigmacZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
|
||||
void G4AntiSigmacZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiSigmacZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiSigmacZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiXiMinus.cc,v 2.2 1998/09/24 09:24:06 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiXiMinus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiXiMinus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiXiMinus::G4AntiXiMinus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// anti_xi- -> anti_lambda + pi+
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_xi-",1.000,2,"anti_lambda","pi+");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiXiMinus G4AntiXiMinus::theAntiXiMinus(
|
||||
"anti_xi-", 1.32132*GeV, 0.0*MeV, eplus,
|
||||
1, +1, 0,
|
||||
1, +1, 0,
|
||||
"baryon", 0, -1, -3312,
|
||||
false, 0.1639*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiXiMinus* G4AntiXiMinus::AntiXiMinusDefinition()
|
||||
{
|
||||
return &theAntiXiMinus;
|
||||
}
|
||||
|
||||
// initialization for static cut values
|
||||
G4double G4AntiXiMinus::theAntiXiMinusLengthCut = -1.0;
|
||||
G4double* G4AntiXiMinus::theAntiXiMinusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,116 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiXiZero.cc,v 2.2 1998/09/24 09:24:07 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiXiZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiXiZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiXiZero::G4AntiXiZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// anti_xi0 -> anti_lambda + pi0
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("anti_xi0",1.000,2,"anti_lambda","pi0");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiXiZero G4AntiXiZero::theAntiXiZero(
|
||||
"anti_xi0", 1.3149*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
1, -1, 0,
|
||||
"baryon", 0, -1, -3322,
|
||||
false, 0.290*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiXiZero* G4AntiXiZero::AntiXiZeroDefinition(){return &theAntiXiZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiXiZero::theAntiXiZeroLengthCut = -1.0;
|
||||
G4double* G4AntiXiZero::theAntiXiZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4AntiXiZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiXiZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiXiZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiXicPlus.cc,v 2.2 1998/09/24 09:24:08 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// Modified PDG encoding H.Kurashige 24 Sep. 98
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiXicPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiXicPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiXicPlus::G4AntiXicPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiXicPlus G4AntiXicPlus::theAntiXicPlus(
|
||||
"anti_xi_c+", 2.4656*GeV, 0.0*MeV, -1.*eplus,
|
||||
1, +1, 0,
|
||||
1, -1, 0,
|
||||
"baryon", 0, -1, -4232,
|
||||
false, 0.35e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiXicPlus* G4AntiXicPlus::AntiXicPlusDefinition(){return &theAntiXicPlus;}
|
||||
G4AntiXicPlus* G4AntiXicPlus::AntiXicPlus(){return &theAntiXicPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiXicPlus::theAntiXicPlusLengthCut = -1.0;
|
||||
G4double* G4AntiXicPlus::theAntiXicPlusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,105 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4AntiXicZero.cc,v 2.2 1998/09/24 09:24:09 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// Modified PDG encoding H.Kurashige 24 Sep. 98
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4AntiXicZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### AntiXicZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4AntiXicZero::G4AntiXicZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4AntiXicZero G4AntiXicZero::theAntiXicZero(
|
||||
"anti_xi_c0", 2.4703*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
1, +1, 0,
|
||||
"baryon", 0, -1, -4132,
|
||||
false, 0.098e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4AntiXicZero* G4AntiXicZero::AntiXicZeroDefinition(){return &theAntiXicZero;}
|
||||
G4AntiXicZero* G4AntiXicZero::AntiXicZero(){return &theAntiXicZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4AntiXicZero::theAntiXicZeroLengthCut = -1.0;
|
||||
G4double* G4AntiXicZero::theAntiXicZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4AntiXicZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theAntiXicZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theAntiXicZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,119 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4BarionConstructor.cc,v 2.0 1998/07/02 17:22:18 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
|
||||
#include "G4BarionConstructor.hh"
|
||||
|
||||
#include "G4ParticleDefinition.hh"
|
||||
#include "G4ParticleTable.hh"
|
||||
// Barions
|
||||
#include "G4Proton.hh"
|
||||
#include "G4AntiProton.hh"
|
||||
#include "G4Neutron.hh"
|
||||
#include "G4AntiNeutron.hh"
|
||||
|
||||
#include "G4Lambda.hh"
|
||||
#include "G4SigmaPlus.hh"
|
||||
#include "G4SigmaZero.hh"
|
||||
#include "G4SigmaMinus.hh"
|
||||
#include "G4XiMinus.hh"
|
||||
#include "G4XiZero.hh"
|
||||
#include "G4OmegaMinus.hh"
|
||||
|
||||
#include "G4AntiLambda.hh"
|
||||
#include "G4AntiSigmaPlus.hh"
|
||||
#include "G4AntiSigmaZero.hh"
|
||||
#include "G4AntiSigmaMinus.hh"
|
||||
#include "G4AntiXiMinus.hh"
|
||||
#include "G4AntiXiZero.hh"
|
||||
#include "G4AntiOmegaMinus.hh"
|
||||
|
||||
#include "G4LambdacPlus.hh"
|
||||
#include "G4SigmacPlusPlus.hh"
|
||||
#include "G4SigmacPlus.hh"
|
||||
#include "G4SigmacZero.hh"
|
||||
#include "G4XicPlus.hh"
|
||||
#include "G4XicZero.hh"
|
||||
#include "G4OmegacZero.hh"
|
||||
|
||||
#include "G4AntiLambdacPlus.hh"
|
||||
#include "G4AntiSigmacPlusPlus.hh"
|
||||
#include "G4AntiSigmacPlus.hh"
|
||||
#include "G4AntiSigmacZero.hh"
|
||||
#include "G4AntiXicPlus.hh"
|
||||
#include "G4AntiXicZero.hh"
|
||||
#include "G4AntiOmegacZero.hh"
|
||||
|
||||
G4BarionConstructor::G4BarionConstructor()
|
||||
{
|
||||
}
|
||||
|
||||
G4BarionConstructor::~G4BarionConstructor()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void G4BarionConstructor::ConstructParticle()
|
||||
{
|
||||
ConstructNucleons();
|
||||
ConstructStrangeBarions();
|
||||
ConstructCharmBarions();
|
||||
ConstructBottomBarions();
|
||||
}
|
||||
|
||||
void G4BarionConstructor::ConstructNucleons()
|
||||
{
|
||||
G4Proton::ProtonDefinition();
|
||||
G4AntiProton::AntiProtonDefinition();
|
||||
G4Neutron::NeutronDefinition();
|
||||
G4AntiNeutron::AntiNeutronDefinition();
|
||||
}
|
||||
void G4BarionConstructor::ConstructStrangeBarions()
|
||||
{
|
||||
G4Lambda::LambdaDefinition();
|
||||
G4AntiLambda::AntiLambdaDefinition();
|
||||
G4SigmaZero::SigmaZeroDefinition();
|
||||
G4AntiSigmaZero::AntiSigmaZeroDefinition();
|
||||
G4SigmaPlus::SigmaPlusDefinition();
|
||||
G4AntiSigmaPlus::AntiSigmaPlusDefinition();
|
||||
G4SigmaMinus::SigmaMinusDefinition();
|
||||
G4AntiSigmaMinus::AntiSigmaMinusDefinition();
|
||||
G4XiZero::XiZeroDefinition();
|
||||
G4AntiXiZero::AntiXiZeroDefinition();
|
||||
G4XiMinus::XiMinusDefinition();
|
||||
G4AntiXiMinus::AntiXiMinusDefinition();
|
||||
G4OmegaMinus::OmegaMinusDefinition();
|
||||
G4AntiOmegaMinus::AntiOmegaMinusDefinition();
|
||||
}
|
||||
void G4BarionConstructor::ConstructCharmBarions()
|
||||
{
|
||||
G4LambdacPlus::LambdacPlusDefinition();
|
||||
G4SigmacPlusPlus::SigmacPlusPlusDefinition();
|
||||
G4SigmacPlus::SigmacPlusDefinition();
|
||||
G4SigmacZero::SigmacZeroDefinition();
|
||||
G4XicPlus::XicPlusDefinition();
|
||||
G4XicZero::XicZeroDefinition();
|
||||
G4OmegacZero::OmegacZeroDefinition();
|
||||
G4AntiLambdacPlus::AntiLambdacPlusDefinition();
|
||||
G4AntiSigmacPlusPlus::AntiSigmacPlusPlusDefinition();
|
||||
G4AntiSigmacPlus::AntiSigmacPlusDefinition();
|
||||
G4AntiSigmacZero::AntiSigmacZeroDefinition();
|
||||
G4AntiXicPlus::AntiXicPlusDefinition();
|
||||
G4AntiXicZero::AntiXicZeroDefinition();
|
||||
G4AntiOmegacZero::AntiOmegacZeroDefinition();
|
||||
}
|
||||
|
||||
void G4BarionConstructor::ConstructBottomBarions()
|
||||
{
|
||||
}
|
||||
@@ -0,0 +1,118 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4Lambda.cc,v 2.2 1998/09/24 09:24:10 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4Lambda.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### Lambda ###
|
||||
// ######################################################################
|
||||
|
||||
G4Lambda::G4Lambda(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[2];
|
||||
// lambda -> proton + pi-
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("lambda",0.639,2,"proton","pi-");
|
||||
// lambda -> neutron + pi0
|
||||
mode[1] = new G4PhaseSpaceDecayChannel("lambda",0.358,2,"neutron","pi0");
|
||||
|
||||
for (G4int index=0; index <2; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4Lambda G4Lambda::theLambda(
|
||||
"lambda", 1.115684*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, +1, 3122,
|
||||
false, 0.2632*ns, NULL
|
||||
);
|
||||
|
||||
G4Lambda* G4Lambda::LambdaDefinition(){return &theLambda;}
|
||||
// initialization for static cut values
|
||||
G4double G4Lambda::theLambdaLengthCut = -1.0;
|
||||
G4double* G4Lambda::theLambdaKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4Lambda::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theLambdaLengthCut = theCutInMaxInteractionLength;
|
||||
theLambdaKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4LambdacPlus.cc,v 2.1 1998/08/04 11:14:56 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 12 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4LambdacPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### LambdacPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4LambdacPlus::G4LambdacPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4LambdacPlus G4LambdacPlus::theLambdacPlus(
|
||||
"lambda_c+", 2.2849*GeV, 0.0*MeV, +1.*eplus,
|
||||
1, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, +1, 4122,
|
||||
false, 0.206e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4LambdacPlus* G4LambdacPlus::LambdacPlusDefinition(){return &theLambdacPlus;}
|
||||
G4LambdacPlus* G4LambdacPlus::LambdacPlus(){return &theLambdacPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4LambdacPlus::theLambdacPlusLengthCut = -1.0;
|
||||
G4double* G4LambdacPlus::theLambdacPlusKineticEnergyCuts = NULL;
|
||||
|
||||
@@ -0,0 +1,103 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4Neutron.cc,v 2.3 1998/09/24 09:24:11 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// H.Kurashige 7 July 1996
|
||||
// **********************************************************************
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4Neutron.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### NEUTRON ###
|
||||
// ######################################################################
|
||||
|
||||
G4Neutron::G4Neutron(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4Neutron G4Neutron::theNeutron(
|
||||
"neutron", 0.93956563*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
1, -1, 0,
|
||||
"baryon", 0, +1, 2112,
|
||||
true, -1.0, NULL
|
||||
);
|
||||
|
||||
G4Neutron* G4Neutron::NeutronDefinition(){return &theNeutron;}
|
||||
// initialization for static cut values
|
||||
G4double G4Neutron::theNeutronLengthCut = -1.0;
|
||||
G4double* G4Neutron::theNeutronKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4Neutron::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theNeutronLengthCut = theCutInMaxInteractionLength;
|
||||
theNeutronKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4OmegaMinus.cc,v 2.2 1998/09/24 09:24:12 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4OmegaMinus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### OmegaMinus ###
|
||||
// ######################################################################
|
||||
|
||||
G4OmegaMinus::G4OmegaMinus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[3];
|
||||
// omega- -> lambda + kaon-
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("omega-",0.678,2,"lambda","kaon-");
|
||||
// omega- -> xi0 + pi-
|
||||
mode[1] = new G4PhaseSpaceDecayChannel("omega-",0.236,2,"xi0","pi-");
|
||||
// omega- -> xi- + pi0
|
||||
mode[2] = new G4PhaseSpaceDecayChannel("omega-",0.086,2,"xi-","pi0");
|
||||
|
||||
for (G4int index=0; index <3; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4OmegaMinus G4OmegaMinus::theOmegaMinus(
|
||||
"omega-", 1.67245*GeV, 0.0*MeV, -1*eplus,
|
||||
3, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, +1, 3334,
|
||||
false, 0.0822*ns, NULL
|
||||
);
|
||||
|
||||
G4OmegaMinus* G4OmegaMinus::OmegaMinusDefinition(){return &theOmegaMinus;}
|
||||
// initialization for static cut values
|
||||
G4double G4OmegaMinus::theOmegaMinusLengthCut = -1.0;
|
||||
G4double* G4OmegaMinus::theOmegaMinusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,105 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4OmegacZero.cc,v 2.1 1998/08/04 11:14:58 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4OmegacZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### OmegacZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4OmegacZero::G4OmegacZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4OmegacZero G4OmegacZero::theOmegacZero(
|
||||
"omega_c0", 2.704*GeV, 0.0*MeV, 0.*eplus,
|
||||
1, +1, 0,
|
||||
0, 0, 0,
|
||||
"baryon", 0, +1, 4332,
|
||||
false, 0.064e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4OmegacZero* G4OmegacZero::OmegacZeroDefinition(){return &theOmegacZero;}
|
||||
G4OmegacZero* G4OmegacZero::OmegacZero(){return &theOmegacZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4OmegacZero::theOmegacZeroLengthCut = -1.0;
|
||||
G4double* G4OmegacZero::theOmegacZeroKineticEnergyCuts = NULL;
|
||||
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4OmegacZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theOmegacZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theOmegacZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4Proton.cc,v 2.2 1998/09/24 09:24:13 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 19 April 1996
|
||||
// Code uses operators (+=, *=, ++, -> etc.) correctly, P. Urban, 26/6/96
|
||||
// Add ProtonDefinition(), H.Kurashige 4 July 1996
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4Proton.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### PROTON ###
|
||||
// ######################################################################
|
||||
|
||||
G4Proton::G4Proton(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4Proton G4Proton::theProton(
|
||||
"proton", 0.9382723*GeV, 0.0*MeV, eplus,
|
||||
1, +1, 0,
|
||||
1, +1, 0,
|
||||
"baryon", 0, +1, 2212,
|
||||
true, -1.0, NULL
|
||||
);
|
||||
|
||||
G4Proton* G4Proton::ProtonDefinition(){return &theProton;}
|
||||
// initialization for static cut values
|
||||
G4double G4Proton::theProtonLengthCut = -1.0;
|
||||
G4double* G4Proton::theProtonKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,87 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4SigmaMinus.cc,v 2.2 1998/09/24 09:24:14 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4SigmaMinus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### SigmaMinus ###
|
||||
// ######################################################################
|
||||
|
||||
G4SigmaMinus::G4SigmaMinus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// sigma- -> neutron + pi-
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("sigma-",1.00,2,"neutron","pi-");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4SigmaMinus G4SigmaMinus::theSigmaMinus(
|
||||
"sigma-", 1.19744*GeV, 0.0*MeV, -1*eplus,
|
||||
1, +1, 0,
|
||||
2, -2, 0,
|
||||
"baryon", 0, +1, 3112,
|
||||
false, 0.1479*ns, NULL
|
||||
);
|
||||
|
||||
G4SigmaMinus* G4SigmaMinus::SigmaMinusDefinition(){return &theSigmaMinus;}
|
||||
// initialization for static cut values
|
||||
G4double G4SigmaMinus::theSigmaMinusLengthCut = -1.0;
|
||||
G4double* G4SigmaMinus::theSigmaMinusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,89 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4SigmaPlus.cc,v 2.2 1998/09/24 09:24:15 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4SigmaPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### SigmaPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4SigmaPlus::G4SigmaPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[2];
|
||||
// sigma+ -> proton + pi0
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("sigma+",0.516,2,"proton","pi0");
|
||||
// sigma+ -> neutron + pi+
|
||||
mode[1] = new G4PhaseSpaceDecayChannel("sigma+",0.483,2,"neutron","pi+");
|
||||
|
||||
for (G4int index=0; index <2; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4SigmaPlus G4SigmaPlus::theSigmaPlus(
|
||||
"sigma+", 1.18937*GeV, 0.0*MeV, eplus,
|
||||
1, +1, 0,
|
||||
2, +2, 0,
|
||||
"baryon", 0, +1, 3222,
|
||||
false, 0.0799*ns, NULL
|
||||
);
|
||||
|
||||
G4SigmaPlus* G4SigmaPlus::SigmaPlusDefinition(){return &theSigmaPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4SigmaPlus::theSigmaPlusLengthCut = -1.0;
|
||||
G4double* G4SigmaPlus::theSigmaPlusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,121 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4SigmaZero.cc,v 2.2 1998/09/24 09:24:16 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4SigmaZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### SigmaZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4SigmaZero::G4SigmaZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
// sigma0 -> lambda + gamma
|
||||
G4VDecayChannel* mode = new G4PhaseSpaceDecayChannel("sigma0",1.000,2,"lambda","gamma");
|
||||
|
||||
table->Insert(mode);
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4SigmaZero G4SigmaZero::theSigmaZero(
|
||||
"sigma0", 1.19255*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
2, 0, 0,
|
||||
"baryon", 0, +1, 3212,
|
||||
false, 7.4e-11*ns, NULL
|
||||
);
|
||||
|
||||
G4SigmaZero* G4SigmaZero::SigmaZeroDefinition(){return &theSigmaZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4SigmaZero::theSigmaZeroLengthCut = -1.0;
|
||||
G4double* G4SigmaZero::theSigmaZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4SigmaZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theSigmaZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theSigmaZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4SigmacPlus.cc,v 2.1 1998/08/04 11:15:01 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4SigmacPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### SigmacPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4SigmacPlus::G4SigmacPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// sigmac+ -> lambda_c + pi0
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("sigma_c+",1.000,2,"lambda_c+","pi0");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4SigmacPlus G4SigmacPlus::theSigmacPlus(
|
||||
"sigma_c+", 2.4535*GeV, 0.0*MeV, +1.0*eplus,
|
||||
1, +1, 0,
|
||||
2, +1, 0,
|
||||
"baryon", 0, +1, 4212,
|
||||
false, 0.0*ns, NULL
|
||||
);
|
||||
|
||||
G4SigmacPlus* G4SigmacPlus::SigmacPlusDefinition(){return &theSigmacPlus;}
|
||||
G4SigmacPlus* G4SigmacPlus::SigmacPlus(){return &theSigmacPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4SigmacPlus::theSigmacPlusLengthCut = -1.0;
|
||||
G4double* G4SigmacPlus::theSigmacPlusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,89 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4SigmacPlusPlus.cc,v 2.1 1998/08/04 11:15:01 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4SigmacPlusPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### SigmacPlusPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4SigmacPlusPlus::G4SigmacPlusPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// sigma_c++ -> lambda_c+ + pi+
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("sigma_c++",1.000,2,"lambda_c+","pi+");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4SigmacPlusPlus G4SigmacPlusPlus::theSigmacPlusPlus(
|
||||
"sigma_c++", 2.4529*GeV, 0.0*MeV, +2.0*eplus,
|
||||
1, +1, 0,
|
||||
2, +2, 0,
|
||||
"baryon", 0, +1, 4222,
|
||||
false, 0.0*ns, NULL
|
||||
);
|
||||
|
||||
G4SigmacPlusPlus* G4SigmacPlusPlus::SigmacPlusPlusDefinition(){return &theSigmacPlusPlus;}
|
||||
G4SigmacPlusPlus* G4SigmacPlusPlus::SigmacPlusPlus(){return &theSigmacPlusPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4SigmacPlusPlus::theSigmacPlusPlusLengthCut = -1.0;
|
||||
G4double* G4SigmacPlusPlus::theSigmacPlusPlusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,122 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4SigmacZero.cc,v 2.1 1998/08/04 11:15:02 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4SigmacZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### SigmacZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4SigmacZero::G4SigmacZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// sigmac0 -> lambda_c+ + pi-
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("sigma_c0",1.000,2,"lambda_c+","pi-");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4SigmacZero G4SigmacZero::theSigmacZero(
|
||||
"sigma_c0", 2.4521*GeV, 0.0*MeV, +0.0*eplus,
|
||||
1, +1, 0,
|
||||
2, 0, 0,
|
||||
"baryon", 0, +1, 4112,
|
||||
false, 0.0*ns, NULL
|
||||
);
|
||||
|
||||
G4SigmacZero* G4SigmacZero::SigmacZeroDefinition(){return &theSigmacZero;}
|
||||
G4SigmacZero* G4SigmacZero::SigmacZero(){return &theSigmacZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4SigmacZero::theSigmacZeroLengthCut = -1.0;
|
||||
G4double* G4SigmacZero::theSigmacZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
|
||||
void G4SigmacZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theSigmacZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theSigmacZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4VBarion.cc,v 2.0 1998/07/02 17:22:37 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 2nd December 1995, G.Cosmo
|
||||
// --------------------------------------------------------------
|
||||
|
||||
#include "G4VBarion.hh"
|
||||
|
||||
const G4VBarion & G4VBarion::operator=(const G4VBarion &right)
|
||||
{
|
||||
if (this != &right) {
|
||||
} return right;
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4XiMinus.cc,v 2.2 1998/09/24 09:24:17 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4XiMinus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### XiMinus ###
|
||||
// ######################################################################
|
||||
|
||||
G4XiMinus::G4XiMinus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// xi- -> lambda + pi-
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("xi-",1.000,2,"lambda","pi-");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4XiMinus G4XiMinus::theXiMinus(
|
||||
"xi-", 1.32132*GeV, 0.0*MeV, -1*eplus,
|
||||
1, +1, 0,
|
||||
1, -1, 0,
|
||||
"baryon", 0, +1, 3312,
|
||||
false, 0.1639*ns, NULL
|
||||
);
|
||||
|
||||
G4XiMinus* G4XiMinus::XiMinusDefinition(){return &theXiMinus;}
|
||||
// initialization for static cut values
|
||||
G4double G4XiMinus::theXiMinusLengthCut = -1.0;
|
||||
G4double* G4XiMinus::theXiMinusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,116 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4XiZero.cc,v 2.2 1998/09/24 09:24:18 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 Feb 1997
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4XiZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### XiZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4XiZero::G4XiZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
//create Decay Table
|
||||
G4DecayTable* table = GetDecayTable();
|
||||
if (table!=NULL) delete table;
|
||||
table = new G4DecayTable();
|
||||
|
||||
// create decay channels
|
||||
G4VDecayChannel** mode = new G4VDecayChannel*[1];
|
||||
// xi0 -> lambda + pi0
|
||||
mode[0] = new G4PhaseSpaceDecayChannel("xi0",1.000,2,"lambda","pi0");
|
||||
|
||||
for (G4int index=0; index <1; index++ ) table->Insert(mode[index]);
|
||||
delete [] mode;
|
||||
|
||||
SetDecayTable(table);
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4XiZero G4XiZero::theXiZero(
|
||||
"xi0", 1.3149*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
1, +1, 0,
|
||||
"baryon", 0, +1, 3322,
|
||||
false, 0.290*ns, NULL
|
||||
);
|
||||
|
||||
G4XiZero* G4XiZero::XiZeroDefinition(){return &theXiZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4XiZero::theXiZeroLengthCut = -1.0;
|
||||
G4double* G4XiZero::theXiZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4XiZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theXiZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theXiZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4XicPlus.cc,v 2.2 1998/09/24 09:24:19 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// Modified PDG encoding H.Kurashige 24 Sep. 98
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4XicPlus.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### XicPlus ###
|
||||
// ######################################################################
|
||||
|
||||
G4XicPlus::G4XicPlus(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4XicPlus G4XicPlus::theXicPlus(
|
||||
"xi_c+", 2.4656*GeV, 0.0*MeV, +1.*eplus,
|
||||
1, +1, 0,
|
||||
1, +1, 0,
|
||||
"baryon", 0, +1, 4232,
|
||||
false, 0.35e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4XicPlus* G4XicPlus::XicPlusDefinition(){return &theXicPlus;}
|
||||
G4XicPlus* G4XicPlus::XicPlus(){return &theXicPlus;}
|
||||
// initialization for static cut values
|
||||
G4double G4XicPlus::theXicPlusLengthCut = -1.0;
|
||||
G4double* G4XicPlus::theXicPlusKineticEnergyCuts = NULL;
|
||||
@@ -0,0 +1,105 @@
|
||||
// This code implementation is the intellectual property of
|
||||
// the RD44 GEANT4 collaboration.
|
||||
//
|
||||
// By copying, distributing or modifying the Program (or any work
|
||||
// based on the Program) you indicate your acceptance of this statement,
|
||||
// and all its terms.
|
||||
//
|
||||
// $Id: G4XicZero.cc,v 2.2 1998/09/24 09:24:20 kurasige Exp $
|
||||
// GEANT4 tag $Name: geant4-00 $
|
||||
//
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// GEANT 4 class implementation file
|
||||
//
|
||||
// For information related to this code contact:
|
||||
// CERN, CN Division, ASD Group
|
||||
// History: first implementation, based on object model of
|
||||
// 4th April 1996, G.Cosmo
|
||||
// **********************************************************************
|
||||
// Added particle definitions, H.Kurashige, 14 June 1997
|
||||
// Change both methods to get the pointer into non-inlined H.Kurashige 4 Aug. 1998
|
||||
// Modified PDG encoding H.Kurashige 24 Sep. 98
|
||||
// ----------------------------------------------------------------------
|
||||
|
||||
#include <fstream.h>
|
||||
#include <iomanip.h>
|
||||
|
||||
#include "G4XicZero.hh"
|
||||
|
||||
#include "G4PhaseSpaceDecayChannel.hh"
|
||||
#include "G4DecayTable.hh"
|
||||
|
||||
// ######################################################################
|
||||
// ### XicZero ###
|
||||
// ######################################################################
|
||||
|
||||
G4XicZero::G4XicZero(
|
||||
const G4String& aName, G4double mass,
|
||||
G4double width, G4double charge,
|
||||
G4int iSpin, G4int iParity,
|
||||
G4int iConjugation, G4int iIsospin,
|
||||
G4int iIsospin3, G4int gParity,
|
||||
const G4String& pType, G4int lepton,
|
||||
G4int baryon, G4int encoding,
|
||||
G4bool stable, G4double lifetime,
|
||||
G4DecayTable *decaytable )
|
||||
: G4VBarion( aName,mass,width,charge,iSpin,iParity,
|
||||
iConjugation,iIsospin,iIsospin3,gParity,pType,
|
||||
lepton,baryon,encoding,stable,lifetime,decaytable )
|
||||
{
|
||||
}
|
||||
|
||||
// ......................................................................
|
||||
// ... static member definitions ...
|
||||
// ......................................................................
|
||||
//
|
||||
// Arguments for constructor are as follows
|
||||
// name mass width charge
|
||||
// 2*spin parity C-conjugation
|
||||
// 2*Isospin 2*Isospin3 G-parity
|
||||
// type lepton number baryon number PDG encoding
|
||||
// stable lifetime decay table
|
||||
|
||||
G4XicZero G4XicZero::theXicZero(
|
||||
"xi_c0", 2.4703*GeV, 0.0*MeV, 0.0,
|
||||
1, +1, 0,
|
||||
1, -1, 0,
|
||||
"baryon", 0, +1, 4132,
|
||||
false, 0.098e-3*ns, NULL
|
||||
);
|
||||
|
||||
G4XicZero* G4XicZero::XicZeroDefinition(){return &theXicZero;}
|
||||
G4XicZero* G4XicZero::XicZero(){return &theXicZero;}
|
||||
// initialization for static cut values
|
||||
G4double G4XicZero::theXicZeroLengthCut = -1.0;
|
||||
G4double* G4XicZero::theXicZeroKineticEnergyCuts = NULL;
|
||||
|
||||
// **********************************************************************
|
||||
// **************************** SetCuts *********************************
|
||||
// **********************************************************************
|
||||
// In this version Input Cut Value is meaning less
|
||||
// theKineticEnergyCuts for all materials are set to LowestEnergy
|
||||
void G4XicZero::SetCuts(G4double aCut)
|
||||
{
|
||||
theCutInMaxInteractionLength = aCut;
|
||||
|
||||
const G4MaterialTable* materialTable = G4Material::GetMaterialTable();
|
||||
// Create the vector of cuts in energy
|
||||
// corresponding to the stopping range cut
|
||||
if(theKineticEnergyCuts) delete [] theKineticEnergyCuts;
|
||||
theKineticEnergyCuts = new G4double [materialTable->length()];
|
||||
|
||||
// Build range vector for every material, convert cut into energy-cut,
|
||||
// fill theKineticEnergyCuts and delete the range vector
|
||||
for (G4int J=0; J<materialTable->length(); J++)
|
||||
{
|
||||
G4Material* aMaterial = (*materialTable)[J];
|
||||
theKineticEnergyCuts[J] = LowestEnergy;
|
||||
}
|
||||
theXicZeroLengthCut = theCutInMaxInteractionLength;
|
||||
theXicZeroKineticEnergyCuts = theKineticEnergyCuts;
|
||||
// Rebuild the physics tables for every process for this particle type
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user