|
Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
|
G4PVParameterised represents many touchable detector elements differing in their positioning and dimensions. Both are calculated by means of a G4VParameterisation object. The positioning is assumed to be dominant along a specified Cartesian axis. More...
#include <G4PVParameterised.hh>
Public Member Functions | |
| G4PVParameterised (const G4String &pName, G4LogicalVolume *pLogical, G4LogicalVolume *pMotherLogical, const EAxis pAxis, const G4int nReplicas, G4VPVParameterisation *pParam, G4bool pSurfChk=false) | |
| G4PVParameterised (const G4String &pName, G4LogicalVolume *pLogical, G4VPhysicalVolume *pMother, const EAxis pAxis, const G4int nReplicas, G4VPVParameterisation *pParam, G4bool pSurfChk=false) | |
| G4PVParameterised (__void__ &) | |
| ~G4PVParameterised () override=default | |
| G4bool | IsParameterised () const override |
| EVolume | VolumeType () const final |
| G4VPVParameterisation * | GetParameterisation () const override |
| void | GetReplicationData (EAxis &axis, G4int &nReplicas, G4double &width, G4double &offset, G4bool &consuming) const override |
| void | SetRegularStructureId (G4int code) override |
| G4bool | CheckOverlaps (G4int res=1000, G4double tol=0., G4bool verbose=true, G4int maxErr=1) override |
G4PVParameterised represents many touchable detector elements differing in their positioning and dimensions. Both are calculated by means of a G4VParameterisation object. The positioning is assumed to be dominant along a specified Cartesian axis.
Definition at line 49 of file G4PVParameterised.hh.
| G4PVParameterised::G4PVParameterised | ( | const G4String & | pName, |
| G4LogicalVolume * | pLogical, | ||
| G4LogicalVolume * | pMotherLogical, | ||
| const EAxis | pAxis, | ||
| const G4int | nReplicas, | ||
| G4VPVParameterisation * | pParam, | ||
| G4bool | pSurfChk = false ) |
Replicates the volume 'nReplicas' times using the paramaterisation 'pParam', within the mother volume 'pMotherLogical'. The positioning of the replicas is dominant along the specified axis.
| [in] | pName | The volume name. |
| [in] | pLogical | Pointer to the logical volume of the replica. |
| [in] | pMotherLogical | Pointer to the logical volume of the mother. |
| [in] | pAxis | The axis along which do the replication. |
| [in] | nReplicas | The number of copies to replicate. |
| [in] | pParam | Pointer to the provided parameterisation algorithm. |
| [in] | pSurfChk | Boolean flag, if true activates check for overlaps with existing volumes (false by default). |
Definition at line 85 of file G4PVParameterised.cc.
| G4PVParameterised::G4PVParameterised | ( | const G4String & | pName, |
| G4LogicalVolume * | pLogical, | ||
| G4VPhysicalVolume * | pMother, | ||
| const EAxis | pAxis, | ||
| const G4int | nReplicas, | ||
| G4VPVParameterisation * | pParam, | ||
| G4bool | pSurfChk = false ) |
Similar to the constructor above, except for the mother pointer's type being here a G4VPhysicalVolume.
| [in] | pName | The volume name. |
| [in] | pLogical | Pointer to the logical volume of the replica. |
| [in] | pMother | Pointer to the physical volume of the mother. |
| [in] | pAxis | The axis along which do the replication. |
| [in] | nReplicas | The number of copies to replicate. |
| [in] | pParam | Pointer to the provided parameterisation algorithm. |
| [in] | pSurfChk | Boolean flag, if true activates check for overlaps with existing volumes (false by default). |
Definition at line 41 of file G4PVParameterised.cc.
| G4PVParameterised::G4PVParameterised | ( | __void__ & | a | ) |
Fake default constructor for usage restricted to direct object persistency for clients requiring preallocation of memory for persistifiable objects.
Definition at line 108 of file G4PVParameterised.cc.
|
overridedefault |
Default Destructor.
|
override |
Verifies if each instance of the parameterised volume is overlapping with other instances or with the mother volume. Provides default resolution for the number of points to be generated and verified. A tolerance for the precision of the overlap check can be specified, by default it is set to maximum precision. Reports a maximum of overlaps errors according to parameter in input.
| [in] | res | The number of points to generate on volume's surface. |
| [in] | tol | The precision tolerance for the overlap check, below which to ignore overlaps (deafult is maximim precision). |
| [in] | verbose | Verbosity mode (default is true). |
| [in] | maxErr | Maximum of overlaps errors to report (default is 1). |
Definition at line 168 of file G4PVParameterised.cc.
Referenced by G4PVParameterised(), G4PVParameterised(), and ~G4PVParameterised().
|
override |
Returns the current pointer to the parameterisation algorithm.
Definition at line 116 of file G4PVParameterised.cc.
Referenced by G4LogicalVolumeModel::DescribeYourselfTo(), G4VFieldModel::DescribeYourselfTo(), G4tgbGeometryDumper::DumpPVParameterised(), and ~G4PVParameterised().
|
override |
Fills arguments with the attributes from the base replica.
| [in,out] | axis | Axis of parameterisation returned. |
| [in,out] | nReplicas | The number of replica copies. |
| [in,out] | width | Width of the replica object. |
| [in,out] | offset | Potential offset in replication. |
| [in,out] | consuming | Flag of replica characterisation (always false for parameterisations). |
Definition at line 140 of file G4PVParameterised.cc.
Referenced by G4tgbGeometryDumper::DumpPVParameterised(), and ~G4PVParameterised().
|
override |
Returns true to identify if it is a parameterised physical volume.
Definition at line 124 of file G4PVParameterised.cc.
|
override |
Sets code and can prepare for special type of regular volumes.
Definition at line 156 of file G4PVParameterised.cc.
Referenced by ~G4PVParameterised().
|
final |
Returns the volume type characterisation.
Definition at line 132 of file G4PVParameterised.cc.