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

A parameterisation that describes a series of boxes along Z. More...

#include <Doxymodules_parallel.h>

Inheritance diagram for B2bChamberParameterisation:
G4VPVParameterisation

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
 

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
 

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 92 of file Doxymodules_parallel.h.

Constructor & Destructor Documentation

◆ B2bChamberParameterisation()

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

Definition at line 39 of file B2bChamberParameterisation.cc.

47{
48 fNoChambers = noChambers;
49 fStartZ = startZ;
50 fHalfWidth = 0.5*widthChamber;
51 fSpacing = spacingZ;
52 fRmaxFirst = 0.5 * lengthInitial;
53 if( noChambers > 0 ){
54 fRmaxIncr = 0.5 * (lengthFinal-lengthInitial)/(noChambers-1);
55 if (spacingZ < widthChamber) {
56 G4Exception("B2bChamberParameterisation::B2bChamberParameterisation()",
57 "InvalidSetup", FatalException,
58 "Width>Spacing");
59 }
60 }
61}

◆ ~B2bChamberParameterisation()

B2bChamberParameterisation::~B2bChamberParameterisation ( )
virtual

Definition at line 65 of file B2bChamberParameterisation.cc.

66{ }

Member Function Documentation

◆ ComputeTransformation()

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

Definition at line 70 of file B2bChamberParameterisation.cc.

72{
73 // Note: copyNo will start with zero!
74 G4double Zposition = fStartZ + copyNo * fSpacing;
75 G4ThreeVector origin(0,0,Zposition);
76 physVol->SetTranslation(origin);
77 physVol->SetRotation(0);
78}

◆ ComputeDimensions() [1/13]

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

Definition at line 82 of file B2bChamberParameterisation.cc.

84{
85 // Note: copyNo will start with zero!
86 G4double rmax = fRmaxFirst + copyNo * fRmaxIncr;
87 trackerChamber.SetInnerRadius(0);
88 trackerChamber.SetOuterRadius(rmax);
89 trackerChamber.SetZHalfLength(fHalfWidth);
90 trackerChamber.SetStartPhiAngle(0.*deg);
91 trackerChamber.SetDeltaPhiAngle(360.*deg);
92}

◆ ComputeDimensions() [2/13]

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

Definition at line 79 of file B2bChamberParameterisation.hh.

80 {}

◆ ComputeDimensions() [3/13]

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

Definition at line 81 of file B2bChamberParameterisation.hh.

82 {}

◆ ComputeDimensions() [4/13]

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

Definition at line 83 of file B2bChamberParameterisation.hh.

84 {}

◆ ComputeDimensions() [5/13]

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

Definition at line 85 of file B2bChamberParameterisation.hh.

86 {}

◆ ComputeDimensions() [6/13]

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

Definition at line 87 of file B2bChamberParameterisation.hh.

88 {}

◆ ComputeDimensions() [7/13]

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

Definition at line 89 of file B2bChamberParameterisation.hh.

90 {}

◆ ComputeDimensions() [8/13]

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

Definition at line 91 of file B2bChamberParameterisation.hh.

92 {}

◆ ComputeDimensions() [9/13]

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

Definition at line 93 of file B2bChamberParameterisation.hh.

94 {}

◆ ComputeDimensions() [10/13]

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

Definition at line 95 of file B2bChamberParameterisation.hh.

96 {}

◆ ComputeDimensions() [11/13]

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

Definition at line 97 of file B2bChamberParameterisation.hh.

98 {}

◆ ComputeDimensions() [12/13]

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

Definition at line 99 of file B2bChamberParameterisation.hh.

100 {}

◆ ComputeDimensions() [13/13]

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

Definition at line 101 of file B2bChamberParameterisation.hh.

102 {}

Member Data Documentation

◆ fNoChambers

G4int B2bChamberParameterisation::fNoChambers
private

Definition at line 106 of file B2bChamberParameterisation.hh.

◆ fStartZ

G4double B2bChamberParameterisation::fStartZ
private

Definition at line 107 of file B2bChamberParameterisation.hh.

◆ fHalfWidth

G4double B2bChamberParameterisation::fHalfWidth
private

Definition at line 108 of file B2bChamberParameterisation.hh.

◆ fSpacing

G4double B2bChamberParameterisation::fSpacing
private

Definition at line 109 of file B2bChamberParameterisation.hh.

◆ fRmaxFirst

G4double B2bChamberParameterisation::fRmaxFirst
private

Definition at line 110 of file B2bChamberParameterisation.hh.

◆ fRmaxIncr

G4double B2bChamberParameterisation::fRmaxIncr
private

Definition at line 111 of file B2bChamberParameterisation.hh.


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

Applications | User Support | Publications | Collaboration