source: trunk/source/processes/hadronic/models/parton_string/diffraction/include/G4FTFModel.hh @ 967

Last change on this file since 967 was 962, checked in by garnier, 15 years ago

update processes

File size: 4.0 KB
Line 
1//
2// ********************************************************************
3// * License and Disclaimer                                           *
4// *                                                                  *
5// * The  Geant4 software  is  copyright of the Copyright Holders  of *
6// * the Geant4 Collaboration.  It is provided  under  the terms  and *
7// * conditions of the Geant4 Software License,  included in the file *
8// * LICENSE and available at  http://cern.ch/geant4/license .  These *
9// * include a list of copyright holders.                             *
10// *                                                                  *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work  make  any representation or  warranty, express or implied, *
14// * regarding  this  software system or assume any liability for its *
15// * use.  Please see the license in the file  LICENSE  and URL above *
16// * for the full disclaimer and the limitation of liability.         *
17// *                                                                  *
18// * This  code  implementation is the result of  the  scientific and *
19// * technical work of the GEANT4 collaboration.                      *
20// * By using,  copying,  modifying or  distributing the software (or *
21// * any work based  on the software)  you  agree  to acknowledge its *
22// * use  in  resulting  scientific  publications,  and indicate your *
23// * acceptance of all terms of the Geant4 Software license.          *
24// ********************************************************************
25//
26//
27// $Id: G4FTFModel.hh,v 1.7 2008/04/25 14:20:13 vuzhinsk Exp $
28// GEANT4 tag $Name: geant4-09-02-ref-02 $
29//
30// Class Description
31// Final state production code for hadron inelastic scattering above 20 GeV
32// based on the modeling ansatz used in FRITIOF.
33// To be used in your physics list in case you need this physics.
34// In this case you want to register an object of this class with an object
35// of G4TheoFSGenerator.
36// Class Description - End
37
38#ifndef G4FTFModel_h
39#define G4FTFModel_h 1
40
41// ------------------------------------------------------------
42//      GEANT 4 class header file
43//
44//      ---------------- G4FTFModel ----------------
45//             by Gunter Folger, May 1998.
46//       class implementing the excitation in the FTF Parton String Model
47// ------------------------------------------------------------
48
49
50#include "G4VPartonStringModel.hh"
51
52class G4VSplitableHadron;
53class G4ExcitedString;
54
55#include "G4FTFParameters.hh"                            // Uzhi 29.03.08
56#include "G4FTFParticipants.hh"
57
58#include "G4ExcitedStringVector.hh"
59#include "G4DiffractiveExcitation.hh"
60#include "G4ElasticHNScattering.hh"
61
62class G4FTFModel : public G4VPartonStringModel
63{
64
65  public:
66      G4FTFModel();                                          // Uzhi
67      G4FTFModel(G4double , G4double , G4double );           // Uzhi
68      G4FTFModel(G4DiffractiveExcitation * anExcitation);
69      G4FTFModel(const G4FTFModel &right);
70      ~G4FTFModel();
71      const G4FTFModel & operator=(const G4FTFModel &right);
72
73      int operator==(const G4FTFModel &right) const;
74      int operator!=(const G4FTFModel &right) const;
75
76      void Init(const G4Nucleus & aNucleus, const G4DynamicParticle & aProjectile);
77      G4ExcitedStringVector * GetStrings();
78      G4V3DNucleus * GetWoundedNucleus() const;
79
80
81  protected:
82 
83  private:
84       G4bool ExciteParticipants();
85       G4ExcitedStringVector * BuildStrings();
86 
87  private:     
88
89       G4ReactionProduct theProjectile;       
90       G4FTFParticipants theParticipants;
91
92       G4FTFParameters  *theParameters;        // Uzhi  29.03.08
93       G4DiffractiveExcitation * theExcitation;
94       G4ElasticHNScattering   * theElastic;   // Uzhi 29.03.08
95
96
97};
98
99// ------------------------------------------------------------
100inline 
101G4V3DNucleus * G4FTFModel::GetWoundedNucleus() const
102{
103        return theParticipants.GetWoundedNucleus();
104}
105
106#endif
107
108
Note: See TracBrowser for help on using the repository browser.