- changed status to resolved
Label an "element" as a collimator for output purposes
Issue #292
resolved
Often, a GDML file is used for particular collimator geometry. We would still like to have this counted as a ‘collimator’ for the purposes of special summary quantities and sensitivity such as number of collimators hit, collimator index, collimator histograms.
A collimator is distinguished by:
- a different sensitive detector class - “collimatorcomplete”
- vacuum volumes have the “vacuumedep” sensitive detector
- registering the mass logical volumes in a volume set in the AcceleratorModel, used in TrackingAction
- they are identifiable by their type name in the beam line
See:
std::vector<G4int> BDSBeamline::GetIndicesOfCollimators() const
I think one solution would be to create a new AcceleratorComponent class that inherits BDSElement so it has a unique type name for identification, but also so the sensitivity can be pasted correctly.
To check:
- for an “element” with named vacuum volumes - is the sensitivity correctly set to default “vacuumedep”?
- sensitivity isn’t double registered per volume if we ‘update’ it in proposed new derived class
Comments (1)
-
reporter - Log in to comment
This has been implemented now. An element can be marked as a collimator for the purpose of the collimator summary information. e.g.
tcp1: element, l=900.2*mm, geometryFile="gdml:jcol.gdml", markAsCollimator=1;
No new class was needed in the end.