Geant4  10.02.p03
B2bChamberParameterisation Class Reference

#include <B2bChamberParameterisation.hh>

Inheritance diagram for B2bChamberParameterisation:
Collaboration diagram for B2bChamberParameterisation:

Public Member Functions

 B2bChamberParameterisation (G4int noChambers, G4double startZ, G4double spacing, G4double widthChamber, G4double lengthInitial, G4double lengthFinal)
 
virtual ~B2bChamberParameterisation ()
 
void ComputeTransformation (const G4int copyNo, G4VPhysicalVolume *physVol) const
 
void ComputeDimensions (G4Tubs &trackerLayer, const G4int copyNo, const G4VPhysicalVolume *physVol) const
 
 B2bChamberParameterisation (G4int noChambers, G4double startZ, G4double spacing, G4double widthChamber, G4double lengthInitial, G4double lengthFinal)
 
virtual ~B2bChamberParameterisation ()
 
void ComputeTransformation (const G4int copyNo, G4VPhysicalVolume *physVol) const
 
void ComputeDimensions (G4Tubs &trackerLayer, const G4int copyNo, const G4VPhysicalVolume *physVol) const
 
- Public Member Functions inherited from G4VPVParameterisation
 G4VPVParameterisation ()
 
virtual ~G4VPVParameterisation ()
 
virtual G4VSolidComputeSolid (const G4int, G4VPhysicalVolume *)
 
virtual G4MaterialComputeMaterial (const G4int repNo, G4VPhysicalVolume *currentVol, const G4VTouchable *parentTouch=0)
 
virtual G4bool IsNested () const
 
virtual G4VVolumeMaterialScannerGetMaterialScanner ()
 

Private Member Functions

void ComputeDimensions (G4Box &, const G4int, const G4VPhysicalVolume *) const
 
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 (G4Polycone &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Polyhedra &, const G4int, const G4VPhysicalVolume *) const
 
void ComputeDimensions (G4Box &, const G4int, const G4VPhysicalVolume *) const
 
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 (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 fRmaxFirst
 
G4double fRmaxIncr
 

Detailed Description

A parameterisation that describes a series of boxes along Z.

The boxes have equal width, & their lengths are a linear equation. They are spaced an equal distance apart, starting from given location.

Definition at line 59 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

Constructor & Destructor Documentation

◆ B2bChamberParameterisation() [1/2]

B2bChamberParameterisation::B2bChamberParameterisation ( G4int  noChambers,
G4double  startZ,
G4double  spacing,
G4double  widthChamber,
G4double  lengthInitial,
G4double  lengthFinal 
)

Definition at line 40 of file basic/B2/B2b/src/B2bChamberParameterisation.cc.

48 {
49  fNoChambers = noChambers;
50  fStartZ = startZ;
51  fHalfWidth = 0.5*widthChamber;
52  fSpacing = spacingZ;
53  fRmaxFirst = 0.5 * lengthInitial;
54  if( noChambers > 0 ){
55  fRmaxIncr = 0.5 * (lengthFinal-lengthInitial)/(noChambers-1);
56  if (spacingZ < widthChamber) {
57  G4Exception("B2bChamberParameterisation::B2bChamberParameterisation()",
58  "InvalidSetup", FatalException,
59  "Width>Spacing");
60  }
61  }
62 }
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41
Here is the call graph for this function:

◆ ~B2bChamberParameterisation() [1/2]

B2bChamberParameterisation::~B2bChamberParameterisation ( )
virtual

Definition at line 66 of file basic/B2/B2b/src/B2bChamberParameterisation.cc.

67 { }
Here is the call graph for this function:

◆ B2bChamberParameterisation() [2/2]

B2bChamberParameterisation::B2bChamberParameterisation ( G4int  noChambers,
G4double  startZ,
G4double  spacing,
G4double  widthChamber,
G4double  lengthInitial,
G4double  lengthFinal 
)

◆ ~B2bChamberParameterisation() [2/2]

virtual B2bChamberParameterisation::~B2bChamberParameterisation ( )
virtual

Member Function Documentation

◆ ComputeDimensions() [1/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Tubs trackerLayer,
const G4int  copyNo,
const G4VPhysicalVolume physVol 
) const
virtual

Reimplemented from G4VPVParameterisation.

Definition at line 84 of file basic/B2/B2b/src/B2bChamberParameterisation.cc.

85 {
86  // Note: copyNo will start with zero!
87  G4double rmax = fRmaxFirst + copyNo * fRmaxIncr;
88  trackerChamber.SetInnerRadius(0);
89  trackerChamber.SetOuterRadius(rmax);
90  trackerChamber.SetZHalfLength(fHalfWidth);
91  trackerChamber.SetStartPhiAngle(0.*deg);
92  trackerChamber.SetDeltaPhiAngle(360.*deg);
93 }
static const double deg
Definition: G4SIunits.hh:151
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ComputeDimensions() [2/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Tubs trackerLayer,
const G4int  copyNo,
const G4VPhysicalVolume physVol 
) const
virtual

Reimplemented from G4VPVParameterisation.

◆ ComputeDimensions() [3/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Box ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 80 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

81  {}

◆ ComputeDimensions() [4/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Box ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 80 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

81  {}

◆ ComputeDimensions() [5/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Trd ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 82 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

83  {}

◆ ComputeDimensions() [6/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Trd ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 82 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

83  {}

◆ ComputeDimensions() [7/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Trap ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 84 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

85  {}

◆ ComputeDimensions() [8/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Trap ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 84 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

85  {}

◆ ComputeDimensions() [9/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Cons ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 86 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

87  {}

◆ ComputeDimensions() [10/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Cons ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 86 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

87  {}

◆ ComputeDimensions() [11/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Sphere ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 88 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

89  {}

◆ ComputeDimensions() [12/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Sphere ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 88 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

89  {}

◆ ComputeDimensions() [13/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Orb ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 90 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

91  {}

◆ ComputeDimensions() [14/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Orb ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 90 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

91  {}

◆ ComputeDimensions() [15/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Ellipsoid ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 92 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

93  {}

◆ ComputeDimensions() [16/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Ellipsoid ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 92 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

93  {}

◆ ComputeDimensions() [17/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Torus ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 94 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

95  {}

◆ ComputeDimensions() [18/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Torus ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 94 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

95  {}

◆ ComputeDimensions() [19/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Para ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 96 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

97  {}

◆ ComputeDimensions() [20/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Para ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 96 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

97  {}

◆ ComputeDimensions() [21/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Hype ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 98 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

99  {}

◆ ComputeDimensions() [22/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Hype ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 98 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

99  {}

◆ ComputeDimensions() [23/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Polycone ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 100 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

101  {}

◆ ComputeDimensions() [24/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Polycone ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 100 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

101  {}

◆ ComputeDimensions() [25/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Polyhedra ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 102 of file basic/B2/B2b/include/B2bChamberParameterisation.hh.

103  {}

◆ ComputeDimensions() [26/26]

void B2bChamberParameterisation::ComputeDimensions ( G4Polyhedra ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VPVParameterisation.

Definition at line 102 of file extended/parallel/TBB/B2b/include/B2bChamberParameterisation.hh.

103  {}

◆ ComputeTransformation() [1/2]

void B2bChamberParameterisation::ComputeTransformation ( const G4int  copyNo,
G4VPhysicalVolume physVol 
) const
virtual

Implements G4VPVParameterisation.

Definition at line 72 of file basic/B2/B2b/src/B2bChamberParameterisation.cc.

73 {
74  // Note: copyNo will start with zero!
75  G4double Zposition = fStartZ + copyNo * fSpacing;
76  G4ThreeVector origin(0,0,Zposition);
77  physVol->SetTranslation(origin);
78  physVol->SetRotation(0);
79 }
void SetRotation(G4RotationMatrix *)
void SetTranslation(const G4ThreeVector &v)
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ComputeTransformation() [2/2]

void B2bChamberParameterisation::ComputeTransformation ( const G4int  copyNo,
G4VPhysicalVolume physVol 
) const
virtual

Implements G4VPVParameterisation.

Member Data Documentation

◆ fHalfWidth

G4double B2bChamberParameterisation::fHalfWidth
private

◆ fNoChambers

G4int B2bChamberParameterisation::fNoChambers
private

◆ fRmaxFirst

G4double B2bChamberParameterisation::fRmaxFirst
private

◆ fRmaxIncr

G4double B2bChamberParameterisation::fRmaxIncr
private

◆ fSpacing

G4double B2bChamberParameterisation::fSpacing
private

◆ fStartZ

G4double B2bChamberParameterisation::fStartZ
private

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