Geant4  10.02.p02
GFlashParticleBounds.cc
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: GFlashParticleBounds.cc 68057 2013-03-13 14:46:00Z gcosmo $
27 //
28 //
29 // ------------------------------------------------------------
30 // GEANT 4 class implementation
31 //
32 // ---------------- GFlashParticleBounds ----------------
33 //
34 // Author: Joanna Weng - 9.11.2004
35 // ------------------------------------------------------------
36 
37 #include "GFlashParticleBounds.hh"
38 
39 #include "G4SystemOfUnits.hh"
40 #include "G4Electron.hh"
41 #include "G4Positron.hh"
42 
43 
45 {
46  // e+e- defaults
47  EMinEneToParametrise = 0.10*GeV;
48  EMaxEneToParametrise = 10000.00*GeV;
49  EEneToKill = 0.1*GeV; // Energie at which electrons are killed
50 }
51 
53 {
54 }
55 
58 {
59  if( &particleType == G4Electron::ElectronDefinition()||
60  &particleType == G4Positron::PositronDefinition())
61  EMinEneToParametrise = enemin;
62 }
63 
66 {
67  if( &particleType == G4Electron::ElectronDefinition()||
68  &particleType == G4Positron::PositronDefinition())
69  EMaxEneToParametrise = enemax;
70 }
71 
74 {
75  if( &particleType == G4Electron::ElectronDefinition()||
76  &particleType == G4Positron::PositronDefinition())
77  EEneToKill = enekill;
78 }
79 
82 {
83  G4double result = DBL_MAX;
84  if( &particleType == G4Electron::ElectronDefinition()||
85  &particleType == G4Positron::PositronDefinition())
86  {
87  result = EMinEneToParametrise;
88  }
89  return result;
90 }
91 
94 {
95  G4double result = 0;
96  if( &particleType == G4Electron::ElectronDefinition()||
97  &particleType == G4Positron::PositronDefinition())
98  {
99  result = EMaxEneToParametrise;
100  }
101  return result;
102 }
103 
106 {
107  if (&particleType == G4Electron::ElectronDefinition() ||
108  &particleType == G4Positron::PositronDefinition())
109  return EEneToKill;
110  else return (-DBL_MAX);
111 }
static G4Electron * ElectronDefinition()
Definition: G4Electron.cc:89
void SetEneToKill(G4ParticleDefinition &particleType, G4double enekill)
G4double GetMaxEneToParametrise(G4ParticleDefinition &particleType)
G4double GetMinEneToParametrise(G4ParticleDefinition &particleType)
void SetMinEneToParametrise(G4ParticleDefinition &particleType, G4double enemin)
static const double GeV
Definition: G4SIunits.hh:214
static G4Positron * PositronDefinition()
Definition: G4Positron.cc:89
G4double GetEneToKill(G4ParticleDefinition &particleType)
void SetMaxEneToParametrise(G4ParticleDefinition &particleType, G4double enemax)
double G4double
Definition: G4Types.hh:76
#define DBL_MAX
Definition: templates.hh:83