Geant4
v4-10.4-release
메인 페이지
관련된 페이지
모듈
네임스페이스
클래스
파일들
파일 목록
파일 멤버
모두
클래스
네임스페이스들
파일들
함수
변수
타입정의
열거형 타입
열거형 멤버
Friends
매크로
그룹들
페이지들
source
g3tog4
include
G3Division.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
// $Id: G3Division.hh 67982 2013-03-13 10:36:03Z gcosmo $
28
//
29
// ----------------------
30
// Class description:
31
//
32
// This class tranforms G3 divided volumes to G4 replicated volumes.
33
// UpdateVTE() method checks parameters of mother volume
34
// and in case they are complete the solid that will be replicated
35
// is created. In case of division with offset an additinal envelope
36
// VTE (G3VolTableEntry instance) is created.
37
// CreatePVReplica() methods creates the G4PVReplica instance.
38
39
// ----------------------
40
//
41
// by I.Hrivnacova, V.Berejnoi, 27 Sep 99
42
43
#ifndef G3DIVISION_HH
44
#define G3DIVISION_HH 1
45
46
#include "
globals.hh
"
47
#include "
geomdefs.hh
"
48
49
class
G3VolTableEntry
;
50
class
G4VPhysicalVolume
;
51
class
G4LogicalVolume
;
52
53
enum
G3DivType
{
kDvn
,
kDvn2
,
kDvt
,
kDvt2
};
54
55
class
G3Division
56
{
57
public
:
// with description
58
59
G3Division
(
G3DivType
type,
G3VolTableEntry
* vte,
G3VolTableEntry
* mvte,
60
G4int
nofDivision,
G4int
iaxis,
G4int
nmed,
G4double
c0,
61
G4double
step);
62
G3Division
(
G3VolTableEntry
* vte,
G3VolTableEntry
* mvte,
63
const
G3Division
& division);
64
virtual
~G3Division
();
65
66
// methods
67
void
UpdateVTE
();
68
void
CreatePVReplica
();
69
70
private
:
71
72
// methods
73
void
SetRangeAndAxis
();
74
void
CreateSolid
(
G4String
shape,
G4double
par[],
G4int
npar);
75
G3VolTableEntry
*
CreateEnvelope
(
G4String
shape,
G4double
hi,
G4double
lo,
76
G4double
par[],
G4int
npar);
77
G3VolTableEntry
*
Dvn
();
78
G3VolTableEntry
*
Dvn2
();
79
G3VolTableEntry
*
Dvt
();
80
G3VolTableEntry
*
Dvt2
();
81
void
Exception
(
G4String
where,
G4String
what);
82
83
// data members
84
G3DivType
fType
;
85
G3VolTableEntry
*
fVTE
;
86
G3VolTableEntry
*
fMVTE
;
87
G4int
fNofDivisions
;
// ndiv/ndvmx
88
G4int
fIAxis
;
89
G4int
fNmed
;
90
G4double
fC0
;
91
G4double
fStep
;
92
G4double
fLowRange
;
93
G4double
fHighRange
;
94
G4double
fWidth
;
95
G4double
fOffset
;
96
EAxis
fAxis
;
97
};
98
99
#endif //G3_DIVISION_H
G3Division::fOffset
G4double fOffset
Definition:
G3Division.hh:95
G3Division::fIAxis
G4int fIAxis
Definition:
G3Division.hh:88
G3Division::Dvn
G3VolTableEntry * Dvn()
Definition:
G3Division.cc:787
G3Division::SetRangeAndAxis
void SetRangeAndAxis()
Definition:
G3Division.cc:190
G3Division::CreateSolid
void CreateSolid(G4String shape, G4double par[], G4int npar)
Definition:
G3Division.cc:615
G3Division::CreateEnvelope
G3VolTableEntry * CreateEnvelope(G4String shape, G4double hi, G4double lo, G4double par[], G4int npar)
Definition:
G3Division.cc:438
G3VolTableEntry
Definition:
G3VolTableEntry.hh:80
G3Division::Dvn2
G3VolTableEntry * Dvn2()
Definition:
G3Division.cc:803
G3Division::fLowRange
G4double fLowRange
Definition:
G3Division.hh:92
geomdefs.hh
G4String
Definition:
examples/extended/parallel/TopC/ParN02/AnnotatedFiles/G4String.hh:45
G3Division::fWidth
G4double fWidth
Definition:
G3Division.hh:94
G3Division::fC0
G4double fC0
Definition:
G3Division.hh:90
G3Division
Definition:
G3Division.hh:55
G3Division::fMVTE
G3VolTableEntry * fMVTE
Definition:
G3Division.hh:86
G3Division::Exception
void Exception(G4String where, G4String what)
Definition:
G3Division.cc:181
G4double
double G4double
Definition:
G4Types.hh:76
G3Division::fHighRange
G4double fHighRange
Definition:
G3Division.hh:93
G3Division::Dvt
G3VolTableEntry * Dvt()
Definition:
G3Division.cc:831
kDvn
Definition:
G3Division.hh:53
G3Division::fAxis
EAxis fAxis
Definition:
G3Division.hh:96
kDvt2
Definition:
G3Division.hh:53
globals.hh
G3Division::fNmed
G4int fNmed
Definition:
G3Division.hh:89
G3Division::Dvt2
G3VolTableEntry * Dvt2()
Definition:
G3Division.cc:872
G4int
int G4int
Definition:
G4Types.hh:78
G3Division::~G3Division
virtual ~G3Division()
Definition:
G3Division.cc:92
EAxis
EAxis
Definition:
geomdefs.hh:54
G4LogicalVolume
Definition:
G4LogicalVolume.hh:190
G3Division::fNofDivisions
G4int fNofDivisions
Definition:
G3Division.hh:87
G4VPhysicalVolume
Definition:
G4VPhysicalVolume.hh:82
G3Division::G3Division
G3Division(G3DivType type, G3VolTableEntry *vte, G3VolTableEntry *mvte, G4int nofDivision, G4int iaxis, G4int nmed, G4double c0, G4double step)
Definition:
G3Division.cc:50
G3Division::CreatePVReplica
void CreatePVReplica()
Definition:
G3Division.cc:128
kDvn2
Definition:
G3Division.hh:53
G3DivType
G3DivType
Definition:
G3Division.hh:53
kDvt
Definition:
G3Division.hh:53
G3Division::fType
G3DivType fType
Definition:
G3Division.hh:84
G3Division::UpdateVTE
void UpdateVTE()
Definition:
G3Division.cc:97
G3Division::fVTE
G3VolTableEntry * fVTE
Definition:
G3Division.hh:85
G3Division::fStep
G4double fStep
Definition:
G3Division.hh:91
다음에 의해 생성됨 :
1.8.5