![]() |
EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/sPHENIX/Core/include/Acts/Surfaces/ConeBounds.hpp>
Inheritance diagram for Acts::ConeBounds:
Collaboration diagram for Acts::ConeBounds:Public Types | |
| enum | BoundValues : int { eAlpha = 0, eMinZ = 1, eMaxZ = 2, eHalfPhiSector = 3, eAveragePhi = 4, eSize = 5 } |
Public Types inherited from Acts::SurfaceBounds | |
| enum | BoundsType : int { eCone = 0, eCylinder = 1, eDiamond = 2, eDisc = 3, eEllipse = 5, eLine = 6, eRectangle = 7, eTrapezoid = 8, eTriangle = 9, eDiscTrapezoid = 10, eConvexPolygon = 11, eAnnulus = 12, eBoundless = 13, eOther = 14 } |
Public Member Functions | |
| ConeBounds ()=delete | |
| ConeBounds (double alpha, bool symm, double halfphi=M_PI, double avphi=0.) noexcept(false) | |
| ConeBounds (double alpha, double minz, double maxz, double halfphi=M_PI, double avphi=0.) noexcept(false) | |
| ConeBounds (const std::array< double, eSize > &values) noexcept(false) | |
| ~ConeBounds () override=default | |
| BoundsType | type () const final |
| std::vector< double > | values () const final |
| bool | inside (const Vector2D &lposition, const BoundaryCheck &bcheck=true) const final |
| std::ostream & | toStream (std::ostream &sl) const final |
| double | r (double z) const |
| double | tanAlpha () const |
| Return tangent of alpha (pre-computed) | |
| double | get (BoundValues bValue) const |
Public Member Functions inherited from Acts::SurfaceBounds | |
| virtual | ~SurfaceBounds ()=default |
Private Member Functions | |
| void | checkConsistency () noexcept(false) |
| Vector2D | shifted (const Vector2D &lposition) const |
| Shift r-phi coordinate to be centered around the average phi. | |
Private Attributes | |
| std::array< double, eSize > | m_values |
| double | m_tanAlpha |
Bounds for a conical surface, the opening angle is stored in
and always positively defined. The cone can open to both sides, steered by
and
.
Definition at line 31 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 31 of file ConeBounds.hpp
| enum Acts::ConeBounds::BoundValues : int |
Definition at line 33 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 33 of file ConeBounds.hpp
|
delete |
|
noexcept |
Constructor - open cone with alpha, by default a full cone but optionally can make a conical section
| alpha | is the opening angle of the cone |
| symm | is the boolean indicating if the cone is symmetric in +/- z |
| halfphi | is the half opening angle (default is pi) |
| avphi | is the phi value around which the bounds are opened (default=0) |
Definition at line 16 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 16 of file ConeBounds.cpp
References starlightConstants::alpha.
|
noexcept |
Constructor - open cone with alpha, minz and maxz, by default a full cone but can optionally make it a conical section
| alpha | is the opening angle of the cone |
| minz | cone expanding from minimal z |
| maxz | cone expanding to maximal z |
| halfphi | is the half opening angle (default is pi) |
| avphi | is the phi value around which the bounds are opened (default=0) |
Definition at line 24 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 24 of file ConeBounds.cpp
References starlightConstants::alpha, G4BECAL::maxz, and G4BECAL::minz.
|
noexcept |
Constructor - from parameters array
| values | The parameter array |
Definition at line 31 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 31 of file ConeBounds.cpp
|
overridedefault |
|
inlineprivatenoexcept |
Check the input values for consistency, will throw a logic_exception if consistency is not given
Definition at line 136 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 136 of file ConeBounds.hpp
References kdfinder::abs(), eAlpha, eAveragePhi, eHalfPhiSector, eMaxZ, eMinZ, M_PI, Acts::detail::radian_sym(), and Acts::s_epsilon.
Here is the call graph for this function:
|
inline |
Access to the bound values
| bValue | the class nested enum for the array access |
Definition at line 106 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 106 of file ConeBounds.hpp
References m_values.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
finalvirtual |
inside method for local position
| lposition | is the local position to be checked |
| bcheck | is the boundary check directive |
Implements Acts::SurfaceBounds.
Definition at line 56 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 56 of file ConeBounds.cpp
References Acts::eBoundLoc1, and 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:
|
inline |
Return the radius at a specific z values
| z | is the z value for which r is requested |
Definition at line 122 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 122 of file ConeBounds.hpp
References kdfinder::abs(), and m_tanAlpha.
Referenced by airy1(), airy1d(), airy2(), airy2d(), aiz(), biz(), Acts::Test::BOOST_AUTO_TEST_CASE(), calcta(), eix(), eixint(), expai(), expaid(), flap1(), flap2(), forintp(), forrhop(), generatez(), getdeltat(), getmass(), getscatterer(), hijing(), hijwds(), init(), irndm(), lflav(), lyspli(), makeinsplit(), makesplitting(), medderiv(), mednextevt(), nran(), nthick(), pepsimainerhic(), podinl(), pyangl(), pycbal(), pyfeyn(), pyhii3au(), pyi3au(), pymsin(), pyreco(), pyrnm3(), pyrnmq(), pytbdy(), pythag(), r1990(), r1998(), ranf(), rannor(), ranums(), riwibd(), rlu(), rndm(), ulangl(), vegas(), and wdsax().
Here is the call graph for this function:
|
private |
Shift r-phi coordinate to be centered around the average phi.
Private helper functin to shift a local 2D position
| lposition | The original local position |
Definition at line 42 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 42 of file ConeBounds.cpp
References Acts::eBoundLoc0, Acts::eBoundLoc1, Acts::detail::radian_sym(), and x.
Here is the call graph for this function:
|
inline |
Return tangent of alpha (pre-computed)
Definition at line 126 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 126 of file ConeBounds.hpp
References m_tanAlpha.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
finalvirtual |
Output Method for std::ostream
| sl | is the ostrea into which the dump is done |
Implements Acts::SurfaceBounds.
Definition at line 63 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 63 of file ConeBounds.cpp
References m_tanAlpha().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the call graph for this function:
Here is the caller graph for this function:
|
finalvirtual |
Return the bounds type - for persistency optimization
Implements Acts::SurfaceBounds.
Definition at line 37 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 37 of file ConeBounds.cpp
References Acts::SurfaceBounds::eCone.
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 130 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 130 of file ConeBounds.hpp
References m_values.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
private |
Definition at line 110 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 110 of file ConeBounds.hpp
Referenced by r(), and tanAlpha().
|
private |
Definition at line 109 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 109 of file ConeBounds.hpp