Class RadialBounds

Inheritance Relationships

Base Type

Class Documentation

class Acts::RadialBounds : public Acts::DiscBounds

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.

Public Types

enum BoundValues

Values:

enumerator eMinR
enumerator eMaxR
enumerator eHalfPhiSector
enumerator eAveragePhi
enumerator eSize

Public Functions

RadialBounds() = delete
RadialBounds(double minR, double maxR, double halfPhi = M_PI, double avgPhi = 0.) noexcept(false)

Constructor for full disc of symmetric disc around phi=0.

Parameters
  • 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

RadialBounds(const std::array<double, eSize> &values) noexcept(false)

Constructor from array values.

Parameters
  • values: The bound values

~RadialBounds() override = default
double binningValuePhi() const final

Return a reference radius for binning.

double binningValueR() const final

Return a reference radius for binning.

bool coversFullAzimuth() const final

Returns true for full phi coverage.

double get(BoundValues bValue) const

Access to the bound values.

Parameters
  • bValue: the class nested enum for the array access

bool inside(const Vector2 &lposition, const BoundaryCheck &bcheck) const final

For disc surfaces the local position in (r,phi) is checked.

Return

is a boolean indicating the operation success

Parameters
  • lposition: local position to be checked

  • bcheck: boundary check directive

bool insideRadialBounds(double R, double tolerance = 0.) const final

Checks if this is inside the radial coverage given the a tolerance.

double rMax() const final

Return method for outer Radius.

double rMin() const final

Return method for inner Radius.

std::ostream &toStream(std::ostream &sl) const final

Outstream operator.

Parameters
  • sl: is the ostream to be dumped into

SurfaceBounds::BoundsType type() const final

Return the bounds type - for persistency optimization.

Return

is a BoundsType enum

std::vector<double> values() const final

Return the bound values as dynamically sized vector.

Return

this returns a copy of the internal values