Geant4
10.00.p01
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
GB01DetectorConstruction.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
#include "
GB01DetectorConstruction.hh
"
27
#include "
G4SystemOfUnits.hh
"
28
29
#include "
G4Material.hh
"
30
#include "
G4NistManager.hh
"
31
32
#include "
G4Box.hh
"
33
#include "
G4LogicalVolume.hh
"
34
#include "
G4PVPlacement.hh
"
35
#include "
G4UniformMagField.hh
"
36
37
#include "
G4VisAttributes.hh
"
38
#include "
G4Colour.hh
"
39
40
#include "
G4NistManager.hh
"
41
42
#include "
GB01BOptrMultiParticleChangeCrossSection.hh
"
43
44
45
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
46
47
GB01DetectorConstruction::GB01DetectorConstruction
()
48
{}
49
50
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
51
52
GB01DetectorConstruction::~GB01DetectorConstruction
()
53
{}
54
55
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
56
57
G4VPhysicalVolume
*
GB01DetectorConstruction::Construct
()
58
{
59
G4Material
* worldMaterial =
G4NistManager::Instance
()->
FindOrBuildMaterial
(
"G4_Galactic"
);
60
G4Material
* defaultMaterial =
G4NistManager::Instance
()->
FindOrBuildMaterial
(
"G4_lN2"
);
61
62
63
G4VSolid
* solidWorld =
new
G4Box
(
"World"
, 10*
m
, 10*
m
, 10*
m
);
64
65
G4LogicalVolume
* logicWorld =
new
G4LogicalVolume
(solidWorld,
//its solid
66
worldMaterial,
//its material
67
"World"
);
//its name
68
69
G4PVPlacement
* physiWorld =
new
G4PVPlacement
(0,
//no rotation
70
G4ThreeVector
(),
//at (0,0,0)
71
logicWorld,
//its logical volume
72
"World"
,
//its name
73
0,
//its mother volume
74
false
,
//no boolean operation
75
0);
//copy number
76
77
// -----------------------------------
78
// -- volume where biasing is applied:
79
// -----------------------------------
80
G4double
halfZ = 10*
cm
;
81
G4VSolid
* solidTest =
new
G4Box
(
"test.solid"
, 1*
m
, 1*
m
, halfZ );
82
83
G4LogicalVolume
* logicTest =
new
G4LogicalVolume
(solidTest,
//its solid
84
defaultMaterial,
//its material
85
"test.logical"
);
//its name
86
87
new
G4PVPlacement
(0,
// no rotation
88
G4ThreeVector
(0,0, halfZ),
// volume entrance at (0,0,0)
89
logicTest,
// its logical volume
90
"test.phys"
,
// its name
91
logicWorld,
// its mother volume
92
false
,
// no boolean operation
93
0);
// copy number
94
95
96
// ----------------------------------------------
97
// -- operator creation and attachment to volume:
98
// ----------------------------------------------
99
GB01BOptrMultiParticleChangeCrossSection
* testMany =
100
new
GB01BOptrMultiParticleChangeCrossSection
();
101
testMany->
AddParticle
(
"gamma"
);
102
testMany->
AddParticle
(
"neutron"
);
103
testMany->
AttachTo
(logicTest);
104
G4cout
<<
" Attaching biasing operator "
<< testMany->
GetName
()
105
<<
" to logical volume "
<< logicTest->
GetName
()
106
<<
G4endl
;
107
108
return
physiWorld;
109
}
cm
static const double cm
Definition:
G4SIunits.hh:106
G4NistManager::FindOrBuildMaterial
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
Definition:
G4NistManager.hh:446
GB01BOptrMultiParticleChangeCrossSection
Definition:
GB01BOptrMultiParticleChangeCrossSection.hh:51
G4UniformMagField.hh
G4LogicalVolume::GetName
G4String GetName() const
G4ThreeVector
CLHEP::Hep3Vector G4ThreeVector
Definition:
G4ThreeVector.hh:42
G4PVPlacement
Definition:
G4PVPlacement.hh:51
G4VPhysicalVolume
Definition:
G4VPhysicalVolume.hh:80
G4Box
Definition:
G4Box.hh:63
GB01DetectorConstruction.hh
G4NistManager.hh
GB01BOptrMultiParticleChangeCrossSection::AddParticle
void AddParticle(G4String particleName)
Definition:
GB01BOptrMultiParticleChangeCrossSection.cc:37
G4Material
Definition:
G4Material.hh:118
G4Box.hh
G4NistManager::Instance
static G4NistManager * Instance()
Definition:
G4NistManager.cc:68
G4VisAttributes.hh
G4VSolid
Definition:
G4VSolid.hh:87
G4cout
G4GLOB_DLL std::ostream G4cout
G4Material.hh
G4Colour.hh
G4LogicalVolume
Definition:
G4LogicalVolume.hh:187
G4VBiasingOperator::AttachTo
void AttachTo(const G4LogicalVolume *)
Definition:
G4VBiasingOperator.cc:47
G4LogicalVolume.hh
GB01DetectorConstruction::GB01DetectorConstruction
GB01DetectorConstruction()
Definition:
GB01DetectorConstruction.cc:47
G4endl
#define G4endl
Definition:
G4ios.hh:61
GB01DetectorConstruction::~GB01DetectorConstruction
~GB01DetectorConstruction()
Definition:
GB01DetectorConstruction.cc:52
m
static const double m
Definition:
G4SIunits.hh:110
G4double
double G4double
Definition:
G4Types.hh:76
G4SystemOfUnits.hh
G4PVPlacement.hh
GB01BOptrMultiParticleChangeCrossSection.hh
GB01DetectorConstruction::Construct
virtual G4VPhysicalVolume * Construct()
Definition:
GB01DetectorConstruction.cc:57
G4VBiasingOperator::GetName
const G4String GetName() const
Definition:
G4VBiasingOperator.hh:277
geant4.10.00.p01
examples
extended
biasing
GB01
src
GB01DetectorConstruction.cc
Generated on Thu Dec 31 2015 17:39:46 for Geant4 by
1.8.8