![]() |
ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/master/Core/include/Acts/Surfaces/RadialBounds.hpp>
Inheritance diagram for Acts::RadialBounds:
Collaboration diagram for Acts::RadialBounds:Public Types | |
| enum | BoundValues { eMinR = 0, eMaxR = 1, eHalfPhiSector = 2, eAveragePhi = 3, eSize = 4 } |
Public Member Functions | |
| RadialBounds ()=delete | |
| RadialBounds (double minR, double maxR, double halfPhi=M_PI, double avgPhi=0.) noexcept(false) | |
| RadialBounds (const std::array< double, eSize > &values) noexcept(false) | |
| ~RadialBounds () override=default | |
| SurfaceBounds::BoundsType | type () const final |
| std::vector< double > | values () const final |
| bool | inside (const Vector2D &lposition, const BoundaryCheck &bcheck) const final |
| double | distanceToBoundary (const Vector2D &lposition) const final |
| std::ostream & | toStream (std::ostream &sl) const final |
| double | rMin () const |
| Return method for inner Radius. | |
| double | rMax () const |
| Return method for outer Radius. | |
| double | get (BoundValues bValue) const |
| bool | coversFullAzimuth () const final |
| Returns true for full phi coverage. | |
| bool | insideRadialBounds (double R, double tolerance=0.) const final |
| double | binningValueR () const final |
| Return a reference radius for binning. | |
| double | binningValuePhi () const final |
| Return a reference radius for binning. | |
Private Member Functions | |
| void | checkConsistency () noexcept(false) |
| Vector2D | shifted (const Vector2D &lposition) const |
| std::vector< Vector2D > | vertices (unsigned int lseg) const |
Private Attributes | |
| std::array< double, eSize > | m_values |
Class to describe the bounds for a planar DiscSurface. By providing an argument for hphisec, the bounds can be restricted to a phi-range around the center position.
Definition at line 27 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 27 of file RadialBounds.hpp
Definition at line 29 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 29 of file RadialBounds.hpp
|
delete |
|
inlinenoexcept |
Constructor for full disc of symmetric disc around phi=0
| minR | The inner radius (0 for full disc) |
| maxR | The outer radius |
| halfPhi | The half opening angle (Pi for full angular coverage) |
| avgPhi | The average phi for the disc/ring sector |
Definition at line 45 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 45 of file RadialBounds.hpp
|
inlinenoexcept |
Constructor from array values
| values | The bound values |
Definition at line 54 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 54 of file RadialBounds.hpp
References checkConsistency().
Here is the call graph for this function:
|
overridedefault |
|
inlinefinalvirtual |
Return a reference radius for binning.
Implements Acts::DiscBounds.
Definition at line 158 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 158 of file RadialBounds.hpp
References eAveragePhi.
|
inlinefinalvirtual |
Return a reference radius for binning.
Implements Acts::DiscBounds.
Definition at line 154 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 154 of file RadialBounds.hpp
|
inlineprivatenoexcept |
Check the input values for consistency, will throw a logic_exception if consistency is not given
Definition at line 168 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 168 of file RadialBounds.hpp
References eAveragePhi, eHalfPhiSector, eMaxR, eMinR, M_PI, and Acts::detail::radian_sym().
Referenced by RadialBounds().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinefinalvirtual |
Returns true for full phi coverage.
Implements Acts::DiscBounds.
Definition at line 146 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 146 of file RadialBounds.hpp
References eHalfPhiSector, and M_PI.
|
finalvirtual |
Minimal distance to boundary calculation
| lposition | local 2D position in surface coordinate frame |
Implements Acts::SurfaceBounds.
Definition at line 36 of file RadialBounds.cpp.
View newest version in sPHENIX GitHub at line 36 of file RadialBounds.cpp
References Acts::BoundaryCheck::distance().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Access to the bound values
| bValue | the class nested enum for the array access |
Definition at line 97 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 97 of file RadialBounds.hpp
References m_values.
Referenced by Acts::adjustBinUtility(), Acts::Test::BOOST_AUTO_TEST_CASE(), and Acts::JsonGeometryConverter::DefaultBin().
Here is the caller graph for this function:
|
finalvirtual |
For disc surfaces the local position in (r,phi) is checked
| lposition | local position to be checked |
| bcheck | boundary check directive |
Implements Acts::SurfaceBounds.
Definition at line 29 of file RadialBounds.cpp.
View newest version in sPHENIX GitHub at line 29 of file RadialBounds.cpp
References Acts::BoundaryCheck::isInside().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlinefinalvirtual |
Checks if this is inside the radial coverage given the a tolerance
Implements Acts::DiscBounds.
Definition at line 150 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 150 of file RadialBounds.hpp
|
inlinevirtual |
Return method for outer Radius.
Implements Acts::DiscBounds.
Definition at line 142 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 142 of file RadialBounds.hpp
References eMaxR.
Referenced by Acts::JsonGeometryConverter::addSurfaceToJson(), Acts::CylinderVolumeBuilder::analyzeContent(), Acts::JsonGeometryConverter::DefaultBin(), Acts::CylinderVolumeHelper::estimateAndCheckDimension(), FW::Obj::ObjSurfaceWriter::write(), and FW::RootMaterialTrackWriter::writeT().
Here is the caller graph for this function:
|
inlinevirtual |
Return method for inner Radius.
Implements Acts::DiscBounds.
Definition at line 138 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 138 of file RadialBounds.hpp
References eMinR.
Referenced by Acts::JsonGeometryConverter::addSurfaceToJson(), Acts::CylinderVolumeBuilder::analyzeContent(), Acts::JsonGeometryConverter::DefaultBin(), Acts::CylinderVolumeHelper::estimateAndCheckDimension(), Acts::CylinderVolumeBuilder::trackingVolume(), FW::Obj::ObjSurfaceWriter::write(), and FW::RootMaterialTrackWriter::writeT().
Here is the caller graph for this function:
|
private |
Private helper method to shift a local position within the bounds
| lposition | The local position in polar coordinates |
Definition at line 21 of file RadialBounds.cpp.
View newest version in sPHENIX GitHub at line 21 of file RadialBounds.cpp
References Acts::eLOC_PHI, Acts::eLOC_R, Acts::detail::radian_sym(), and tmp.
Here is the call graph for this function:
|
finalvirtual |
Outstream operator
| sl | is the ostream to be dumped into |
Implements Acts::SurfaceBounds.
Definition at line 49 of file RadialBounds.cpp.
View newest version in sPHENIX GitHub at line 49 of file RadialBounds.cpp
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
finalvirtual |
Return the bounds type - for persistency optimization
Implements Acts::SurfaceBounds.
Definition at line 17 of file RadialBounds.cpp.
View newest version in sPHENIX GitHub at line 17 of file RadialBounds.cpp
References Acts::SurfaceBounds::eDisc.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
inlinefinalvirtual |
Return the bound values as dynamically sized vector
Implements Acts::SurfaceBounds.
Definition at line 162 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 162 of file RadialBounds.hpp
References m_values.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
privatevirtual |
This method returns the xy coordinates of vertices along the radial bounds
| lseg | the number of segments used to approximate and eventually curved line |
Implements Acts::DiscBounds.
Definition at line 43 of file RadialBounds.cpp.
View newest version in sPHENIX GitHub at line 43 of file RadialBounds.cpp
References Acts::detail::VerticesHelper::circularVertices().
Here is the call graph for this function:
|
private |
Definition at line 113 of file RadialBounds.hpp.
View newest version in sPHENIX GitHub at line 113 of file RadialBounds.hpp