BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Class that constructs a Geant4 model of an accelerator. More...
#include <BDSDetectorConstruction.hh>
Public Member Functions | |
BDSDetectorConstruction (BDSComponentFactoryUser *userComponentFactoryIn=nullptr) | |
void | UpdateSamplerDiameterAndCountSamplers () |
virtual G4VPhysicalVolume * | Construct () |
virtual void | ConstructSDandField () |
Construct sensitive detectors and fields. More... | |
void | BuildPhysicsBias () |
void | SetDesignParticle (const BDSParticleDefinition *defIn) |
Set the design particle definition. More... | |
BDSExtent | WorldExtent () const |
Public access to the world extent. More... | |
const std::vector< BDSFieldQueryInfo * > & | FieldQueries () const |
Access vector of query objects. More... | |
G4bool | BuildSamplerWorld () const |
G4bool | BuildPlacementFieldsWorld () const |
Static Public Member Functions | |
static void | PlaceBeamlineInWorld (BDSBeamline *beamline, G4VPhysicalVolume *containerPV, G4bool checkOverlaps=false, G4bool setRegions=false, G4bool registerInfo=false, G4bool useCLPlacementTransform=false, G4bool useIncrementalCopyNumbers=false) |
static G4Transform3D | CreatePlacementTransform (const GMAD::Placement &placement, const BDSBeamline *beamLine, G4double *S=nullptr, BDSExtent *placementExtent=nullptr, const G4String &objectTypeForErrorMsg="placement") |
static G4Transform3D | CreatePlacementTransform (const GMAD::ScorerMesh &scorerMesh, const BDSBeamline *beamLine, G4double *S=nullptr) |
placement and uses the above function. More... | |
static G4Transform3D | CreatePlacementTransform (const GMAD::SamplerPlacement &samplerPlacement, const BDSBeamline *beamLine, G4double *S=nullptr) |
static G4Transform3D | CreatePlacementTransform (const GMAD::BLMPlacement &blmPlacement, const BDSBeamline *beamLine, G4double *S=nullptr, BDSExtent *blmExtent=nullptr) |
Create a blm placement from a blm placement. More... | |
static G4Transform3D | CreatePlacementTransform (const GMAD::Query &queryPlacement, const BDSBeamline *beamLine, G4double *S=nullptr) |
Create a query placement from a query placement. More... | |
static G4ThreeVector | SideToLocalOffset (const GMAD::Placement &placement, const BDSBeamline *beamLine, const BDSExtent &placementExtent) |
Attach component with extent2 to component with extent1 with placement. More... | |
static BDSSamplerInfo * | BuildSamplerInfo (const GMAD::Element *element) |
static std::vector< BDSFieldQueryInfo * > | PrepareFieldQueries (const BDSBeamline *mainBeamline) |
Prepare field queries from parser information. More... | |
Private Member Functions | |
BDSDetectorConstruction & | operator= (const BDSDetectorConstruction &)=delete |
assignment and copy constructor not implemented nor used | |
BDSDetectorConstruction (BDSDetectorConstruction &)=delete | |
void | PrepareExtraSamplerSDs () |
void | CountPlacementFields () |
Count number of fields required for placements. More... | |
void | InitialiseRegions () |
Create and set parameters for various G4Regions. More... | |
void | InitialiseApertures () |
Create all aperture definitions from parser and store in BDSAcceleratorModel. More... | |
void | BuildBeamlines () |
Build the main beam line and then any other required beam lines. More... | |
BDSBeamlineSet | BuildBeamline (const GMAD::FastList< GMAD::Element > &beamLine, const G4String &name, const G4Transform3D &initialTransform=G4Transform3D(), G4double initialS=0.0, G4bool beamlineIsCircular=false, G4bool isPlacementBeamline=false) |
void | BuildTunnel () |
Build the tunnel around the already constructed flat beam line. More... | |
G4VPhysicalVolume * | BuildWorld () |
void | ComponentPlacement (G4VPhysicalVolume *worldPV) |
Place beam line, tunnel beam line, end pieces and placements in world. More... | |
G4bool | UnsuitableFirstElement (std::list< GMAD::Element >::const_iterator element) |
BDSExtent | CalculateExtentOfSamplerPlacement (const GMAD::SamplerPlacement &sp) const |
Calculate local extent of custom user sampler. More... | |
BDSExtentGlobal | CalculateExtentOfSamplerPlacements (const BDSBeamline *beamLine) const |
BDSExtent | CalculateExtentOfScorerMesh (const GMAD::ScorerMesh &sm) const |
Calculate local extent of scorer mesh in 3D. More... | |
BDSExtentGlobal | CalculateExtentOfScorerMeshes (const BDSBeamline *bl) const |
BDSBOptrMultiParticleChangeCrossSection * | BuildCrossSectionBias (const std::list< std::string > &biasList, const std::list< std::string > &defaultBias, const G4String &elementName) |
Function that creates physics biasing cross section. More... | |
void | ConstructScoringMeshes () |
Construct scoring meshes. More... | |
void | PrintUserLimitsSummary (const G4VPhysicalVolume *world) const |
void | PrintUserLimitsPV (const G4VPhysicalVolume *aPV, G4double globalMinEK) const |
Private Attributes | |
std::vector< BDSBOptrMultiParticleChangeCrossSection * > | biasObjects |
List of bias objects - for memory management. More... | |
std::map< G4String, BDSBOptrMultiParticleChangeCrossSection * > | biasSetObjects |
bool | debug = true |
BDSAcceleratorModel * | acceleratorModel |
Accelerator model pointer. More... | |
std::vector< BDSFieldObjects * > | fields |
All fields. More... | |
G4bool | circular |
Whether or not we're building a circular machine. More... | |
BDSExtent | worldExtent |
Record of the world extent. More... | |
BDSBeamline * | placementBL |
const BDSParticleDefinition * | designParticle |
Particle definition all components are built w.r.t. Includes rigidity etc. More... | |
G4bool | canSampleAngledFaces |
Whether the integrator set permits sampling elements with angled faces. More... | |
BDSComponentFactoryUser * | userComponentFactory |
G4int | nSamplers |
Count of number of samplers to be built. More... | |
G4bool | buildPlacementFieldsWorld |
std::set< G4LogicalVolume * > | worldContentsLogicalVolumes |
Cache of possibly loaded logical volumes from a world geometry file - used for biasing. More... | |
std::set< G4LogicalVolume * > | worldVacuumLogicalVolumes |
G4LogicalVolume * | worldLogicalVolume |
std::vector< BDSFieldQueryInfo * > | fieldQueries |
G4bool | verbose |
Variable copied from global constants. More... | |
G4bool | checkOverlaps |
Variable copied from global constants. More... | |
Class that constructs a Geant4 model of an accelerator.
Mandatory class that must be supplied for a valid Geant4 simulation. As construction is based on user input (via the parser) for a potentially large number of items, the construction process is factorised into key steps with member functions and makes use of factories for components and tunnel segments.
Maintained by Laurie Nevay & Jochem Snuverink
Definition at line 74 of file BDSDetectorConstruction.hh.
|
explicit |
Definition at line 122 of file BDSDetectorConstruction.cc.
|
virtual |
Definition at line 273 of file BDSDetectorConstruction.cc.
|
private |
Convert a parser beamline_list to BDSAcceleratorComponents with help of BDSComponentFactory and put in a BDSBeamline container that calculates coordinates and extents of the beamline.
Definition at line 387 of file BDSDetectorConstruction.cc.
References BDSBeamline::AddComponent(), BDSBeamline::begin(), GMAD::FastList< T >::begin(), BDSCurvilinearBuilder::BuildCurvilinearBeamLine1To1(), BDSCurvilinearBuilder::BuildCurvilinearBridgeBeamLine(), BDS::BuildEndPieceBeamline(), BuildSamplerInfo(), BDS::CalculateTeleporterDelta(), canSampleAngledFaces, circular, BDSComponentFactory::CreateComponent(), BDSComponentFactory::CreateTeleporter(), BDSComponentFactory::CreateTerminator(), BDSComponentFactory::CreateTiltOffset(), designParticle, GMAD::Element::e1, BDSBeamline::empty(), GMAD::FastList< T >::empty(), BDSBeamline::end(), GMAD::FastList< T >::end(), BDSBeamline::GetTotalArcLength(), BDSAcceleratorComponent::GetType(), BDSAcceleratorComponent::Initialise(), BDSGlobalConstants::Instance(), BDS::IsFinite(), BDSBeamline::rbegin(), BDSBeamline::rend(), BDSComponentFactoryUser::SetDesignParticle(), GMAD::FastList< T >::size(), UnsuitableFirstElement(), and BDSSurvey::Write().
Referenced by BuildBeamlines().
|
private |
Build the main beam line and then any other required beam lines.
Definition at line 312 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSBeamline::back(), BuildBeamline(), circular, CreatePlacementTransform(), BDSBeamline::ElementAnglesSumToCircle(), GMAD::Parser::GetBeamline(), BDSParser::GetPlacements(), BDSParser::GetSequence(), BDSBeamlineElement::GetSPositionEnd(), BDSAcceleratorComponentRegistry::Instance(), BDSGlobalConstants::Instance(), BDSParser::Instance(), BDSAcceleratorComponentRegistry::PrintNumberOfEachType(), BDSAcceleratorModel::RegisterBeamlineSetExtra(), BDSAcceleratorModel::RegisterBeamlineSetMain(), BDSAcceleratorComponentRegistry::size(), and verbose.
Referenced by Construct().
|
private |
Function that creates physics biasing cross section.
Definition at line 1072 of file BDSDetectorConstruction.cc.
References BDS::StrStrip().
Referenced by BuildPhysicsBias().
void BDSDetectorConstruction::BuildPhysicsBias | ( | ) |
Create biasing operations. This is done as a separate step as it has to be controlled externally and run only after RunManager->Initialise(). This means the bias can't be constructed as we go along in the component factory.
Definition at line 1129 of file BDSDetectorConstruction.cc.
References BDSAcceleratorComponentRegistry::AllComponentsIncludingUnique(), BuildCrossSectionBias(), GMAD::FastList< T >::empty(), BDSAcceleratorComponent::GetAcceleratorMaterialLogicalVolumes(), BDSAcceleratorComponent::GetAcceleratorVacuumLogicalVolumes(), BDSParser::GetBiasing(), BDSAcceleratorComponent::GetBiasMaterialList(), BDSAcceleratorComponent::GetBiasVacuumList(), BDSAcceleratorComponent::GetName(), BDSParser::GetOptions(), BDSAcceleratorComponentRegistry::Instance(), BDSBLMRegistry::Instance(), BDSGlobalConstants::Instance(), BDSParser::Instance(), BDS::SplitOnWhiteSpace(), BDSAcceleratorModel::VolumeSet(), and worldContentsLogicalVolumes.
Referenced by BDSIM::Initialise().
|
inline |
Definition at line 167 of file BDSDetectorConstruction.hh.
|
static |
Construct sampler specifications from a GMAD element. May return nullptr if none type is specified.
Definition at line 376 of file BDSDetectorConstruction.cc.
References GMAD::Element::samplerName, GMAD::Element::samplerParticleSetID, and GMAD::Element::samplerType.
Referenced by BuildBeamline().
|
inline |
Whether to build a sampler world or not. If we've counted more than one sampler we should build the world in the end.
Definition at line 165 of file BDSDetectorConstruction.hh.
References nSamplers.
Referenced by BDSIM::Initialise().
|
private |
Build the tunnel around the already constructed flat beam line.
Definition at line 536 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSAcceleratorModel::BeamlineMain(), BDSTunnelBuilder::BuildTunnelSections(), BDSGlobalConstants::Instance(), and BDSAcceleratorModel::RegisterTunnelBeamline().
Referenced by ComponentPlacement(), and Construct().
|
private |
Build the world volume using the extent of the BDSBeamline instance created in BuildBeamline()
Give the pv info registry a heads up that these volumes don't have info (optimisation).
Definition at line 547 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSGeometryComponent::AttachSensitiveDetectors(), BDSAuxiliaryNavigator::AttachWorldVolumeToNavigator(), BDSFieldQuery::AttachWorldVolumeToNavigator(), BDSAcceleratorModel::BeamlineSetMain(), BDSGeometryFactory::BuildGeometry(), CalculateExtentOfSamplerPlacements(), CalculateExtentOfScorerMeshes(), checkOverlaps, BDSExtentGlobal::Encompasses(), BDSAcceleratorModel::ExtraBeamlines(), BDSGeometryComponent::GetAllLogicalVolumes(), BDSGeometryComponent::GetContainerLogicalVolume(), BDSGeometryComponent::GetContainerSolid(), BDSGeometryComponent::GetExtent(), BDSBeamline::GetExtentGlobal(), BDSBeamlineSet::GetExtentGlobals(), BDSMaterials::GetMaterial(), BDSGeometryFactory::Instance(), BDSGlobalConstants::Instance(), BDSMaterials::Instance(), BDSPhysicalVolumeInfoRegistry::Instance(), BDSAcceleratorModel::PlacementBeamline(), BDSPhysicalVolumeInfoRegistry::RegisterExcludedPV(), BDSAcceleratorModel::RegisterWorldLV(), BDSAcceleratorModel::RegisterWorldPV(), BDSAcceleratorModel::RegisterWorldSolid(), BDS::SplitOnWhiteSpace(), BDSAcceleratorModel::TunnelBeamline(), BDSGeometryExternal::VacuumVolumes(), worldContentsLogicalVolumes, and worldExtent.
Referenced by Construct().
|
private |
Calculate local extent of custom user sampler.
Definition at line 1001 of file BDSDetectorConstruction.cc.
References BDSAcceleratorModel::Aperture(), BDSApertureInfo::Extent(), GMAD::SamplerPlacement::name, GMAD::SamplerPlacement::samplerType, BDSExtent::XNeg(), BDSExtent::XPos(), BDSExtent::YNeg(), and BDSExtent::YPos().
Referenced by CalculateExtentOfSamplerPlacements().
|
private |
Calculate the maximum global extent of all sampler placements from the parser. Beam line supplied to calculate placements in some cases.
Definition at line 1036 of file BDSDetectorConstruction.cc.
References CalculateExtentOfSamplerPlacement(), CreatePlacementTransform(), BDSExtentGlobal::ExpandToEncompass(), BDSParser::GetSamplerPlacements(), and BDSParser::Instance().
Referenced by BuildWorld().
|
private |
Calculate local extent of scorer mesh in 3D.
Definition at line 1050 of file BDSDetectorConstruction.cc.
Referenced by CalculateExtentOfScorerMeshes().
|
private |
Calculate the maximum global extent of all scoerer meshes from the parser. Beam line supplied to calculate placements in some cases.
Definition at line 1056 of file BDSDetectorConstruction.cc.
References CalculateExtentOfScorerMesh(), CreatePlacementTransform(), BDSExtentGlobal::ExpandToEncompass(), BDSParser::GetScorerMesh(), and BDSParser::Instance().
Referenced by BuildWorld().
|
private |
Place beam line, tunnel beam line, end pieces and placements in world.
Definition at line 713 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSAcceleratorModel::BeamlineSetMain(), BuildTunnel(), checkOverlaps, BDSAcceleratorModel::ExtraBeamlines(), BDSGlobalConstants::Instance(), PlaceBeamlineInWorld(), placementBL, and BDSAcceleratorModel::TunnelBeamline().
Referenced by Construct().
|
virtual |
Overridden Geant4 method that must be implemented. Constructs the Geant4 geometry and returns the finished world physical volume.
Definition at line 219 of file BDSDetectorConstruction.cc.
References BDSAcceleratorModel::BeamlineSetMain(), BuildBeamlines(), BDS::BuildBLMs(), BDS::BuildPlacementGeometry(), BuildTunnel(), BuildWorld(), ComponentPlacement(), designParticle, InitialiseApertures(), InitialiseRegions(), BDSGlobalConstants::Instance(), BDSParser::Instance(), placementBL, PrepareFieldQueries(), BDSAcceleratorModel::RegisterBLMs(), BDSAcceleratorModel::RegisterPlacementBeamline(), and verbose.
|
private |
Construct scoring meshes.
Definition at line 1284 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSAcceleratorModel::BeamlineMain(), CreatePlacementTransform(), BDSScorerFactory::CreateScorer(), BDSParser::GetScorerMesh(), BDSParser::GetScorers(), BDSParser::Instance(), BDS::LowerCase(), BDSScorerInfo::name, BDSSDManager::RegisterPrimitiveScorerNames(), BDSAcceleratorModel::RegisterScorerHistogramDefinition(), BDSAcceleratorModel::RegisterScorerPlacement(), BDS::SplitOnWhiteSpace(), and BDSAcceleratorModel::WorldLV().
Referenced by ConstructSDandField().
|
virtual |
Construct sensitive detectors and fields.
Definition at line 1262 of file BDSDetectorConstruction.cc.
References acceleratorModel, ConstructScoringMeshes(), BDSFieldBuilder::Instance(), and BDSAcceleratorModel::RegisterFields().
|
private |
Count number of fields required for placements.
Definition at line 207 of file BDSDetectorConstruction.cc.
References BDSParser::GetPlacements(), and BDSParser::Instance().
|
static |
Create a blm placement from a blm placement.
Definition at line 930 of file BDSDetectorConstruction.cc.
References CreatePlacementTransform().
|
static |
Create a transform based on the information in the placement. If S is supplied, it's updated with the final S coordinate calculated. If an extent is given - only in the case of a placement transform w.r.t. the curvilinear system (ie not global) - the side parameter from the placement is used to include an offset to the edge of the element.
Definition at line 803 of file BDSDetectorConstruction.cc.
References GMAD::Placement::angle, GMAD::Placement::axisAngle, GMAD::Placement::axisX, GMAD::Placement::axisY, GMAD::Placement::axisZ, BDSBeamline::GetElement(), BDSBeamline::GetGlobalEuclideanTransform(), BDSBeamlineElement::GetSPositionMiddle(), BDS::IsFinite(), GMAD::Placement::name, GMAD::Placement::phi, GMAD::Placement::psi, GMAD::Placement::referenceElement, GMAD::Placement::referenceElementNumber, GMAD::Placement::s, SideToLocalOffset(), GMAD::Placement::theta, GMAD::Placement::x, GMAD::Placement::y, and GMAD::Placement::z.
Referenced by BuildBeamlines(), BDS::BuildBLMs(), BDS::BuildPlacementGeometry(), CalculateExtentOfSamplerPlacements(), CalculateExtentOfScorerMeshes(), BDSParallelWorldSampler::Construct(), ConstructScoringMeshes(), CreatePlacementTransform(), and PrepareFieldQueries().
|
static |
Create a query placement from a query placement.
Definition at line 940 of file BDSDetectorConstruction.cc.
References CreatePlacementTransform().
|
static |
Create a sampler placement transform. Turns the sampler placement into a placement and uses the above function.
Definition at line 921 of file BDSDetectorConstruction.cc.
References CreatePlacementTransform().
|
static |
placement and uses the above function.
Definition at line 912 of file BDSDetectorConstruction.cc.
References CreatePlacementTransform().
|
inline |
Access vector of query objects.
Definition at line 103 of file BDSDetectorConstruction.hh.
|
private |
Create all aperture definitions from parser and store in BDSAcceleratorModel.
Definition at line 296 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSParser::Instance(), and BDSAcceleratorModel::RegisterApertures().
Referenced by Construct().
|
private |
Create and set parameters for various G4Regions.
Definition at line 284 of file BDSDetectorConstruction.cc.
References acceleratorModel, BDSParser::Instance(), and BDSAcceleratorModel::RegisterRegion().
Referenced by Construct().
|
static |
Loop over a beam line and place elements in a container (world). If a sensitive detector is specified in each component, this is applied to each volume. If regions are desired, the element is looked up in the region definitions and that is set up. If registerInfo, physical volume info is created and placed in a pv info registry. Public and static so it can be used by parallel world constructors. Last argument is whether to use the placement transform for curvilinear coordinate geometry that's different in the case of tilted dipoles.
Definition at line 749 of file BDSDetectorConstruction.cc.
References checkOverlaps, BDSPhysicalVolumeInfoRegistry::Instance(), BDSAcceleratorModel::Region(), and BDSPhysicalVolumeInfoRegistry::RegisterInfo().
Referenced by ComponentPlacement(), BDSParallelWorldCurvilinear::Construct(), and BDSParallelWorldCurvilinearBridge::Construct().
|
private |
Prepare extra sampler sensitive detector classes required if we have any particle filters created for samplers.
Definition at line 201 of file BDSDetectorConstruction.cc.
References BDSSDManager::ConstructSamplerSDsForParticleSets(), and BDSParser::Instance().
|
static |
Prepare field queries from parser information.
Definition at line 1387 of file BDSDetectorConstruction.cc.
References CreatePlacementTransform(), BDSParser::GetQuery(), BDSParser::Instance(), and BDS::LoadFieldQueryPoints().
Referenced by Construct().
|
private |
Definition at line 1454 of file BDSDetectorConstruction.cc.
|
private |
Definition at line 1446 of file BDSDetectorConstruction.cc.
|
inline |
Set the design particle definition.
Definition at line 97 of file BDSDetectorConstruction.hh.
References designParticle.
Referenced by BDSIM::Initialise().
|
static |
Attach component with extent2 to component with extent1 with placement.
Definition at line 948 of file BDSDetectorConstruction.cc.
References BDSExtent::DX(), BDSBeamline::end(), BDSExtent::ExtentZ(), BDSBeamline::FindFromS(), BDSGlobalConstants::Instance(), BDS::IsFinite(), BDS::LowerCase(), BDS::MaximumCombinedExtent(), GMAD::Placement::s, GMAD::Placement::side, GMAD::Placement::sideOffset, BDSExtent::XNeg(), BDSExtent::XPos(), BDSExtent::YNeg(), and BDSExtent::YPos().
Referenced by CreatePlacementTransform().
|
private |
Detect whether the first element has an angled face such that it might overlap with a previous element. Only used in case of a circular machine.
Definition at line 1270 of file BDSDetectorConstruction.cc.
Referenced by BuildBeamline().
void BDSDetectorConstruction::UpdateSamplerDiameterAndCountSamplers | ( | ) |
Loop over beam line and work out maximum tolerable sampler radius. Count all samplers and set member nSamplers and the same time.
Definition at line 156 of file BDSDetectorConstruction.cc.
References GMAD::Parser::GetBeamline(), BDSParser::GetSamplerPlacements(), BDSGlobalConstants::Instance(), BDSParser::Instance(), BDS::IsFinite(), nSamplers, BDSGlobalConstants::SetCurvilinearDiameter(), BDSGlobalConstants::SetCurvilinearDiameterShrunkForBends(), and BDSGlobalConstants::SetSamplerDiameter().
|
inline |
Public access to the world extent.
Definition at line 100 of file BDSDetectorConstruction.hh.
References worldExtent.
|
private |
Accelerator model pointer.
Definition at line 258 of file BDSDetectorConstruction.hh.
Referenced by BuildBeamlines(), BuildTunnel(), BuildWorld(), ComponentPlacement(), ConstructScoringMeshes(), ConstructSDandField(), InitialiseApertures(), and InitialiseRegions().
|
private |
List of bias objects - for memory management.
Definition at line 242 of file BDSDetectorConstruction.hh.
|
private |
Definition at line 243 of file BDSDetectorConstruction.hh.
|
private |
Definition at line 273 of file BDSDetectorConstruction.hh.
|
private |
Whether the integrator set permits sampling elements with angled faces.
Definition at line 268 of file BDSDetectorConstruction.hh.
Referenced by BuildBeamline().
|
private |
Variable copied from global constants.
Definition at line 254 of file BDSDetectorConstruction.hh.
Referenced by BuildWorld(), ComponentPlacement(), and PlaceBeamlineInWorld().
|
private |
Whether or not we're building a circular machine.
Definition at line 263 of file BDSDetectorConstruction.hh.
Referenced by BuildBeamline(), and BuildBeamlines().
|
private |
Definition at line 247 of file BDSDetectorConstruction.hh.
|
private |
Particle definition all components are built w.r.t. Includes rigidity etc.
Definition at line 267 of file BDSDetectorConstruction.hh.
Referenced by BuildBeamline(), Construct(), and SetDesignParticle().
|
private |
Definition at line 280 of file BDSDetectorConstruction.hh.
|
private |
All fields.
Definition at line 261 of file BDSDetectorConstruction.hh.
|
private |
Count of number of samplers to be built.
Definition at line 272 of file BDSDetectorConstruction.hh.
Referenced by BuildSamplerWorld(), and UpdateSamplerDiameterAndCountSamplers().
|
private |
Placement beam line.
Definition at line 265 of file BDSDetectorConstruction.hh.
Referenced by ComponentPlacement(), and Construct().
|
private |
Definition at line 270 of file BDSDetectorConstruction.hh.
|
private |
Variable copied from global constants.
Definition at line 253 of file BDSDetectorConstruction.hh.
Referenced by BuildBeamlines(), and Construct().
|
private |
Cache of possibly loaded logical volumes from a world geometry file - used for biasing.
Definition at line 276 of file BDSDetectorConstruction.hh.
Referenced by BuildPhysicsBias(), and BuildWorld().
|
private |
Record of the world extent.
Definition at line 264 of file BDSDetectorConstruction.hh.
Referenced by BuildWorld(), and WorldExtent().
|
private |
Definition at line 278 of file BDSDetectorConstruction.hh.
|
private |
Definition at line 277 of file BDSDetectorConstruction.hh.