Ignore:
Timestamp:
May 28, 2009, 4:26:57 PM (15 years ago)
Author:
garnier
Message:

maj sur la beta de geant 4.9.3

Location:
trunk/source/processes/hadronic/models/parton_string
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/parton_string/hadronization/History

    r819 r1055  
    1 $Id: History,v 1.5 2007/05/03 22:10:54 gunter Exp $
     1$Id: History,v 1.7 2009/05/22 16:36:52 gunter Exp $
    22-------------------------------------------------------------------
    33
     
    1616     ---------------------------------------------------------------
    1717
     1822-May-2009   Gunter Folger             (had-hadronization-V09-02-01)
     19- remove temporary workaround - fix is now in QGS
     20- change pt sampling in G4LundStringFragmentation to avoid near endless
     21  loop; this should improve overall performance slightly.
     22  Affected G4VLongitudinalStringDecay, where SampleQuarkPt() is
     23  implemented; affected .hh and .cc for new optional argument of max Pt
     24  to SampleQuarkPt()
     25
     2618-May-2009   Gunter Folger             (had-hadronization-V09-02-00)
     27---------------------------------------------------------------------
     28- reset formatting changes by MK with tags hadr-prtn-hadr-V09-02-xx
     29- temporary workaround for wrong PDG codes created on wrong input from QGS
     30   when used for e.g. antiproton.
     31   
    18322-May 2007    Gunter Folger             (had-hadronization-V08-02-03)
    1933---------------------------------------------------------------------
  • trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4HadronBuilder.hh

    r1007 r1055  
    2525//
    2626//
    27 // $Id: G4HadronBuilder.hh,v 1.3 2006/06/29 20:54:46 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4HadronBuilder.hh,v 1.5 2009/05/18 09:43:40 gunter Exp $
     28// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2929//
    3030// -----------------------------------------------------------------------------
  • trunk/source/processes/hadronic/models/parton_string/hadronization/include/G4VLongitudinalStringDecay.hh

    r1007 r1055  
    2525//
    2626//
    27 // $Id: G4VLongitudinalStringDecay.hh,v 1.6 2008/06/23 08:35:54 vuzhinsk Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4VLongitudinalStringDecay.hh,v 1.7 2009/05/22 16:35:47 gunter Exp $
     28// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2929// Maxim Komogorov
    3030//
     
    116116//   used by G4VKinkyStringDecy..
    117117   G4int SampleQuarkFlavor(void);
    118    G4ThreeVector SampleQuarkPt();
     118   G4ThreeVector SampleQuarkPt(G4double ptMax=-1.); // -1. no limit on maxpt.
    119119
    120120protected:
  • trunk/source/processes/hadronic/models/parton_string/hadronization/src/G4ExcitedStringDecay.cc

    r819 r1055  
    134134      }
    135135    }
    136    
     136#ifdef debug_G4ExcitedStringDecay    
    137137    if(!success)
    138138    {
     
    144144//       throw G4HadronicException(__FILE__, __LINE__, "G4ExcitedStringDecay failed to correct...");
    145145    }
    146 
     146#endif     
    147147    // Compute c.m.s. interaction velocity and KTV back boost   
    148148    Beta = TotalCollisionMom.boostVector();
  • trunk/source/processes/hadronic/models/parton_string/hadronization/src/G4HadronBuilder.cc

    r1007 r1055  
    2525//
    2626//
    27 // $Id: G4HadronBuilder.cc,v 1.7 2008/04/25 14:20:14 vuzhinsk Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4HadronBuilder.cc,v 1.10 2009/05/22 16:34:31 gunter Exp $
     28// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2929//
    3030// -----------------------------------------------------------------------------
     
    147147           if( (IsUp && IsAnti ) || (!IsUp && !IsAnti ) )
    148148              PDGEncoding = - PDGEncoding;
    149         }
     149        }
    150150           
    151151           
  • trunk/source/processes/hadronic/models/parton_string/hadronization/src/G4LundStringFragmentation.cc

    r1007 r1055  
    2525//
    2626//
    27 // $Id: G4LundStringFragmentation.cc,v 1.13 2008/06/23 09:17:10 gcosmo Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $ 1.8
     27// $Id: G4LundStringFragmentation.cc,v 1.14 2009/05/22 16:36:46 gunter Exp $
     28// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $ 1.8
    2929//
    3030// -----------------------------------------------------------------------------
     
    508508   {
    509509      do                                                                     
    510       {                                                                     
    511          Pt=SampleQuarkPt(); Pt.setZ(0); G4double Pt2=Pt.mag2();             
     510      { 
     511         // GF 22-May-09, limit sampled pt to allowed range
     512         
     513         G4double termD = InitialMass*InitialMass -Mass*Mass - AntiMass*AntiMass;
     514         G4double termab = 4*sqr(Mass*AntiMass);
     515         G4double termN = 2*termD + 4*Mass*Mass + 4*AntiMass*AntiMass;
     516         G4double pt2max=(termD*termD - termab )/ termN ;
     517         
     518//       G4cout << " termD, ab, N " << termD << "  " << termab << "  " << termN
     519//              <<  "   pt2max= " << pt2max ;
     520                                                                                         
     521         Pt=SampleQuarkPt(sqrt(pt2max)); Pt.setZ(0); G4double Pt2=Pt.mag2();
     522
     523         
     524//       G4cout << " sampled Pt2 = " << Pt2 << "  " << pt2max-Pt2 << G4endl;             
     525         // end.. GF
    512526
    513527//G4cout<<"Sample4Momentum Pt x y "<<Pt.getX()<<" "<<Pt.getY()<<G4endl;
     
    521535                         4.*MassMt2*AntiMassMt2;                               
    522536      }                                                                     
    523       while(AvailablePz2 < 0.);                                              
     537      while(AvailablePz2 < 0.);     // GF will occur only for numerical precision problem with limit in sampled pt                                              
    524538                                                                           
    525539      AvailablePz2 /=(4.*InitialMass*InitialMass);                           
  • trunk/source/processes/hadronic/models/parton_string/hadronization/src/G4VLongitudinalStringDecay.cc

    r1007 r1055  
    2525//
    2626//
    27 // $Id: G4VLongitudinalStringDecay.cc,v 1.13 2008/06/23 08:35:55 vuzhinsk Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4VLongitudinalStringDecay.cc,v 1.14 2009/05/22 16:35:47 gunter Exp $
     28// GEANT4 tag $Name: geant4-09-03-beta-cand-01 $
    2929//
    3030// -----------------------------------------------------------------------------
     
    485485//    }
    486486
    487 G4ThreeVector G4VLongitudinalStringDecay::SampleQuarkPt()
     487G4ThreeVector G4VLongitudinalStringDecay::SampleQuarkPt(G4double ptMax)
    488488   {
    489    G4double Pt = -std::log(G4UniformRand());
     489   G4double Pt;
     490   if ( ptMax < 0 ) {
     491      // sample full gaussian
     492      Pt = -std::log(G4UniformRand());
     493   } else {
     494      // sample in limited range
     495      Pt = -std::log(CLHEP::RandFlat::shoot(exp(-sqr(ptMax)/sqr(SigmaQT)), 1.));
     496   }
    490497   Pt = SigmaQT * std::sqrt(Pt);
    491498   G4double phi = 2.*pi*G4UniformRand();
  • trunk/source/processes/hadronic/models/parton_string/qgsm/History

    r962 r1055  
    1 $Id: History,v 1.6 2008/09/19 09:54:23 gunter Exp $
     1$Id: History,v 1.8 2009/05/19 12:48:42 gunter Exp $
    22-------------------------------------------------------------------
    33
     
    1616     ---------------------------------------------------------------
    1717
     1819 May 2009, G.Folger           (hadr-qgsm-V09-02-02)
     19-----------------------------------------------------
     20- fix in G4SPBaryon: for antibaryon, a  diquark & quark was given instead of
     21      anti-diquark & antiquark; note the reverse order, too.
     22    Fixes problems with incident anti baryons, e.g. antiproton, manifesting
     23    in problems with forming hadrons.
     24
     2529 Apr 2009 m. Kosov       (hadr-qgsm-V09-02-01)
     26------------------------------------------------
     27Very important bug fix in G4QGSParticipants.cc to let QGSC working from E=0
     28Added by GF (19-May-09):
     29- this very important "bug" fix modifies G4G4QGSParticipants.cc and
     30   G4GammaParticipants.cc:
     31     changing the value of Threshold from 0.45 GeV to 0.GeV,
     32     and disables an Exception if s < sqr(total mass + Threshold)
    1833
    193415 Sep 2008 G.Folger       (hadr-qgsm-V09-01-01)
  • trunk/source/processes/hadronic/models/parton_string/qgsm/include/G4QGSParticipants.hh

    r819 r1055  
    8383    enum  { SOFT, DIFFRACTIVE };
    8484    const G4int nCutMax;
    85     const G4double ThersholdParameter;
    86     const G4double QGSMThershold;
     85    const G4double ThresholdParameter;
     86    const G4double QGSMThreshold;
    8787    const G4double theNucleonRadius;
    8888   
  • trunk/source/processes/hadronic/models/parton_string/qgsm/src/G4GammaParticipants.cc

    r819 r1055  
    5050  G4double ThresholdMass = thePrimary.GetMass() + theTargetNuc[0]->GetDefinition()->GetPDGMass();
    5151  ModelMode = SOFT;
    52   if (sqr(ThresholdMass + ThersholdParameter) > s)
     52  if (sqr(ThresholdMass + ThresholdParameter) > s)
    5353  {
    54     throw G4HadronicException(__FILE__, __LINE__, "Initial energy is too low. The 4-vectors of the input are inconsistant with the particle masses.");
     54    ModelMode = DIFFRACTIVE;
     55    //throw G4HadronicException(__FILE__, __LINE__, "Initial energy is too low. The 4-vectors of the input are inconsistant with the particle masses.");
    5556  }
    56   if (sqr(ThresholdMass + QGSMThershold) > s) // thus only diffractive in cascade!
     57  if (sqr(ThresholdMass + QGSMThreshold) > s) // thus only diffractive in cascade!
    5758  {
    5859    ModelMode = DIFFRACTIVE;
  • trunk/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSParticipants.cc

    r962 r1055  
    3636
    3737G4QGSParticipants::G4QGSParticipants() : theDiffExcitaton(), //0.7*GeV, 250*MeV, 250*MeV),
    38                                          nCutMax(7),ThersholdParameter(0.45*GeV),
    39                                          QGSMThershold(3*GeV),theNucleonRadius(1.5*fermi)
     38                                         //nCutMax(7),ThresholdParameter(0.45*GeV),
     39                                         nCutMax(7),ThresholdParameter(0.000*GeV),
     40                                         QGSMThreshold(3*GeV),theNucleonRadius(1.5*fermi)
    4041                                         
    4142{
     
    4344
    4445G4QGSParticipants::G4QGSParticipants(const G4QGSParticipants &right)
    45 : G4VParticipants(), nCutMax(right.nCutMax),ThersholdParameter(right.ThersholdParameter),
    46   QGSMThershold(right.QGSMThershold),theNucleonRadius(right.theNucleonRadius)
     46: G4VParticipants(), nCutMax(right.nCutMax),ThresholdParameter(right.ThresholdParameter),
     47  QGSMThreshold(right.QGSMThreshold),theNucleonRadius(right.theNucleonRadius)
    4748{
    4849}
     
    9192  G4double ThresholdMass = thePrimary.GetMass() + pNucleon->GetDefinition()->GetPDGMass();
    9293  ModelMode = SOFT;
    93   if (sqr(ThresholdMass + ThersholdParameter) > s)
    94   {
    95     throw G4HadronicException(__FILE__, __LINE__, "Initial energy is too low. The 4-vectors of the input are inconsistant with the particle masses.");
    96   }
    97   if (sqr(ThresholdMass + QGSMThershold) > s) // thus only diffractive in cascade!
     94  if (sqr(ThresholdMass + ThresholdParameter) > s)
     95  {
     96    ModelMode = DIFFRACTIVE;
     97    //throw G4HadronicException(__FILE__, __LINE__, "Initial energy is too low. The 4-vectors of the input are inconsistant with the particle masses.");
     98  }
     99  if (sqr(ThresholdMass + QGSMThreshold) > s) // thus only diffractive in cascade!
    98100  {
    99101    ModelMode = DIFFRACTIVE;
  • trunk/source/processes/hadronic/models/parton_string/qgsm/src/G4SPBaryon.cc

    r819 r1055  
    104104      if (theDefinition->GetPDGEncoding() < 0)
    105105      {
    106         quark = -(*i)->GetDiQuark();
    107         diQuark = -(*i)->GetQuark();                   
     106        quark = (*i)->GetDiQuark();
     107        diQuark = (*i)->GetQuark();                   
    108108      }
    109109      else
Note: See TracChangeset for help on using the changeset viewer.