ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RE02NestedPhantomParameterisation Class Reference

#include <geant4/tree/geant4-10.6-release/examples/extended/runAndEvent/RE02/include/RE02NestedPhantomParameterisation.hh>

+ Inheritance diagram for RE02NestedPhantomParameterisation:
+ Collaboration diagram for RE02NestedPhantomParameterisation:

Public Member Functions

 RE02NestedPhantomParameterisation (const G4ThreeVector &voxelSize, G4int nz, std::vector< G4Material * > &mat)
 
 ~RE02NestedPhantomParameterisation ()
 
G4MaterialComputeMaterial (G4VPhysicalVolume *currentVol, const G4int repNo, const G4VTouchable *parentTouch=0)
 
G4int GetNumberOfMaterials () const
 
G4MaterialGetMaterial (G4int idx) const
 
void ComputeTransformation (const G4int no, G4VPhysicalVolume *currentPV) const
 
void ComputeDimensions (G4Box &, const G4int, const G4VPhysicalVolume *) const
 
- Public Member Functions inherited from G4VNestedParameterisation
 G4VNestedParameterisation ()
 
virtual ~G4VNestedParameterisation ()
 
virtual G4VSolidComputeSolid (const G4int no, G4VPhysicalVolume *thisVol)
 
G4MaterialComputeMaterial (const G4int repNo, G4VPhysicalVolume *currentVol, const G4VTouchable *parentTouch=nullptr)
 
virtual G4bool IsNested () const
 
virtual G4VVolumeMaterialScannerGetMaterialScanner ()
 
- Public Member Functions inherited from G4VPVParameterisation
 G4VPVParameterisation ()
 
virtual ~G4VPVParameterisation ()
 
- Public Member Functions inherited from G4VVolumeMaterialScanner
 G4VVolumeMaterialScanner ()
 
virtual ~G4VVolumeMaterialScanner ()
 

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

G4double fdX
 
G4double fdY
 
G4double fdZ
 
G4int fNz
 
std::vector< G4doublefpZ
 
std::vector< G4Material * > fMat
 

Detailed Description

A nested parameterisation class for a phantom

(Description) This parameterisation handles material and transfomation of voxles.

  • G4Material* ComputeMaterial(G4VPhysicalVolume *currentVol, const G4int repNo, const G4VTouchable *parentTouch=0) returns material. if ix%2==0 && iy%2==0 && iz%2==0 then fMat[0] else fMat[1]
  • void ComputeTransformation(const G4int no, G4VPhysicalVolume *currentPV) const returns a transformation with the physical volume of the 2nd argument according to copyNo Its position is defined as G4ThreeVector(0.,0.,fpZ[copyNo]).
  • void ComputeDimensions(G4Box &, const G4int, const G4VPhysicalVolume *) const returns dimensions of this parameterized volume with the physical volume of the 3rd argument.

Definition at line 91 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 91 of file RE02NestedPhantomParameterisation.hh

Constructor & Destructor Documentation

RE02NestedPhantomParameterisation::RE02NestedPhantomParameterisation ( const G4ThreeVector voxelSize,
G4int  nz,
std::vector< G4Material * > &  mat 
)

Definition at line 53 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 53 of file RE02NestedPhantomParameterisation.cc

RE02NestedPhantomParameterisation::~RE02NestedPhantomParameterisation ( )

Definition at line 74 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 74 of file RE02NestedPhantomParameterisation.cc

References fpZ.

Member Function Documentation

void RE02NestedPhantomParameterisation::ComputeDimensions ( G4Box box,
const G4int  ,
const G4VPhysicalVolume  
) const
virtual

Reimplemented from G4VNestedParameterisation.

Definition at line 135 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 135 of file RE02NestedPhantomParameterisation.cc

References G4Box::SetXHalfLength(), G4Box::SetYHalfLength(), and G4Box::SetZHalfLength().

+ Here is the call graph for this function:

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

Reimplemented from G4VNestedParameterisation.

Definition at line 130 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 130 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 132 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 132 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 134 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 134 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 136 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 136 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 138 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 138 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 140 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 140 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 142 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 142 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 144 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 144 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 146 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 146 of file RE02NestedPhantomParameterisation.hh

void RE02NestedPhantomParameterisation::ComputeDimensions ( G4Tubs ,
const G4int  ,
const G4VPhysicalVolume  
) const
inlineprivatevirtual

Reimplemented from G4VNestedParameterisation.

Definition at line 148 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 148 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 150 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 150 of file RE02NestedPhantomParameterisation.hh

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

Reimplemented from G4VNestedParameterisation.

Definition at line 152 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 152 of file RE02NestedPhantomParameterisation.hh

G4Material * RE02NestedPhantomParameterisation::ComputeMaterial ( G4VPhysicalVolume currentVol,
const G4int  repNo,
const G4VTouchable parentTouch = 0 
)
virtual

Implements G4VNestedParameterisation.

Definition at line 83 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 83 of file RE02NestedPhantomParameterisation.cc

References G4VTouchable::GetReplicaNumber(), and mat.

+ Here is the call graph for this function:

void RE02NestedPhantomParameterisation::ComputeTransformation ( const G4int  no,
G4VPhysicalVolume currentPV 
) const
virtual

Implements G4VNestedParameterisation.

Definition at line 125 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 125 of file RE02NestedPhantomParameterisation.cc

References position, and G4VPhysicalVolume::SetTranslation().

+ Here is the call graph for this function:

G4Material * RE02NestedPhantomParameterisation::GetMaterial ( G4int  idx) const
virtual

Implements G4VNestedParameterisation.

Definition at line 116 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 116 of file RE02NestedPhantomParameterisation.cc

References fMat.

G4int RE02NestedPhantomParameterisation::GetNumberOfMaterials ( ) const
virtual

Implements G4VNestedParameterisation.

Definition at line 107 of file RE02NestedPhantomParameterisation.cc.

View newest version in sPHENIX GitHub at line 107 of file RE02NestedPhantomParameterisation.cc

References fMat.

Member Data Documentation

G4double RE02NestedPhantomParameterisation::fdX
private

Definition at line 162 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 162 of file RE02NestedPhantomParameterisation.hh

G4double RE02NestedPhantomParameterisation::fdY
private

Definition at line 162 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 162 of file RE02NestedPhantomParameterisation.hh

G4double RE02NestedPhantomParameterisation::fdZ
private

Definition at line 162 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 162 of file RE02NestedPhantomParameterisation.hh

std::vector<G4Material*> RE02NestedPhantomParameterisation::fMat
private

Definition at line 166 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 166 of file RE02NestedPhantomParameterisation.hh

Referenced by GetMaterial(), and GetNumberOfMaterials().

G4int RE02NestedPhantomParameterisation::fNz
private

Definition at line 163 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 163 of file RE02NestedPhantomParameterisation.hh

std::vector<G4double> RE02NestedPhantomParameterisation::fpZ
private

Definition at line 165 of file RE02NestedPhantomParameterisation.hh.

View newest version in sPHENIX GitHub at line 165 of file RE02NestedPhantomParameterisation.hh

Referenced by ~RE02NestedPhantomParameterisation().


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