Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Surfaces/ConeBounds.hpp>
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 = 4, eLine = 5, eRectangle = 6, eTrapezoid = 7, eTriangle = 8, eDiscTrapezoid = 9, eConvexPolygon = 10, eAnnulus = 11, eBoundless = 12, eOther = 13 } |
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 Vector2 &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) |
Vector2 | shifted (const Vector2 &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 37 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 37 of file ConeBounds.hpp
enum Acts::ConeBounds::BoundValues : int |
Definition at line 39 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 39 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 18 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 18 of file ConeBounds.cpp
References 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 26 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 26 of file ConeBounds.cpp
References alpha.
Constructor - from parameters array
values | The parameter array |
Definition at line 33 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 33 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 142 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 142 of file ConeBounds.hpp
References eAlpha, eAveragePhi, eHalfPhiSector, eMaxZ, eMinZ, Acts::detail::radian_sym(), and Acts::s_epsilon.
|
inline |
Access to the bound values
bValue | the class nested enum for the array access |
Definition at line 112 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 112 of file ConeBounds.hpp
References m_values.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
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 57 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 57 of file ConeBounds.cpp
References Acts::eBoundLoc1, Acts::BoundaryCheck::isInside(), and physmon_track_finding_ttbar::r.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Return the radius at a specific z values
z | is the z value for which r is requested |
Definition at line 128 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 128 of file ConeBounds.hpp
References m_tanAlpha.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
private |
Shift r-phi coordinate to be centered around the average phi.
Private helper function to shift a local 2D position
lposition | The original local position |
Definition at line 44 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 44 of file ConeBounds.cpp
References Acts::eBoundLoc0, Acts::eBoundLoc1, physmon_track_finding_ttbar::r, Acts::detail::radian_sym(), and ambiguity_solver_full_chain::x.
|
inline |
Return tangent of alpha (pre-computed)
Definition at line 132 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 132 of file ConeBounds.hpp
References m_tanAlpha.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
finalvirtual |
Output Method for std::ostream
sl | is the ostrea into which the dump is done |
Implements Acts::SurfaceBounds.
Definition at line 64 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 64 of file ConeBounds.cpp
References m_tanAlpha().
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
finalvirtual |
Return the bounds type - for persistency optimization
Implements Acts::SurfaceBounds.
Definition at line 39 of file ConeBounds.cpp.
View newest version in sPHENIX GitHub at line 39 of file ConeBounds.cpp
References Acts::SurfaceBounds::eCone.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inlinefinalvirtual |
Return the bound values as dynamically sized vector
Implements Acts::SurfaceBounds.
Definition at line 136 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 136 of file ConeBounds.hpp
References m_values.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
private |
Definition at line 116 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 116 of file ConeBounds.hpp
Referenced by r(), and tanAlpha().
Definition at line 115 of file ConeBounds.hpp.
View newest version in sPHENIX GitHub at line 115 of file ConeBounds.hpp