Ignore:
Timestamp:
Nov 25, 2009, 5:13:58 PM (16 years ago)
Author:
garnier
Message:

update CVS release candidate geant4.9.3.01

Location:
trunk/source/processes/hadronic/models/parton_string/diffraction/include
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4DiffractiveExcitation.hh

    r962 r1196  
    2525//
    2626//
    27 // $Id: G4DiffractiveExcitation.hh,v 1.2 2008/04/25 14:20:13 vuzhinsk Exp $
     27// $Id: G4DiffractiveExcitation.hh,v 1.4 2009/09/17 18:24:30 vuzhinsk Exp $
    2828
    2929#ifndef G4DiffractiveExcitation_h
     
    4242class G4VSplitableHadron;
    4343class G4ExcitedString;
    44 #include "G4FTFParameters.hh"                            // Uzhi 19.04.08
     44#include "G4FTFParameters.hh"
     45#include "G4ElasticHNScattering.hh"  // Uzhi 3.09.09
    4546#include "G4ThreeVector.hh"
    4647
     
    5051  public:
    5152
    52       G4DiffractiveExcitation();                           // Uzhi
     53      G4DiffractiveExcitation();
    5354      virtual ~G4DiffractiveExcitation();
    5455
    5556      virtual G4bool ExciteParticipants (G4VSplitableHadron *aPartner,
    5657                                         G4VSplitableHadron * bPartner,
     58                                         G4FTFParameters *theParameters,
     59                                         G4ElasticHNScattering *theElastic) const;
     60
     61      virtual void CreateStrings        (G4VSplitableHadron * aHadron,
     62                                         G4bool isProjectile,
     63                                         G4ExcitedString * &FirstString,
     64                                         G4ExcitedString * &SecondString,
    5765                                         G4FTFParameters *theParameters) const;
    58 
    59       virtual G4ExcitedString * String(G4VSplitableHadron * aHadron, G4bool isProjectile) const;
    60 
    6166  private:
    6267
    6368      G4DiffractiveExcitation(const G4DiffractiveExcitation &right);
    6469     
    65       G4ThreeVector GaussianPt(G4double  AveragePt2, G4double maxPtSquare) const; // Uzhi
    66       G4double ChooseP(G4double Pmin, G4double Pmax) const;                       // Uzhi
    67      
     70      G4ThreeVector GaussianPt(G4double  AveragePt2, G4double maxPtSquare) const;
     71      G4double ChooseP(G4double Pmin, G4double Pmax) const;
     72      G4double GetQuarkFractionOfKink(G4double zmin, G4double zmax) const;
     73      void UnpackMeson( G4int IdPDG, G4int &Q1, G4int &Q2) const;  // Uzhi 7.09.09
     74      void UnpackBaryon(G4int IdPDG, G4int &Q1, G4int &Q2, G4int &Q3) const; // Uzhi 7.09.09
     75      G4int NewNucleonId(G4int Q1, G4int Q2, G4int Q3) const; // Uzhi 7.09.09
     76
    6877      const G4DiffractiveExcitation & operator=(const G4DiffractiveExcitation &right);
    6978      int operator==(const G4DiffractiveExcitation &right) const;
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4DiffractiveHHScatterer.hh

    r962 r1196  
    2525//
    2626//
    27 // $Id: G4DiffractiveHHScatterer.hh,v 1.4 2008/04/25 14:20:13 vuzhinsk Exp $
     27// $Id: G4DiffractiveHHScatterer.hh,v 1.7 2009/10/06 10:10:36 vuzhinsk Exp $
    2828
    2929#ifndef G4DiffractiveHHScatterer_h
     
    4444class G4KineticTrack;
    4545#include "G4KineticTrackVector.hh"
    46 #include "G4FTFParameters.hh"                            // Uzhi 21.04.08
     46#include "G4FTFParameters.hh"
     47#include "G4ExcitedString.hh"
    4748
    4849class G4DiffractiveHHScatterer
     
    5253   G4DiffractiveHHScatterer();
    5354   
    54    G4KineticTrackVector * Scatter(const G4KineticTrack & aTrack, const G4KineticTrack & bTrack);
     55//   G4KineticTrackVector * Scatter(const G4KineticTrack & aTrack, const G4KineticTrack & bTrack);
    5556
     57      virtual void CreateStrings() const;
     58/*
     59                                        (G4VSplitableHadron * aHadron,
     60                                         G4bool isProjectile,
     61                                         G4ExcitedString * FirstString,
     62                                         G4ExcitedString * SecondString,
     63                                         G4FTFParameters *theParameters) const;
     64*/
    5665private:
    5766
    5867const G4DiffractiveExcitation * theExcitation;
    5968G4LundStringFragmentation * theStringFragmentation;
    60 G4FTFParameters  *theParameters;                       // Uzhi  21.04.08
     69G4FTFParameters  *theParameters;
    6170};
    6271
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4DiffractiveSplitableHadron.hh

    r1007 r1196  
    2525//
    2626//
    27 // $Id: G4DiffractiveSplitableHadron.hh,v 1.4 2006/06/29 20:54:27 gunter Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4DiffractiveSplitableHadron.hh,v 1.5 2009/08/03 13:14:19 vuzhinsk Exp $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4ElasticHNScattering.hh

    r967 r1196  
    2525//
    2626//
    27 // $Id: G4ElasticHNScattering.hh,v 1.1 2008/03/31 15:34:01 vuzhinsk Exp $
     27// $Id: G4ElasticHNScattering.hh,v 1.2 2009/08/03 13:14:19 vuzhinsk Exp $
    2828
    2929#ifndef G4ElasticHNScattering_h
     
    4242class G4VSplitableHadron;
    4343class G4ExcitedString;
    44 #include "G4FTFParameters.hh"                            // Uzhi 29.03.08
     44#include "G4FTFParameters.hh"
    4545#include "G4ThreeVector.hh"
    4646
     
    5050  public:
    5151
    52       G4ElasticHNScattering();                           // Uzhi
     52      G4ElasticHNScattering();
    5353      virtual ~G4ElasticHNScattering();
    5454
     
    6161      G4ElasticHNScattering(const G4ElasticHNScattering &right);
    6262     
    63       G4ThreeVector GaussianPt(G4double  AveragePt2, G4double maxPtSquare) const;  // Uzhi
     63      G4ThreeVector GaussianPt(G4double  AveragePt2, G4double maxPtSquare) const;
    6464     
    6565      const G4ElasticHNScattering & operator=(const G4ElasticHNScattering &right);
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4FTFModel.hh

    r1007 r1196  
    2525//
    2626//
    27 // $Id: G4FTFModel.hh,v 1.7 2008/04/25 14:20:13 vuzhinsk Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4FTFModel.hh,v 1.10 2009/10/25 10:50:54 vuzhinsk Exp $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030// Class Description
     
    5353class G4ExcitedString;
    5454
    55 #include "G4FTFParameters.hh"                            // Uzhi 29.03.08
     55#include "G4FTFParameters.hh"
    5656#include "G4FTFParticipants.hh"
    5757
     
    6464
    6565  public:
    66       G4FTFModel();                                          // Uzhi
    67       G4FTFModel(G4double , G4double , G4double );           // Uzhi
     66      G4FTFModel();
     67      G4FTFModel(G4double , G4double , G4double );
    6868      G4FTFModel(G4DiffractiveExcitation * anExcitation);
    6969      G4FTFModel(const G4FTFModel &right);
     
    8282 
    8383  private:
     84       void ReggeonCascade();
     85       G4bool PutOnMassShell();
    8486       G4bool ExciteParticipants();
    8587       G4ExcitedStringVector * BuildStrings();
     88       void GetResidualNucleus();                  // 23 Oct. 2009
     89       G4ThreeVector GaussianPt(G4double  AveragePt2, G4double maxPtSquare) const;
    8690 
    8791  private:     
     
    8993       G4ReactionProduct theProjectile;       
    9094       G4FTFParticipants theParticipants;
     95       
     96       G4Nucleon * TheInvolvedNucleon[250];
     97       G4int NumberOfInvolvedNucleon;
    9198
    92        G4FTFParameters  *theParameters;        // Uzhi  29.03.08
     99       G4FTFParameters  *theParameters;
    93100       G4DiffractiveExcitation * theExcitation;
    94        G4ElasticHNScattering   * theElastic;   // Uzhi 29.03.08
     101       G4ElasticHNScattering   * theElastic;
    95102
     103       G4LorentzVector Residual4Momentum;
     104       G4double ResidualExcitationEnergy;
    96105
    97106};
     
    105114
    106115#endif
    107 
    108 
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4FTFParameters.hh

    r1007 r1196  
    2727#define G4FTFParameters_h 1
    2828//
    29 // $Id: G4FTFParameters.hh,v 1.2 2008/06/13 12:49:23 vuzhinsk Exp $
    30 // GEANT4 tag $Name: geant4-09-02 $
     29// $Id: G4FTFParameters.hh,v 1.7 2009/10/25 10:50:54 vuzhinsk Exp $
     30// GEANT4 tag $Name: geant4-09-03-cand-01 $
    3131//
    3232#include "G4Proton.hh"
     
    6060
    6161// --------- Set parameters of excitations ---------------------------
    62         void SetProjMinDiffMass(const G4double aValue); // Uzhi 19.04.08
     62        void SetMagQuarkExchange(const G4double aValue);
     63        void SetSlopeQuarkExchange(const G4double aValue);
     64        void SetDeltaProbAtQuarkExchange(const G4double aValue);
     65
     66        void SetProjMinDiffMass(const G4double aValue);
    6367        void SetProjMinNonDiffMass(const G4double aValue);
    6468        void SetProbabilityOfProjDiff(const G4double aValue);
    6569
    66         void SetTarMinDiffMass(const G4double aValue);  // Uzhi 19.04.08
     70        void SetTarMinDiffMass(const G4double aValue);
    6771        void SetTarMinNonDiffMass(const G4double aValue);
    6872        void SetProbabilityOfTarDiff(const G4double aValue);
     
    7074        void SetAveragePt2(const G4double aValue);
    7175
    72    // Perevod mass*GeV Pt2*GeV*GeV
    73 
     76// --------- Set parameters of a string kink --------------------------------
     77        void SetPt2Kink(const G4double aValue);
     78        void SetQuarkProbabilitiesAtGluonSplitUp(const G4double Puubar,
     79                                                 const G4double Pddbar,
     80                                                 const G4double Pssbar );
     81
     82// --------- Set parameters of nuclear destruction--------------------
     83        void SetCofNuclearDestruction(const G4double aValue);
     84        void SetR2ofNuclearDestruction(const G4double aValue);
     85
     86        void SetExcitationEnergyPerWoundedNucleon(const G4double aValue);
     87
     88        void SetDofNuclearDestruction(const G4double aValue);
     89        void SetPt2ofNuclearDestruction(const G4double aValue);
     90        void SetMaxPt2ofNuclearDestruction(const G4double aValue);
     91
     92//--------------------------------------------------------------------
    7493// --------- Get geometrical parameteres -----------------------------
    7594        G4double GetTotalCrossSection();
     
    87106
    88107// --------- Get parameters of excitations ---------------------------
    89         G4double GetProjMinDiffMass(); // Uzhi 19.04.08
     108        G4double GetMagQuarkExchange();
     109        G4double GetSlopeQuarkExchange();
     110        G4double GetDeltaProbAtQuarkExchange();
     111
     112        G4double GetProjMinDiffMass();
    90113        G4double GetProjMinNonDiffMass();
    91114        G4double GetProbabilityOfProjDiff();
    92115
    93         G4double GetTarMinDiffMass();  // Uzhi 19.04.08
     116        G4double GetTarMinDiffMass();
    94117        G4double GetTarMinNonDiffMass();
    95118        G4double GetProbabilityOfTarDiff();
    96119
    97 
    98120        G4double GetAveragePt2();
     121
     122// --------- Get parameters of a string kink --------------------------------
     123        G4double GetPt2Kink();
     124        std::vector<G4double>  GetQuarkProbabilitiesAtGluonSplitUp();
     125
     126// --------- Get parameters of nuclear destruction---------------------
     127        G4double GetCofNuclearDestruction();
     128        G4double GetR2ofNuclearDestruction();
     129
     130        G4double GetExcitationEnergyPerWoundedNucleon();
     131
     132        G4double GetDofNuclearDestruction();
     133        G4double GetPt2ofNuclearDestruction();
     134        G4double GetMaxPt2ofNuclearDestruction();
     135
    99136//  private:
    100137
     
    115152
    116153// --------- Parameters of excitations -------------------------------
    117         G4double ProjMinDiffMass; // Uzhi 19.04.08
     154        G4double MagQuarkExchange;
     155        G4double SlopeQuarkExchange;
     156        G4double DeltaProbAtQuarkExchange;
     157
     158        G4double ProjMinDiffMass;
    118159        G4double ProjMinNonDiffMass;
    119160        G4double ProbabilityOfProjDiff;
     
    124165
    125166        G4double AveragePt2;
     167
     168// ---------- Parameters of kink -------------------------------------
     169        G4double Pt2kink;
     170        std::vector<G4double> QuarkProbabilitiesAtGluonSplitUp;
     171
     172// --------- Parameters of nuclear destruction------------------------
     173        G4double CofNuclearDestruction;         // Cnd of nuclear destruction
     174        G4double R2ofNuclearDestruction;        // R2nd
     175
     176        G4double ExcitationEnergyPerWoundedNucleon;
     177
     178        G4double DofNuclearDestruction;         // D for momentum sampling
     179        G4double Pt2ofNuclearDestruction;       // Pt2
     180        G4double MaxPt2ofNuclearDestruction;    // Max Pt2
     181
    126182};
    127183
     
    162218inline  void G4FTFParameters::SetAvaragePt2ofElasticScattering(const G4double aPt2)
    163219                 {
    164 //G4cout<<"Pt2 El "<<aPt2<<" "<<std::sqrt(aPt2)<<G4endl;
    165 //G4int Uzhi; G4cin>>Uzhi;
    166220AvaragePt2ofElasticScattering = aPt2;}
    167221
    168222// --------- Set parameters of excitations ----------------------------
    169 inline  void G4FTFParameters::SetProjMinDiffMass(const G4double aValue)   // Uzhi 19.04.08
     223inline  void G4FTFParameters::SetMagQuarkExchange(const G4double aValue)
     224             {MagQuarkExchange = aValue;}
     225inline  void G4FTFParameters::SetSlopeQuarkExchange(const G4double aValue)
     226             {SlopeQuarkExchange = aValue;}
     227inline  void G4FTFParameters::SetDeltaProbAtQuarkExchange(const G4double aValue)
     228             {DeltaProbAtQuarkExchange = aValue;}
     229
     230inline  void G4FTFParameters::SetProjMinDiffMass(const G4double aValue)
    170231             {ProjMinDiffMass = aValue*GeV;}
    171232inline  void G4FTFParameters::SetProjMinNonDiffMass(const G4double aValue)
     
    174235             {ProbabilityOfProjDiff = aValue;}
    175236
    176 inline  void G4FTFParameters::SetTarMinDiffMass(const G4double aValue)  // Uzhi 19.04.08
     237inline  void G4FTFParameters::SetTarMinDiffMass(const G4double aValue)
    177238             {TarMinDiffMass = aValue*GeV;}
    178239inline  void G4FTFParameters::SetTarMinNonDiffMass(const G4double aValue)
     
    184245             {AveragePt2 = aValue*GeV*GeV;}
    185246
     247// --------- Set parameters of a string kink --------------------------------
     248inline  void G4FTFParameters::SetPt2Kink(const G4double aValue)
     249             {Pt2kink = aValue;}
     250
     251inline  void G4FTFParameters::SetQuarkProbabilitiesAtGluonSplitUp(
     252                                                 const G4double Puubar,
     253                                                 const G4double Pddbar,
     254                                                 const G4double Pssbar )
     255             {
     256              QuarkProbabilitiesAtGluonSplitUp.push_back(Puubar);
     257              QuarkProbabilitiesAtGluonSplitUp.push_back(Puubar+Pddbar);
     258              QuarkProbabilitiesAtGluonSplitUp.push_back(Puubar+Pddbar+Pssbar);
     259             }
     260
     261// --------- Set parameters of nuclear destruction--------------------
     262inline  void G4FTFParameters::SetCofNuclearDestruction(const G4double aValue)
     263             {CofNuclearDestruction = aValue;}
     264inline  void G4FTFParameters::SetR2ofNuclearDestruction(const G4double aValue)
     265             {R2ofNuclearDestruction = aValue;}
     266
     267inline  void G4FTFParameters::SetExcitationEnergyPerWoundedNucleon(const G4double aValue)
     268             {ExcitationEnergyPerWoundedNucleon = aValue;}
     269
     270inline  void G4FTFParameters::SetDofNuclearDestruction(const G4double aValue)
     271             {DofNuclearDestruction = aValue;}
     272inline  void G4FTFParameters::SetPt2ofNuclearDestruction(const G4double aValue)
     273             {Pt2ofNuclearDestruction =aValue;}
     274inline  void G4FTFParameters::SetMaxPt2ofNuclearDestruction(const G4double aValue)
     275             {MaxPt2ofNuclearDestruction = aValue;}
     276
    186277// --------- Get geometrical parameteres ------------------------------
    187278inline  G4double G4FTFParameters::GetTotalCrossSection()     {return FTFXtotal;}
     
    211302
    212303// --------- Get parameters of excitations ---------------------------
     304inline  G4double G4FTFParameters::GetMagQuarkExchange()       {return MagQuarkExchange;}
     305inline  G4double G4FTFParameters::GetSlopeQuarkExchange()     {return SlopeQuarkExchange;}
     306inline  G4double G4FTFParameters::GetDeltaProbAtQuarkExchange()
     307                                                              {return DeltaProbAtQuarkExchange;}
     308
     309
    213310inline  G4double G4FTFParameters::GetProjMinDiffMass()        {return ProjMinDiffMass;}
    214311inline  G4double G4FTFParameters::GetProjMinNonDiffMass()     {return ProjMinNonDiffMass;}
     
    221318inline  G4double G4FTFParameters::GetAveragePt2()             {return AveragePt2;}
    222319
     320// --------- Get parameters of a string kink --------------------------
     321inline  G4double G4FTFParameters::GetPt2Kink()                {return Pt2kink;}
     322inline  std::vector<G4double>
     323                 G4FTFParameters::GetQuarkProbabilitiesAtGluonSplitUp()
     324                                  {return QuarkProbabilitiesAtGluonSplitUp;}
     325
     326// --------- Get parameters of nuclear destruction---------------------
     327inline  G4double G4FTFParameters::GetCofNuclearDestruction(){return CofNuclearDestruction;}
     328inline  G4double G4FTFParameters::GetR2ofNuclearDestruction(){return R2ofNuclearDestruction;}
     329
     330inline  G4double G4FTFParameters::GetExcitationEnergyPerWoundedNucleon()
     331            {return ExcitationEnergyPerWoundedNucleon;}
     332
     333
     334inline  G4double G4FTFParameters::GetDofNuclearDestruction()
     335                 {return DofNuclearDestruction;}
     336inline  G4double G4FTFParameters::GetPt2ofNuclearDestruction(){return Pt2ofNuclearDestruction;}
     337inline  G4double G4FTFParameters::GetMaxPt2ofNuclearDestruction()
     338                 {return MaxPt2ofNuclearDestruction;}
    223339#endif
  • trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4FTFParticipants.hh

    r1007 r1196  
    2525//
    2626//
    27 // $Id: G4FTFParticipants.hh,v 1.5 2008/03/31 15:34:01 vuzhinsk Exp $
    28 // GEANT4 tag $Name: geant4-09-02 $
     27// $Id: G4FTFParticipants.hh,v 1.6 2009/08/03 13:14:19 vuzhinsk Exp $
     28// GEANT4 tag $Name: geant4-09-03-cand-01 $
    2929//
    3030
     
    4141
    4242#include "G4VParticipants.hh"
    43 #include "G4FTFParameters.hh"   // Uzhi 29.03.08
     43#include "G4FTFParameters.hh"
    4444#include <vector>
    4545#include "G4Nucleon.hh"
     
    6262
    6363      void GetList(const G4ReactionProduct  &thePrimary,
    64                          G4FTFParameters    *theParameters); // Uzhi 29.03.08
     64                         G4FTFParameters    *theParameters);
    6565
    6666      void StartLoop();
Note: See TracChangeset for help on using the changeset viewer.