Ignore:
Timestamp:
Dec 22, 2010, 3:52:27 PM (14 years ago)
Author:
garnier
Message:

geant4 tag 9.4

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/high_energy/include/G4HEInelastic.hh

    r1340 r1347  
    2424// ********************************************************************
    2525//
    26 //
    27 // $Id: G4HEInelastic.hh,v 1.14 2007/04/11 18:11:30 dennis Exp $
    28 // GEANT4 tag $Name: geant4-09-03-ref-09 $
     26// $Id: G4HEInelastic.hh,v 1.17 2010/11/29 05:45:06 dennis Exp $
     27// GEANT4 tag $Name: geant4-09-04-ref-00 $
    2928//
    3029//
     
    7170   {
    7271     SetParticles();
     72     verboseLevel = 0;
     73     MAXPART = 0;
    7374     conserveEnergy = true;
    7475   };
     
    7677   ~G4HEInelastic(){ };
    7778         
    78    void       SetMaxNumberOfSecondaries( const G4int maxnumber )
    79                    { MAXPART = maxnumber;}     
     79   void SetMaxNumberOfSecondaries(const G4int maxnumber)
     80            {MAXPART = maxnumber;}     
    8081 
    81    void       SetVerboseLevel( const G4int level)
    82                    { verboseLevel = level;}
    83 
    84    G4int      verboseLevel;
    85    G4int      MAXPART;
    86    G4bool     conserveEnergy;
    87 
    88    void       ForceEnergyConservation(G4bool energyConservation)
    89                    { conserveEnergy = energyConservation;}
    90    G4bool     EnergyConservation(void)
    91                    { return conserveEnergy;}
    92 
    93    G4double   Amin(G4double a, G4double b);
    94    G4double   Amax(G4double a, G4double b);
    95    G4int      Imin(G4int a, G4int b);
    96    G4int      Imax(G4int a, G4int b);
     82   void SetVerboseLevel(const G4int level) {verboseLevel = level;}
     83
     84   G4int verboseLevel;
     85   G4int MAXPART;
     86   G4bool conserveEnergy;
     87
     88   void ForceEnergyConservation(G4bool energyConservation)
     89              {conserveEnergy = energyConservation;}
     90
     91   G4bool EnergyConservation(void) {return conserveEnergy;}
     92
     93   G4double Amin(G4double a, G4double b);
     94   G4double Amax(G4double a, G4double b);
     95   G4int Imin(G4int a, G4int b);
     96   G4int Imax(G4int a, G4int b);
    9797 
    98    void       FillParticleChange(G4HEVector pv[], G4int aVecLength);
    99 
    100    G4double   pmltpc(G4int np, G4int nm, G4int nz, G4int n, G4double b, G4double c);
    101 
    102    G4int      Factorial(G4int n);
    103 
    104    G4double   NuclearInelasticity(G4double incidentKineticEnergy,
    105                                   G4double atomicWeight,
    106                                   G4double atomicNumber);
    107    G4double   NuclearExcitation(G4double  incidentKineticEnergy,
    108                                 G4double  atomicWeight,
    109                                 G4double  atomicNumber,
    110                                 G4double& excitationEnergyCascade,
    111                                 G4double& excitationEnergyEvaporation);
     98   void FillParticleChange(G4HEVector pv[], G4int aVecLength);
     99
     100   G4double pmltpc(G4int np, G4int nm, G4int nz,
     101                   G4int n, G4double b, G4double c);
     102
     103   G4int Factorial(G4int n);
     104
     105   G4double NuclearInelasticity(G4double incidentKineticEnergy,
     106                                G4double atomicWeight,
     107                                G4double atomicNumber);
     108
     109   G4double NuclearExcitation(G4double  incidentKineticEnergy,
     110                              G4double  atomicWeight,
     111                              G4double  atomicNumber,
     112                              G4double& excitationEnergyCascade,
     113                              G4double& excitationEnergyEvaporation);
    112114   
    113    void       HighEnergyCascading(G4bool &successful,
    114                                   G4HEVector pv[],
    115                                   G4int &vecLen,
    116                                   G4double &excitationEnergyGNP,
    117                                   G4double &excitationEnergyDTA,
    118                                   G4HEVector incidentParticle,
    119                                   G4HEVector targetParticle,
    120                                   G4double atomicWeight,
    121                                   G4double atomicNumber);                       
    122 
    123    void       HighEnergyClusterProduction(G4bool &successful,
    124                                           G4HEVector pv[],
    125                                           G4int &vecLen,
    126                                           G4double &excitationEnergyGNP,
    127                                           G4double &excitationEnergyDTA,
    128                                           G4HEVector incidentParticle,
    129                                           G4HEVector targetParticle,
    130                                           G4double atomicWeight,
    131                                           G4double atomicNumber);             
    132 
    133    void       TuningOfHighEnergyCascading(G4HEVector pv[],
    134                                           G4int &vecLen,
    135                                           G4HEVector incidentParticle,
    136                                           G4HEVector targetParticle,
    137                                           G4double atomicWeight,
    138                                           G4double atomicNumber);   
    139 
    140    void       MediumEnergyCascading(G4bool &successful,
     115   void HighEnergyCascading(G4bool& successful,
     116                            G4HEVector pv[],
     117                            G4int& vecLen,
     118                            G4double& excitationEnergyGNP,
     119                            G4double& excitationEnergyDTA,
     120                            const G4HEVector& incidentParticle,
     121                            const G4HEVector& targetParticle,
     122                            G4double atomicWeight,
     123                            G4double atomicNumber);
     124
     125   void HighEnergyClusterProduction(G4bool& successful,
    141126                                    G4HEVector pv[],
    142                                     G4int &vecLen,
    143                                     G4double &excitationEnergyGNP,
    144                                     G4double &excitationEnergyDTA,
    145                                     G4HEVector incidentParticle,
    146                                     G4HEVector targetParticle,
     127                                    G4int& vecLen,
     128                                    G4double& excitationEnergyGNP,
     129                                    G4double& excitationEnergyDTA,
     130                                    const G4HEVector& incidentParticle,
     131                                    const G4HEVector& targetParticle,
    147132                                    G4double atomicWeight,
    148                                     G4double atomicNumber);           
    149 
    150    void       MediumEnergyClusterProduction(G4bool &successful,
    151                                             G4HEVector pv[],
    152                                             G4int &vecLen,
    153                                             G4double &excitationEnergyGNP,
    154                                             G4double &excitationEnergyDTA,
    155                                             G4HEVector incidentParticle,
    156                                             G4HEVector targetParticle,
    157                                             G4double atomicWeight,
    158                                             G4double atomicNumber);           
    159 
    160    void       QuasiElasticScattering(G4bool &successful,
    161                                      G4HEVector pv[],
    162                                      G4int &vecLen,
    163                                      G4double &excitationEnergyGNP,
    164                                      G4double &excitationEnergyDTA,
    165                                      G4HEVector incidentParticle,
    166                                      G4HEVector targetParticle,
    167                                      G4double atomicWeight,
    168                                      G4double atomicNumber);
    169 
    170    void       ElasticScattering(G4bool &successful,
    171                                 G4HEVector pv[],
    172                                 G4int &vecLen,                     
    173                                 G4HEVector incidentParticle,
    174                                 G4double atomicWeight,
    175                                 G4double atomicNumber);
    176 
    177    G4int      rtmi(G4double *x, G4double xli, G4double xri, G4double eps,
    178                    G4int iend, G4double aa, G4double bb, G4double cc,
    179                    G4double dd, G4double rr);
    180 
    181    G4double   fctcos(G4double t, G4double aa, G4double bb,G4double cc,
    182                      G4double dd, G4double rr);     
     133                                    G4double atomicNumber);             
     134
     135   void TuningOfHighEnergyCascading(G4HEVector pv[],
     136                                    G4int& vecLen,
     137                                    const G4HEVector& incidentParticle,
     138                                    const G4HEVector& targetParticle,
     139                                    G4double atomicWeight,
     140                                    G4double atomicNumber);   
     141
     142   void MediumEnergyCascading(G4bool& successful,
     143                              G4HEVector pv[],
     144                              G4int& vecLen,
     145                              G4double& excitationEnergyGNP,
     146                              G4double& excitationEnergyDTA,
     147                              const G4HEVector& incidentParticle,
     148                              const G4HEVector& targetParticle,
     149                              G4double atomicWeight,
     150                              G4double atomicNumber);           
     151
     152   void MediumEnergyClusterProduction(G4bool& successful,
     153                                      G4HEVector pv[],
     154                                      G4int& vecLen,
     155                                      G4double& excitationEnergyGNP,
     156                                      G4double& excitationEnergyDTA,
     157                                      const G4HEVector& incidentParticle,
     158                                      const G4HEVector& targetParticle,
     159                                      G4double atomicWeight,
     160                                      G4double atomicNumber);           
     161
     162   void QuasiElasticScattering(G4bool& successful,
     163                               G4HEVector pv[],
     164                               G4int& vecLen,
     165                               G4double& excitationEnergyGNP,
     166                               G4double& excitationEnergyDTA,
     167                               const G4HEVector& incidentParticle,
     168                               const G4HEVector& targetParticle,
     169                               G4double atomicWeight,
     170                               G4double atomicNumber);
     171
     172   void ElasticScattering(G4bool& successful,
     173                          G4HEVector pv[],
     174                          G4int& vecLen,                     
     175                          const G4HEVector& incidentParticle,
     176                          G4double atomicWeight,
     177                          G4double atomicNumber);
     178
     179   G4int rtmi(G4double *x, G4double xli, G4double xri, G4double eps,
     180              G4int iend, G4double aa, G4double bb, G4double cc,
     181              G4double dd, G4double rr);
     182
     183   G4double fctcos(G4double t, G4double aa, G4double bb,G4double cc,
     184                   G4double dd, G4double rr);     
    183185       
    184    void       StrangeParticlePairProduction(const G4double availableEnergy,
    185                                             const G4double centerOfMassEnergy,
    186                                             G4HEVector pv[],
    187                                             G4int &vecLen,
    188                                             G4HEVector incidentParticle,
    189                                             G4HEVector targetParticle);
    190 
    191    G4double   NBodyPhaseSpace(const G4double totalEnergy,
    192                               const G4bool   constantCrossSection,
    193                               G4HEVector pv[],
    194                               G4int &vecLen);
     186   void StrangeParticlePairProduction(const G4double availableEnergy,
     187                                      const G4double centerOfMassEnergy,
     188                                      G4HEVector pv[],
     189                                      G4int& vecLen,
     190                                      const G4HEVector& incidentParticle,
     191                                      const G4HEVector& targetParticle);
     192
     193   G4double NBodyPhaseSpace(const G4double totalEnergy,
     194                            const G4bool   constantCrossSection,
     195                            G4HEVector pv[],
     196                            G4int &vecLen);
    195197     
    196    G4double   NBodyPhaseSpace(G4int npart,
    197                               G4HEVector pv[],
    198                               G4double wmax,
    199                               G4double wfcn,
    200                               G4int maxtrial,
    201                               G4int ntrial);
    202 
    203    G4double   gpdk(G4double a, G4double b, G4double c);
    204 
    205    void       QuickSort(G4double arr[], const G4int lidx, const G4int ridx);
    206 
    207    G4double   Alam(G4double a, G4double b, G4double c);
     198   G4double NBodyPhaseSpace(G4int npart,
     199                            G4HEVector pv[],
     200                            G4double wmax,
     201                            G4double wfcn,
     202                            G4int maxtrial,
     203                            G4int ntrial);
     204
     205   G4double gpdk(G4double a, G4double b, G4double c);
     206
     207   void QuickSort(G4double arr[], const G4int lidx, const G4int ridx);
     208
     209   G4double Alam(G4double a, G4double b, G4double c);
    208210 
    209    G4double   CalculatePhaseSpaceWeight( G4int npart);
     211   G4double CalculatePhaseSpaceWeight( G4int npart);
    210212       
    211    G4double   normal(void);
    212    G4double   GammaRand(G4double avalue);
    213    G4double   Erlang(G4int mvalue);
    214    G4int      Poisson(G4double x);
    215    void       SetParticles(void);
     213   G4double normal(void);
     214   G4double GammaRand(G4double avalue);
     215   G4double Erlang(G4int mvalue);
     216   G4int Poisson(G4double x);
     217   void SetParticles(void);
    216218
    217219   G4HEVector PionPlus;
     
    248250};
    249251
    250 #endif                     
    251                                          
    252 
     252#endif
Note: See TracChangeset for help on using the changeset viewer.