Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4AblaVirtualData.hh
Go to the documentation of this file.
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// $Id$
27// Translation of INCL4.2/ABLA V3
28// Pekka Kaitaniemi, HIP (translation)
29// Christelle Schmidt, IPNL (fission code)
30// Alain Boudard, CEA (contact person INCL/ABLA)
31// Aatos Heikkinen, HIP (project coordination)
32
33#ifndef G4AblaVirtualData_hh
34#define G4AblaVirtualData_hh 1
35
36#include "globals.hh"
37
38/**
39 * An interface to data used by INCL and ABLA. This interface allows
40 * us to abstract the actual source of data. Currently the data is
41 * read from datafiles by using class G4InclAblaDataFile. @see
42 * G4InclAblaDataFile
43 */
44
46protected:
47
48 /**
49 * Constructor
50 */
52
53public:
54 /**
55 * Set the value of Alpha.
56 */
57 G4bool setAlpha(G4int A, G4int Z, G4double value);
58
59 /**
60 * Set the value of Ecnz.
61 */
62 G4bool setEcnz(G4int A, G4int Z, G4double value);
63
64 /**
65 * Set the value of Vgsld.
66 */
67 G4bool setVgsld(G4int A, G4int Z, G4double value);
68
69 /**
70 * Set the value of Pace2.
71 */
72 G4bool setPace2(G4int A, G4int Z, G4double value);
73
75
76 /**
77 * Get the value of Alpha.
78 */
80
81 /**
82 * Get the value of Vgsld.
83 */
85
86 /**
87 * Get the value of Pace2.
88 */
90
93
96
97 virtual G4bool readData() = 0;
98
99private:
100
101 static const G4int alphaRows = 155;
102 static const G4int alphaCols = 100;
103
104 static const G4int paceRows = 500;
105 static const G4int paceCols = 500;
106
107 G4double alpha[alphaRows][alphaCols];
108 G4double ecnz[alphaRows][alphaCols];
109 G4double vgsld[alphaRows][alphaCols];
110 G4double pace2[paceRows][paceCols];
111};
112
113#endif
double G4double
Definition: G4Types.hh:64
int G4int
Definition: G4Types.hh:66
bool G4bool
Definition: G4Types.hh:67
G4bool setVgsld(G4int A, G4int Z, G4double value)
G4double getPace2(G4int A, G4int Z)
G4double getAlpha(G4int A, G4int Z)
G4bool setEcnz(G4int A, G4int Z, G4double value)
G4bool setPace2(G4int A, G4int Z, G4double value)
G4double getVgsld(G4int A, G4int Z)
G4bool setAlpha(G4int A, G4int Z, G4double value)
G4double getEcnz(G4int A, G4int Z)
virtual G4bool readData()=0