Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4EmProcessOptions.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//
27//
28// -------------------------------------------------------------------
29//
30// GEANT4 Class header file
31//
32//
33// File name: G4EmProcessOptions
34//
35// Author: Vladimir Ivanchenko
36//
37// Creation date: 27.02.2004
38//
39// Modifications:
40// 10-01-06 PreciseRange -> CSDARange (V.Ivantchenko)
41// 22-05-06 Add SetBremsstrahlungTh (V.Ivanchenko)
42// 12-02-07 Add SetSkin, SetLinearLossLimit (V.Ivanchenko)
43//
44//
45// Class Description:
46//
47// Provide options for EM processes
48
49// -------------------------------------------------------------------
50//
51
52#ifndef G4EmProcessOptions_h
53#define G4EmProcessOptions_h 1
54
55#include <vector>
56#include "globals.hh"
57#include "G4MscStepLimitType.hh"
58
59class G4EmParameters;
61
63{
64
65public:
66
68
70
72
73 void SetBuildCSDARange(G4bool val);
74
75 void SetLPMFlag(G4bool val);
76
77 void SetSplineFlag(G4bool val);
78
80
81 void SetApplyCuts(G4bool val);
82
83 void SetFluo(G4bool val);
84
85 void SetAuger(G4bool val);
86
87 void SetPIXE(G4bool val);
88
90
92
94
96
97 void SetMinSubRange(G4double val);
98
99 void SetMinEnergy(G4double val);
100
101 void SetMaxEnergy(G4double val);
102
104
106
108
110
111 void SetLambdaFactor(G4double val);
112
114
116
117 void SetMscRangeFactor(G4double val);
118
119 void SetMscGeomFactor(G4double val);
120
121 void SetSkin(G4double val);
122
123 void SetDEDXBinning(G4int val);
124
126
127 void SetLambdaBinning(G4int val);
128
129 void SetVerbose(G4int val);
130
131 void SetWorkerVerbose(G4int val);
132
134
135 void SetSubCutoff(G4bool val, const G4String& r = "");
136
137 void SetIntegral(G4bool val);
138
139 void SetStepFunction(G4double v1, G4double v2);
140
141 void SetDeexcitationActiveRegion(const G4String& rname = "",
142 G4bool valDeexcitation = true,
143 G4bool valAuger = true,
144 G4bool valPIXE = true);
145
146 void SetPIXECrossSectionModel(const G4String& val);
147
149
150 void SetProcessBiasingFactor(const G4String& name, G4double val,
151 G4bool flag = true);
152
153 void ActivateForcedInteraction(const G4String& name, G4double length=0.0,
154 const G4String& region="",
155 G4bool flag = true);
156
157 void ActivateSecondaryBiasing(const G4String& name, const G4String& region,
158 G4double factor, G4double energyLimit);
159
161 const G4String& region,
162 G4double factor, G4double energyLimit);
163
164private:
165
166 G4EmProcessOptions & operator=(const G4EmProcessOptions &right) = delete;
167 G4EmProcessOptions(const G4EmProcessOptions&) = delete;
168
169 G4EmParameters* theParameters;
170};
171
172//....oooOO0OOooo.......oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
173
174#endif
G4MscStepLimitType
double G4double
Definition: G4Types.hh:83
bool G4bool
Definition: G4Types.hh:86
int G4int
Definition: G4Types.hh:85
void SetBuildCSDARange(G4bool val)
void ActivateForcedInteraction(const G4String &name, G4double length=0.0, const G4String &region="", G4bool flag=true)
void SetAuger(G4bool val)
void SetLinearLossLimit(G4double val)
void SetMaxEnergy(G4double val)
void SetMscRangeFactor(G4double val)
void SetDeexcitationActiveRegion(const G4String &rname="", G4bool valDeexcitation=true, G4bool valAuger=true, G4bool valPIXE=true)
void SetIntegral(G4bool val)
void SetDEDXBinning(G4int val)
void SetLambdaBinning(G4int val)
void SetPolarAngleLimit(G4double val)
void SetPIXECrossSectionModel(const G4String &val)
void SetMscMuHadLateralDisplacement(G4bool val)
void SetBremsstrahlungTh(G4double val)
void SetDEDXBinningForCSDARange(G4int val)
void SetMinSubRange(G4double val)
void SetSkin(G4double val)
void SetPIXEElectronCrossSectionModel(const G4String &val)
void SetLPMFlag(G4bool val)
void SetMscLateralDisplacement(G4bool val)
void ActivateSecondaryBiasing(const G4String &name, const G4String &region, G4double factor, G4double energyLimit)
void SetWorkerVerbose(G4int val)
void SetMaxEnergyForCSDARange(G4double val)
void SetMinEnergy(G4double val)
void SetSplineFlag(G4bool val)
void SetMscGeomFactor(G4double val)
void SetLossFluctuations(G4bool val)
void SetDeexcitationIgnoreCuts(G4bool val)
void SetUseCutAsFinalRange(G4bool val)
void SetLambdaFactor(G4double val)
void SetPIXE(G4bool val)
void SetMscStepLimitation(G4MscStepLimitType val)
void SetMaxEnergyForMuons(G4double val)
void SetFactorForAngleLimit(G4double val)
void SetApplyCuts(G4bool val)
void SetDisplacementBeyondSafety(G4bool val)
void SetVerbose(G4int val)
void SetSubCutoff(G4bool val, const G4String &r="")
void SetStepFunction(G4double v1, G4double v2)
void ActivateSecondaryBiasingForGamma(const G4String &name, const G4String &region, G4double factor, G4double energyLimit)
void SetFluo(G4bool val)
void SetProcessBiasingFactor(const G4String &name, G4double val, G4bool flag=true)