ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4VIonDEDXScalingAlgorithm.hh
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file G4VIonDEDXScalingAlgorithm.hh
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 //
28 // ===========================================================================
29 // GEANT4 class header file
30 //
31 // Class: G4VIonDEDXScalingAlgorithm
32 //
33 // Author: Anton Lechner (Anton.Lechner@cern.ch)
34 //
35 // First implementation: 11. 03. 2009
36 //
37 // Modifications: 12. 11. 2009 - Added second argument (material) to energy
38 // scaling function (AL)
39 //
40 // Class description:
41 // Base class for dE/dx scaling algorithms, used by G4IonDEDXHandler
42 //
43 // Comments:
44 //
45 // ===========================================================================
46 
47 
48 #ifndef G4VIONDEDXSCALINGALGORITHM_HH
49 #define G4VIONDEDXSCALINGALGORITHM_HH
50 
51 #include "globals.hh"
52 #include "G4ParticleDefinition.hh"
53 
54 class G4Material;
55 
56 
58 
59  public:
62 
63  // Function for scaling the kinetic energy (no scaling by default).
64  // Returns scaling factor for a given ion.
66  const G4ParticleDefinition*, // Projectile (ion)
67  const G4Material*) // Target material
68  { return 1.0; }
69 
70  // Function for scaling the dE/dx value (no scaling by default).
71  // Returns scaling factor for a given ion-material couple and
72  // a given kinetic energy.
74  const G4ParticleDefinition*, // Projectile (ion)
75  const G4Material*, // Target material
76  G4double) // Kinetic energy of projectile
77  { return 1.0; }
78 
79  // Function for defining a base particle for dE/dx calculation.
80  // (no base particle by default). Returns atomic number of base
81  // particle.
83  G4int atomicNumberIon, // Atomic number of ion
84  const G4Material*) // Target material
85  { return atomicNumberIon; }
86 
87 };
88 
89 #endif