Import Geant4 10.5.0.beta source tree

This commit is contained in:
Gabriele Cosmo
2018-06-29 10:58:11 +02:00
parent fe81a77428
commit 6aa23be517
1581 changed files with 124288 additions and 83758 deletions
@@ -24,7 +24,7 @@
// ********************************************************************
//
//
// $Id: G4FTFAnnihilation.hh 100828 2016-11-02 15:25:59Z gcosmo $
// $Id: G4FTFAnnihilation.hh 110870 2018-06-22 12:14:16Z gcosmo $
#ifndef G4FTFAnnihilation_h
#define G4FTFAnnihilation_h 1
@@ -63,6 +63,31 @@ class G4FTFAnnihilation {
int operator==( const G4FTFAnnihilation& right ) const;
int operator!=( const G4FTFAnnihilation& right ) const;
// The "Annihilate" method uses the following struct and 4 new utility methods:
struct CommonVariables {
G4int AQ[3], Q[3];
G4bool RotateStrings = false;
G4double S = 0.0, SqrtS = 0.0;
G4LorentzVector Pprojectile, Ptarget;
G4LorentzRotation toLab, RandomRotation;
};
G4bool Create3QuarkAntiQuarkStrings( G4VSplitableHadron* aPartner,
G4VSplitableHadron* bPartner,
G4VSplitableHadron*& AdditionalString,
G4FTFParameters* theParameters,
CommonVariables& common ) const;
G4int Create1DiquarkAntiDiquarkString( G4VSplitableHadron* aPartner,
G4VSplitableHadron* bPartner,
CommonVariables& common ) const;
G4int Create2QuarkAntiQuarkStrings( G4VSplitableHadron* aPartner,
G4VSplitableHadron* bPartner,
G4FTFParameters* theParameters,
CommonVariables& common ) const;
G4bool Create1QuarkAntiQuarkString( G4VSplitableHadron* aPartner,
G4VSplitableHadron* bPartner,
G4FTFParameters* theParameters,
CommonVariables& common ) const;
G4ThreeVector GaussianPt( G4double AveragePt2, G4double maxPtSquare ) const;
G4double ChooseX( G4double Alpha, G4double Beta ) const;
void UnpackBaryon( G4int IdPDG, G4int& Q1, G4int& Q2, G4int& Q3 ) const;