Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ExP01ChamberParameterisation Class Reference

Chamber parameterisation for the persistency example. More...

#include <Doxymodules_persistency.h>

Inheritance diagram for ExP01ChamberParameterisation:
G4VPVParameterisation

Public Member Functions

 ExP01ChamberParameterisation (G4int NoChambers, G4double startZ, G4double spacing, G4double widthChamber, G4double lengthInitial, G4double lengthFinal)
 
 ~ExP01ChamberParameterisation ()
 
void ComputeTransformation (const G4int copyNo, G4VPhysicalVolume *physVol) const
 
void ComputeDimensions (G4Box &trackerLayer, const G4int copyNo, const G4VPhysicalVolume *physVol) const
 

Private Member Functions

void ComputeDimensions (G4Trd &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Trap &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Cons &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Sphere &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Orb &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Ellipsoid &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Torus &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Para &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Hype &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Tubs &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Polycone &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Polyhedra &, const G4int, const G4VPhysicalVolume *) const
 

Private Attributes

G4int fNoChambers
 
G4double fStartZ
 
G4double fHalfWidth
 
G4double fSpacing
 
G4double fHalfLengthFirst
 
G4double fHalfLengthIncr
 

Detailed Description

Chamber parameterisation for the persistency example.

Definition at line 78 of file Doxymodules_persistency.h.

Constructor & Destructor Documentation

◆ ExP01ChamberParameterisation()

ExP01ChamberParameterisation::ExP01ChamberParameterisation ( G4int  NoChambers,
G4double  startZ,
G4double  spacing,
G4double  widthChamber,
G4double  lengthInitial,
G4double  lengthFinal 
)

Definition at line 42 of file ExP01ChamberParameterisation.cc.

50{
51 fNoChambers = NoChambers;
52 fStartZ = startZ;
53 fHalfWidth = widthChamber*0.5;
54 fSpacing = spacingZ;
55 fHalfLengthFirst = 0.5 * lengthInitial;
56 // fHalfLengthLast = lengthFinal;
58 if( NoChambers > 0 ){
59 fHalfLengthIncr = 0.5 * (lengthFinal-lengthInitial)/NoChambers;
60
61 if (spacingZ < widthChamber) {
62 G4Exception(
63 "ExN02ChamberParameterisation::ExN02ChamberParameterisation()",
64 "InvalidSetup", FatalException,
65 "Width>Spacing");
66 }
67 }
68
69}

◆ ~ExP01ChamberParameterisation()

ExP01ChamberParameterisation::~ExP01ChamberParameterisation ( )

Definition at line 73 of file ExP01ChamberParameterisation.cc.

74{}

Member Function Documentation

◆ ComputeTransformation()

void ExP01ChamberParameterisation::ComputeTransformation ( const G4int  copyNo,
G4VPhysicalVolume physVol 
) const

Definition at line 78 of file ExP01ChamberParameterisation.cc.

80{
81 G4double Zposition= fStartZ + (copyNo+1) * fSpacing;
82 G4ThreeVector origin(0,0,Zposition);
83 physVol->SetTranslation(origin);
84 physVol->SetRotation(0);
85}

◆ ComputeDimensions() [1/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Box trackerLayer,
const G4int  copyNo,
const G4VPhysicalVolume physVol 
) const

Definition at line 89 of file ExP01ChamberParameterisation.cc.

91{
92 G4double halfLength= fHalfLengthFirst + copyNo * fHalfLengthIncr;
93 trackerChamber.SetXHalfLength(halfLength);
94 trackerChamber.SetYHalfLength(halfLength);
95 trackerChamber.SetZHalfLength(fHalfWidth);
96}

◆ ComputeDimensions() [2/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Trd ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 87 of file ExP01ChamberParameterisation.hh.

87{}

◆ ComputeDimensions() [3/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Trap ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 88 of file ExP01ChamberParameterisation.hh.

88{}

◆ ComputeDimensions() [4/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Cons ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 89 of file ExP01ChamberParameterisation.hh.

89{}

◆ ComputeDimensions() [5/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Sphere ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 90 of file ExP01ChamberParameterisation.hh.

90{}

◆ ComputeDimensions() [6/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Orb ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 91 of file ExP01ChamberParameterisation.hh.

91{}

◆ ComputeDimensions() [7/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Ellipsoid ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 92 of file ExP01ChamberParameterisation.hh.

92{}

◆ ComputeDimensions() [8/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Torus ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 93 of file ExP01ChamberParameterisation.hh.

93{}

◆ ComputeDimensions() [9/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Para ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 94 of file ExP01ChamberParameterisation.hh.

94{}

◆ ComputeDimensions() [10/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Hype ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 95 of file ExP01ChamberParameterisation.hh.

95{}

◆ ComputeDimensions() [11/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Tubs ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 96 of file ExP01ChamberParameterisation.hh.

96{}

◆ ComputeDimensions() [12/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Polycone ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 97 of file ExP01ChamberParameterisation.hh.

97{}

◆ ComputeDimensions() [13/13]

void ExP01ChamberParameterisation::ComputeDimensions ( G4Polyhedra ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivate

Definition at line 98 of file ExP01ChamberParameterisation.hh.

98{}

Member Data Documentation

◆ fNoChambers

G4int ExP01ChamberParameterisation::fNoChambers
private

Definition at line 102 of file ExP01ChamberParameterisation.hh.

◆ fStartZ

G4double ExP01ChamberParameterisation::fStartZ
private

Definition at line 103 of file ExP01ChamberParameterisation.hh.

◆ fHalfWidth

G4double ExP01ChamberParameterisation::fHalfWidth
private

Definition at line 104 of file ExP01ChamberParameterisation.hh.

◆ fSpacing

G4double ExP01ChamberParameterisation::fSpacing
private

Definition at line 105 of file ExP01ChamberParameterisation.hh.

◆ fHalfLengthFirst

G4double ExP01ChamberParameterisation::fHalfLengthFirst
private

Definition at line 106 of file ExP01ChamberParameterisation.hh.

◆ fHalfLengthIncr

G4double ExP01ChamberParameterisation::fHalfLengthIncr
private

Definition at line 107 of file ExP01ChamberParameterisation.hh.


The documentation for this class was generated from the following files:

Applications | User Support | Publications | Collaboration