LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Geometry information for a single cryostat. More...
#include "CryostatGeo.h"
Classes | |
struct | CryostatGeoCoordinatesTag |
Tag for vectors in the "local" GDML coordinate frame of the cryostat. More... | |
Public Types | |
using | ID_t = CryostatID |
using | TPCList_t = std::vector< geo::TPCGeo > |
Type used internally to store the TPCs. More... | |
using | OpDetList_t = std::vector< geo::OpDetGeo > |
Type used internally to store the optical detectors. More... | |
using | GeoNodePath_t = geo::WireGeo::GeoNodePath_t |
using | ElementIteratorBox = TPCList_t const & |
Type returned by IterateElements() . More... | |
using | Coords_t = geo::Point_t |
Type of the coordinate triplet. More... | |
using | Coord_t = Coords_t::Scalar |
Type of the coordinate. More... | |
Types for geometry-local reference vectors. | |
These types represents points and displacement vectors in the reference frame defined in the cryostat geometry box from the GDML geometry description. No alias is explicitly defined for the LArSoft global vector types, Remember the | |
using | LocalPoint_t = geo::Point3DBase_t< CryostatGeoCoordinatesTag > |
Type of points in the local GDML cryostat frame. More... | |
using | LocalVector_t = geo::Vector3DBase_t< CryostatGeoCoordinatesTag > |
Type of displacement vectors in the local GDML cryostat frame. More... | |
Public Member Functions | |
CryostatGeo (TGeoNode const &node, geo::TransformationMatrix &&trans, TPCList_t &&TPCs, OpDetList_t &&OpDets) | |
Construct a representation of a single cryostat of the detector. More... | |
void | SortSubVolumes (geo::GeoObjectSorter const &sorter) |
Method to sort TPCGeo objects. More... | |
void | UpdateAfterSorting (geo::CryostatID cryoid) |
Performs all needed updates after geometry has sorted the cryostats. More... | |
TPC access | |
unsigned int | NTPC () const |
Number of TPCs in this cryostat. More... | |
unsigned int | NElements () const |
Alias for NTPC() . More... | |
bool | HasTPC (unsigned int itpc) const |
Returns whether a TPC with index itpc is present in this cryostat. More... | |
bool | HasElement (unsigned int itpc) const |
Alias for HasTPC() . More... | |
bool | HasTPC (geo::TPCID const &tpcid) const |
Returns whether the TPC in tpcid is present in this cryostat. More... | |
bool | HasElement (geo::TPCID const &tpcid) const |
Alias for HasTPC(geo::TPCID const&) More... | |
const TPCGeo & | TPC (unsigned int itpc) const |
Return the itpc'th TPC in the cryostat. More... | |
const TPCGeo & | TPC (TPCID const &tpcid) const |
Returns the TPC in tpcid from this cryostat. More... | |
const TPCGeo & | GetElement (TPCID const &tpcid) const |
Alias for TPC() . More... | |
ElementIteratorBox | IterateElements () const |
Returns an object suitable for iterating through all TPCs. More... | |
ElementIteratorBox | IterateTPCs () const |
Returns an object suitable for iterating through all TPCs. More... | |
TPCGeo const * | TPCPtr (unsigned int itpc) const |
Returns the TPC number itpc from this cryostat. More... | |
TPCGeo const * | TPCPtr (TPCID const &tpcid) const |
Returns the TPC in tpcid from this cryostat. More... | |
TPCGeo const * | GetElementPtr (TPCID const &tpcid) const |
Alias for TPCPtr() . More... | |
geo::TPCID | PositionToTPCID (geo::Point_t const &point, double wiggle) const |
Returns the ID of the TPC at specified location. More... | |
TPCGeo const & | PositionToTPC (geo::Point_t const &point, double wiggle) const |
Returns the ID of the TPC at specified location. More... | |
TPCGeo const & | PositionToTPC (double const worldLoc[3], double wiggle) const |
Returns the ID of the TPC at specified location. More... | |
geo::TPCGeo const * | PositionToTPCptr (geo::Point_t const &point, double wiggle) const |
Returns a pointer to the TPC at specified location. More... | |
unsigned int | MaxPlanes () const |
Returns the largest number of planes among the TPCs in this cryostat. More... | |
unsigned int | MaxWires () const |
Returns the largest number of wires among the TPCs in this cryostat. More... | |
Optical detector access | |
unsigned int | NOpDet () const |
Number of optical detectors in this TPC. More... | |
const OpDetGeo & | OpDet (unsigned int iopdet) const |
Return the iopdet'th optical detector in the cryostat. More... | |
unsigned int | GetClosestOpDet (geo::Point_t const &point) const |
unsigned int | GetClosestOpDet (double const *point) const |
geo::OpDetGeo const * | GetClosestOpDetPtr (geo::Point_t const &point) const |
std::string | OpDetGeoName () const |
Get name of opdet geometry element. More... | |
Coordinate transformation | |
geo::Point_t | toWorldCoords (LocalPoint_t const &local) const |
Transform point from local cryostat frame to world frame. More... | |
geo::Vector_t | toWorldCoords (LocalVector_t const &local) const |
Transform direction vector from local to world. More... | |
LocalPoint_t | toLocalCoords (geo::Point_t const &world) const |
Transform point from world frame to local cryostat frame. More... | |
LocalVector_t | toLocalCoords (geo::Vector_t const &world) const |
Transform direction vector from world to local. More... | |
Dimension queries | |
double | MinX () const |
Returns the world x coordinate of the start of the box. More... | |
double | MaxX () const |
Returns the world x coordinate of the end of the box. More... | |
double | CenterX () const |
Returns the world x coordinate of the center of the box. More... | |
double | SizeX () const |
Returns the full size in the X dimension. More... | |
double | HalfSizeX () const |
Returns the size from the center to the border on X dimension. More... | |
double | MinY () const |
Returns the world y coordinate of the start of the box. More... | |
double | MaxY () const |
Returns the world y coordinate of the end of the box. More... | |
double | CenterY () const |
Returns the world y coordinate of the center of the box. More... | |
double | SizeY () const |
Returns the full size in the Y dimension. More... | |
double | HalfSizeY () const |
Returns the size from the center to the border on Y dimension. More... | |
double | MinZ () const |
Returns the world z coordinate of the start of the box. More... | |
double | MaxZ () const |
Returns the world z coordinate of the end of the box. More... | |
double | CenterZ () const |
Returns the world z coordinate of the center of the box. More... | |
double | SizeZ () const |
Returns the full size in the Z dimension. More... | |
double | HalfSizeZ () const |
Returns the size from the center to the border on Z dimension. More... | |
geo::Point_t | Min () const |
Returns the corner point with the smallest coordinates. More... | |
geo::Point_t | Max () const |
Returns the corner point with the largest coordinates. More... | |
geo::Point_t | Center () const |
Returns the center point of the box. More... | |
Containment in the full volume | |
bool | ContainsX (double x, double const wiggle=1) const |
Returns whether this TPC contains the specified world x coordinate. More... | |
bool | ContainsY (double y, double const wiggle=1) const |
Returns whether this TPC contains the specified world y coordinate. More... | |
bool | ContainsZ (double z, double const wiggle=1) const |
Returns whether this TPC contains the specified world z coordinate. More... | |
bool | ContainsYZ (double y, double z, double const wiggle=1) const |
Returns if TPC contains the specified world y and z coordinates. More... | |
bool | ContainsPosition (geo::Point_t const &point, double wiggle=1.0) const |
Returns whether this volume contains the specified point. More... | |
bool | ContainsPosition (TVector3 const &point, double wiggle=1.0) const |
bool | ContainsPosition (double const *point, double wiggle=1.0) const |
Containment in a fiducial volume | |
bool | InFiducialX (double x, double neg_margin, double pos_margin) const |
Returns whether TPC fiducial volume contains world x coordinate. More... | |
bool | InFiducialX (double x, double margin) const |
Returns whether TPC fiducial volume contains world x coordinate. More... | |
bool | InFiducialY (double y, double neg_margin, double pos_margin) const |
Returns whether TPC fiducial volume contains world y coordinate. More... | |
bool | InFiducialY (double y, double margin) const |
Returns whether TPC fiducial volume contains world y coordinate. More... | |
bool | InFiducialZ (double z, double neg_margin, double pos_margin) const |
Returns whether TPC fiducial volume contains world z coordinate. More... | |
bool | InFiducialZ (double z, double margin) const |
Returns whether TPC fiducial volume contains world z coordinate. More... | |
Overlaps | |
bool | OverlapsX (geo::BoxBoundedGeo const &other) const |
Returns if the x coordinates covered by this and other box overlap. More... | |
bool | OverlapsY (geo::BoxBoundedGeo const &other) const |
Returns if the y coordinates covered by this and other box overlap. More... | |
bool | OverlapsZ (geo::BoxBoundedGeo const &other) const |
Returns if the z coordinates covered by this and other box overlap. More... | |
bool | Overlaps (geo::BoxBoundedGeo const &other) const |
Returns if this and other box overlap. More... | |
Setting dimensions | |
void | SetBoundaries (Coord_t x_min, Coord_t x_max, Coord_t y_min, Coord_t y_max, Coord_t z_min, Coord_t z_max) |
Sets the boundaries in world coordinates as specified. More... | |
void | SetBoundaries (Coords_t lower, Coords_t upper) |
Sets the boundaries in world coordinates as specified. More... | |
void | ExtendToInclude (Coord_t x, Coord_t y, Coord_t z) |
Extends the current box to also include the specified point. More... | |
void | ExtendToInclude (geo::Point_t const &point) |
Extends the current box to also include the specified point. More... | |
void | ExtendToInclude (BoxBoundedGeo const &box) |
Extends the current box to also include the specified one. More... | |
std::vector< TVector3 > | GetIntersections (TVector3 const &TrajectoryStart, TVector3 const &TrajectoryDirect) const |
Calculates the entry and exit points of a trajectory on the box surface. More... | |
std::vector< geo::Point_t > | GetIntersections (geo::Point_t const &TrajectoryStart, geo::Vector_t const &TrajectoryDirect) const |
Calculates the entry and exit points of a trajectory on the box surface. More... | |
Static Public Member Functions | |
static bool | CoordinateContained (double c, double min, double max, double wiggle=1.) |
Returns whether the specified coordinate is in a range. More... | |
static bool | CoordinateContained (double c, double const *range, double wiggle=1.) |
Returns whether the specified coordinate is in a range. More... | |
static void | set_min (Coord_t &var, Coord_t value) |
Sets var to value if value is smaller than the current var value. More... | |
static void | set_min (Coords_t &var, geo::Point_t const &value) |
Sets each coordinate of var to the one in value if the latter is smaller. More... | |
static void | set_max (Coord_t &var, Coord_t value) |
Sets var to value if value is larger than the current var value. More... | |
static void | set_max (Coords_t &var, geo::Point_t const &value) |
Sets each coordinate of var to the one in value if the latter is larger. More... | |
Private Types | |
using | LocalTransformation_t = geo::LocalTransformationGeo< ROOT::Math::Transform3D, LocalPoint_t, LocalVector_t > |
Private Member Functions | |
void | FindTPC (std::vector< const TGeoNode * > &path, unsigned int depth) |
void | MakeTPC (std::vector< const TGeoNode * > &path, int depth) |
void | FindOpDet (std::vector< const TGeoNode * > &path, unsigned int depth) |
void | MakeOpDet (std::vector< const TGeoNode * > &path, int depth) |
void | InitCryoBoundaries () |
Fill the boundary information of the cryostat. More... | |
Private Attributes | |
LocalTransformation_t | fTrans |
Cryostat-to-world transformation. More... | |
TPCList_t | fTPCs |
List of tpcs in this cryostat. More... | |
OpDetList_t | fOpDets |
List of opdets in this cryostat. More... | |
TGeoVolume * | fVolume |
Total volume of cryostat, called volCryostat in GDML file. More... | |
std::string | fOpDetGeoName |
Name of opdet geometry elements in gdml. More... | |
geo::CryostatID | fID |
ID of this cryostat. More... | |
Cryostat geometry information | |
static constexpr unsigned int | MaxVerbosity = 3 |
Maximum verbosity supported by PrintCryostatInfo() . More... | |
double | HalfWidth () const |
Half width of the cryostat [cm]. More... | |
double | HalfHeight () const |
Half height of the cryostat [cm]. More... | |
double | HalfLength () const |
Half height of the cryostat [cm]. More... | |
double | Width () const |
Full width of the cryostat [cm]. More... | |
double | Height () const |
Full height of the cryostat [cm]. More... | |
double | Length () const |
Length of the cryostat [cm]. More... | |
double | Mass () const |
Mass of the cryostat. More... | |
const TGeoVolume * | Volume () const |
Pointer to ROOT's volume descriptor. More... | |
geo::BoxBoundedGeo const & | Boundaries () const |
Returns boundaries of the cryostat (in centimetres). More... | |
void | Boundaries (double *boundaries) const |
Fills boundaries of the cryostat (in centimetres). More... | |
geo::Point_t | GetCenter () const |
Returns the geometrical center of the cryostat. More... | |
geo::BoxBoundedGeo const & | BoundingBox () const |
Returns the bounding box of this cryostat. More... | |
geo::CryostatID const & | ID () const |
Returns the identifier of this cryostat. More... | |
template<typename Stream > | |
void | PrintCryostatInfo (Stream &&out, std::string indent="", unsigned int verbosity=1) const |
Prints information about this cryostat. More... | |
std::string | CryostatInfo (std::string indent="", unsigned int verbosity=1) const |
Returns a string with cryostat information. More... | |
Geometry information for a single cryostat.
Definition at line 43 of file CryostatGeo.h.
|
inherited |
Type of the coordinate.
Definition at line 36 of file BoxBoundedGeo.h.
|
inherited |
Type of the coordinate triplet.
Definition at line 35 of file BoxBoundedGeo.h.
using geo::CryostatGeo::ElementIteratorBox = TPCList_t const& |
Type returned by IterateElements()
.
Definition at line 57 of file CryostatGeo.h.
Definition at line 54 of file CryostatGeo.h.
using geo::CryostatGeo::ID_t = CryostatID |
Definition at line 46 of file CryostatGeo.h.
Type of points in the local GDML cryostat frame.
Definition at line 79 of file CryostatGeo.h.
|
private |
Definition at line 391 of file CryostatGeo.h.
Type of displacement vectors in the local GDML cryostat frame.
Definition at line 82 of file CryostatGeo.h.
using geo::CryostatGeo::OpDetList_t = std::vector<geo::OpDetGeo> |
Type used internally to store the optical detectors.
Definition at line 52 of file CryostatGeo.h.
using geo::CryostatGeo::TPCList_t = std::vector<geo::TPCGeo> |
Type used internally to store the TPCs.
Definition at line 49 of file CryostatGeo.h.
geo::CryostatGeo::CryostatGeo | ( | TGeoNode const & | node, |
geo::TransformationMatrix && | trans, | ||
TPCList_t && | TPCs, | ||
OpDetList_t && | OpDets | ||
) |
Construct a representation of a single cryostat of the detector.
Definition at line 32 of file CryostatGeo.cxx.
References fOpDetGeoName, fVolume, InitCryoBoundaries(), and MF_LOG_DEBUG.
|
inline |
Returns boundaries of the cryostat (in centimetres).
Definition at line 114 of file CryostatGeo.h.
References BoundingBox().
Referenced by opdet::SimPhotonCounter::beginJob(), evgen::PhotonGen::beginRun(), GetCenter(), and phot::PhotonVisibilityService::reconfigure().
void geo::CryostatGeo::Boundaries | ( | double * | boundaries | ) | const |
Fills boundaries of the cryostat (in centimetres).
boundaries | filled as: [0] -x [1] +x [2] -y [3] +y [4] -z [5] +z |
Definition at line 181 of file CryostatGeo.cxx.
References geo::BoxBoundedGeo::MaxX(), geo::BoxBoundedGeo::MaxY(), geo::BoxBoundedGeo::MaxZ(), geo::BoxBoundedGeo::MinX(), geo::BoxBoundedGeo::MinY(), and geo::BoxBoundedGeo::MinZ().
|
inline |
Returns the bounding box of this cryostat.
Definition at line 124 of file CryostatGeo.h.
Referenced by Boundaries(), PrintCryostatInfo(), and phot::PhotonVisibilityService::reconfigure().
|
inlineinherited |
Returns the center point of the box.
Definition at line 141 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CenterX(), geo::BoxBoundedGeo::CenterY(), and geo::BoxBoundedGeo::CenterZ().
Referenced by geo::buildDriftVolumes(), GetCenter(), and geo::PlaneGeo::UpdatePlaneNormal().
|
inlineinherited |
Returns the world x coordinate of the center of the box.
Definition at line 96 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxX(), and geo::BoxBoundedGeo::MinX().
Referenced by geo::BoxBoundedGeo::Center().
|
inlineinherited |
Returns the world y coordinate of the center of the box.
Definition at line 111 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxY(), and geo::BoxBoundedGeo::MinY().
Referenced by geo::BoxBoundedGeo::Center().
|
inlineinherited |
Returns the world z coordinate of the center of the box.
Definition at line 126 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxZ(), and geo::BoxBoundedGeo::MinZ().
Referenced by geo::BoxBoundedGeo::Center().
|
inlineinherited |
Returns whether this volume contains the specified point.
point | the point [cm] |
wiggle | expansion factor for the range |
If the wiggle is larger than 1, each size of the volume is expanded by the wiggle factor. If the wiggle is less than 1, each size is shrinked.
Definition at line 210 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::ContainsX(), and geo::BoxBoundedGeo::ContainsYZ().
Referenced by geo::BoxBoundedGeo::ContainsPosition(), and geo::GeometryCore::MaterialName().
|
inherited |
Definition at line 24 of file BoxBoundedGeo.cxx.
References geo::BoxBoundedGeo::ContainsPosition(), and geo::vect::toPoint().
|
inherited |
Definition at line 30 of file BoxBoundedGeo.cxx.
References geo::BoxBoundedGeo::ContainsPosition(), and geo::vect::makePointFromCoords().
|
inlineinherited |
Returns whether this TPC contains the specified world x coordinate.
x | the absolute ("world") coordinate x |
wiggle | expansion factor for the range (see ContainsPosition()) |
Note that x is by definition the drift direction, and a reconstructed x typically depends on an assumption respect to the event time.
Definition at line 158 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxX(), and geo::BoxBoundedGeo::MinX().
Referenced by geo::BoxBoundedGeo::ContainsPosition().
|
inlineinherited |
Returns whether this TPC contains the specified world y coordinate.
y | the absolute ("world") coordinate y |
wiggle | expansion factor for the range (see ContainsPosition()) |
Definition at line 170 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxY(), and geo::BoxBoundedGeo::MinY().
Referenced by geo::BoxBoundedGeo::ContainsYZ().
|
inlineinherited |
Returns if TPC contains the specified world y and z coordinates.
y | the absolute ("world") coordinate y |
z | the absolute ("world") coordinate z |
wiggle | expansion factor for the range (see ContainsPosition()) |
Definition at line 195 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::ContainsY(), and geo::BoxBoundedGeo::ContainsZ().
Referenced by geo::BoxBoundedGeo::ContainsPosition().
|
inlineinherited |
Returns whether this TPC contains the specified world z coordinate.
z | the absolute ("world") coordinate z |
wiggle | expansion factor for the range (see ContainsPosition()) |
Definition at line 182 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxZ(), and geo::BoxBoundedGeo::MinZ().
Referenced by geo::BoxBoundedGeo::ContainsYZ().
|
inlinestaticinherited |
Returns whether the specified coordinate is in a range.
c | the coordinate |
min | lower boundary of the range |
max | upper boundary of the range |
wiggle | expansion factor for the range |
If the wiggle is larger than 1, the range is expanded by the wiggle factor. If the wiggle is less than 1, the range is shrinked.
Definition at line 359 of file BoxBoundedGeo.h.
Referenced by geo::BoxBoundedGeo::ContainsX(), geo::BoxBoundedGeo::ContainsY(), geo::BoxBoundedGeo::ContainsZ(), geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::InFiducialX(), geo::BoxBoundedGeo::InFiducialY(), and geo::BoxBoundedGeo::InFiducialZ().
|
inlinestaticinherited |
Returns whether the specified coordinate is in a range.
c | the coordinate |
range | pointer to [ lower boundary, upper boundary ] of the range |
wiggle | expansion factor for the range |
If the wiggle is larger than 1, the range is expanded by the wiggle factor. If the wiggle is less than 1, the range is shrinked.
Definition at line 376 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained().
std::string geo::CryostatGeo::CryostatInfo | ( | std::string | indent = "" , |
unsigned int | verbosity = 1 |
||
) | const |
Returns a string with cryostat information.
PrintCryostatInfo()
The arguments and provided information are the same as in PrintCryostatInfo()
.
Definition at line 192 of file CryostatGeo.cxx.
References PrintCryostatInfo().
Referenced by ID().
Extends the current box to also include the specified point.
x | x coordinate of the point to include |
y | y coordinate of the point to include |
z | z coordinate of the point to include |
Definition at line 423 of file BoxBoundedGeo.h.
Referenced by geo::PlaneGeo::BoundingBox(), evd_tool::ProtoDUNEDrawer::DetOutline3D(), evd_tool::StandardDrawer::DetOutline3D(), larg4::ISTPC::extractActiveLArVolume(), larg4::OpFastScintillation::extractActiveVolumes(), and phot::PhotonVisibilityService::reconfigure().
|
inlineinherited |
Extends the current box to also include the specified point.
point | coordinates of the point to include |
Definition at line 432 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max, geo::BoxBoundedGeo::c_min, geo::BoxBoundedGeo::set_max(), and geo::BoxBoundedGeo::set_min().
|
inlineinherited |
Extends the current box to also include the specified one.
box | the box to include |
It is assumed that the box has its boundaries properly sorted.
Definition at line 444 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max, geo::BoxBoundedGeo::c_min, geo::BoxBoundedGeo::GetIntersections(), geo::BoxBoundedGeo::Max(), geo::BoxBoundedGeo::Min(), geo::BoxBoundedGeo::set_max(), and geo::BoxBoundedGeo::set_min().
|
private |
Referenced by toLocalCoords().
|
private |
Referenced by toLocalCoords().
|
inline |
Returns the geometrical center of the cryostat.
Definition at line 121 of file CryostatGeo.h.
References Boundaries(), and geo::BoxBoundedGeo::Center().
Referenced by PrintCryostatInfo().
unsigned int geo::CryostatGeo::GetClosestOpDet | ( | geo::Point_t const & | point | ) | const |
Returns the index of the optical detector in this cryostat closest to point
.
Definition at line 210 of file CryostatGeo.cxx.
References geo::OpDetGeo::DistanceToPoint(), NOpDet(), and OpDet().
Referenced by GetClosestOpDet(), geo::GeometryCore::GetClosestOpDet(), GetClosestOpDetPtr(), and NOpDet().
unsigned int geo::CryostatGeo::GetClosestOpDet | ( | double const * | point | ) | const |
Definition at line 226 of file CryostatGeo.cxx.
References GetClosestOpDet(), and geo::vect::makePointFromCoords().
geo::OpDetGeo const * geo::CryostatGeo::GetClosestOpDetPtr | ( | geo::Point_t const & | point | ) | const |
Returns the optical detector det in this cryostat nearest to point
. If there are no optical detectors, nullptr
is returned.
Definition at line 203 of file CryostatGeo.cxx.
References GetClosestOpDet(), and OpDet().
Referenced by NOpDet().
Alias for TPC()
.
Definition at line 216 of file CryostatGeo.h.
References IterateElements(), and TPC().
Alias for TPCPtr()
.
Definition at line 271 of file CryostatGeo.h.
References PositionToTPC(), PositionToTPCID(), and TPCPtr().
|
inherited |
Calculates the entry and exit points of a trajectory on the box surface.
TrajectoryStart | position of the trajectory source |
TrajectoryDirect | direction vector of the trajectory |
This member is public since it just gives an output and does not change any member. The algorithm works only for a box shaped active volume with facing walls parallel to axis. If the return std::vector is empty the trajectory does not intersect with the box. Normally the return value should have one (if the trajectory originates in the box) or two (else) entries. If the return value has two entries the first represents the entry point and the second the exit point
Definition at line 125 of file BoxBoundedGeo.cxx.
Referenced by geo::BoxBoundedGeo::ExtendToInclude().
|
inherited |
Calculates the entry and exit points of a trajectory on the box surface.
TrajectoryStart | position of the trajectory source |
TrajectoryDirect | direction vector of the trajectory |
This member is public since it just gives an output and does not change any member. The algorithm works only for a box shaped active volume with facing walls parallel to axis. If the return std::vector is empty the trajectory does not intersect with the box. Normally the return value should have one (if the trajectory originates in the box) or two (else) entries. If the return value has two entries the first represents the entry point and the second the exit point
Definition at line 36 of file BoxBoundedGeo.cxx.
References geo::vect::bindCoord(), geo::BoxBoundedGeo::c_max, geo::BoxBoundedGeo::c_min, geo::vect::coord(), geo::BoxBoundedGeo::Max(), and geo::BoxBoundedGeo::Min().
double geo::CryostatGeo::HalfHeight | ( | ) | const |
Half height of the cryostat [cm].
Definition at line 169 of file CryostatGeo.cxx.
References fVolume.
Referenced by geo::GeometryCore::CryostatHalfHeight(), Height(), and InitCryoBoundaries().
double geo::CryostatGeo::HalfLength | ( | ) | const |
Half height of the cryostat [cm].
Definition at line 175 of file CryostatGeo.cxx.
References fVolume.
Referenced by InitCryoBoundaries(), and Length().
|
inlineinherited |
Returns the size from the center to the border on X dimension.
Definition at line 102 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::SizeX().
|
inlineinherited |
Returns the size from the center to the border on Y dimension.
Definition at line 117 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::SizeY().
|
inlineinherited |
Returns the size from the center to the border on Z dimension.
Definition at line 132 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::SizeZ().
double geo::CryostatGeo::HalfWidth | ( | ) | const |
Half width of the cryostat [cm].
Definition at line 163 of file CryostatGeo.cxx.
References fVolume.
Referenced by geo::GeometryCore::CryostatHalfWidth(), InitCryoBoundaries(), and Width().
|
inline |
Alias for HasTPC()
.
Definition at line 187 of file CryostatGeo.h.
References HasTPC().
|
inline |
Alias for HasTPC(geo::TPCID const&)
Definition at line 199 of file CryostatGeo.h.
References HasTPC(), and TPC().
|
inline |
Returns whether a TPC with index itpc is present in this cryostat.
itpc | index of TPC in this cryostat |
Definition at line 184 of file CryostatGeo.h.
References NTPC().
Referenced by HasElement(), geo::GeometryCore::HasTPC(), and TPCPtr().
|
inline |
Returns whether the TPC in tpcid is present in this cryostat.
tpcid | full TPC ID |
The cryostat number in tpcid is ignored, as it is ignored whether tpcid is invalid.
Definition at line 197 of file CryostatGeo.h.
References HasTPC(), and geo::TPCID::TPC.
Referenced by HasTPC().
|
inline |
Full height of the cryostat [cm].
Definition at line 104 of file CryostatGeo.h.
References HalfHeight().
Referenced by PrintCryostatInfo().
|
inline |
Returns the identifier of this cryostat.
Definition at line 130 of file CryostatGeo.h.
References CryostatInfo(), fID, art::detail::indent(), and PrintCryostatInfo().
Referenced by geo::GeometryCore::FindTPCAtPosition(), geo::GeometryCore::GetClosestOpDet(), geo::GeometryCore::PositionToCryostatID(), PositionToTPC(), and PrintCryostatInfo().
|
inlineinherited |
Returns whether TPC fiducial volume contains world x coordinate.
x | the absolute ("world") coordinate x |
neg_margin | how far within the TPC the fiducial region starts |
pos_margin | how far before the TPC the fiducial region ends |
The fiducial volume is defined by the specified margins, that denote how much of the coordinate is not fiducial. For example,
bool bWithin = tpc->InFiducialX(x, 5., 8.);
on a TPC with x from 0 to 100 (cm, presumably) will return true for all x
between 5 and 92. If positive margin is not specified, it's assumed to be the same as the negative one. Specifying a negative mergin effectively extends the TPC volume. Note that x is by definition the drift direction, and a reconstructed x typically depends on an assumption respect to the event time.
Definition at line 243 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxX(), and geo::BoxBoundedGeo::MinX().
|
inlineinherited |
Returns whether TPC fiducial volume contains world x coordinate.
Margins are symmetric.
Definition at line 253 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::InFiducialX().
Referenced by geo::BoxBoundedGeo::InFiducialX().
|
inlineinherited |
Returns whether TPC fiducial volume contains world y coordinate.
y | the absolute ("world") coordinate y |
neg_margin | how far within the TPC the fiducial region starts |
pos_margin | how far before the TPC the fiducial region ends |
The fiducial volume is defined by the specified margins, that denote how much of the coordinate is not fiducial. For example,
bool bWithin = tpc->InFiducialY(y, 5., 8.);
on a TPC with y from 0 to 100 (cm, presumably) will return true for all y
between 5 and 92. If positive margin is not specified, it's assumed to be the same as the negative one. Specifying a negative mergin effectively extends the TPC volume.
Definition at line 273 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxY(), and geo::BoxBoundedGeo::MinY().
|
inlineinherited |
Returns whether TPC fiducial volume contains world y coordinate.
Margins are symmetric.
Definition at line 283 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::InFiducialY().
Referenced by geo::BoxBoundedGeo::InFiducialY().
|
inlineinherited |
Returns whether TPC fiducial volume contains world z coordinate.
z | the absolute ("world") coordinate y |
neg_margin | how far within the TPC the fiducial region starts |
pos_margin | how far before the TPC the fiducial region ends |
The fiducial volume is defined by the specified margins, that denote how much of the coordinate is not fiducial. For example,
bool bWithin = tpc->InFiducialZ(z, 5., 8.);
on a TPC with z from 0 to 100 (cm, presumably) will return true for all z
between 5 and 92. If positive margin is not specified, it's assumed to be the same as the negative one. Specifying a negative mergin effectively extends the TPC volume.
Definition at line 303 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxZ(), and geo::BoxBoundedGeo::MinZ().
|
inlineinherited |
Returns whether TPC fiducial volume contains world z coordinate.
Margins are symmetric.
Definition at line 313 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::InFiducialZ().
Referenced by geo::BoxBoundedGeo::InFiducialZ().
|
private |
Fill the boundary information of the cryostat.
Definition at line 232 of file CryostatGeo.cxx.
References HalfHeight(), HalfLength(), HalfWidth(), geo::BoxBoundedGeo::SetBoundaries(), toWorldCoords(), and Volume().
Referenced by CryostatGeo(), and toLocalCoords().
auto geo::CryostatGeo::IterateElements | ( | ) | const |
Returns an object suitable for iterating through all TPCs.
IterateTPCs()
The returned value can be used in a range-for loop like:
The resulting sequence exposes the TPCs within the cryostat in their ID order, from TPC 0
to NTPC() - 1
.
This method is designed for templated code, where the object obj.IterateElements()
may be a geo::CryostatGeo
or some other one. For non-template code, prefer IterateTPCs()
for clarity.
Definition at line 105 of file CryostatGeo.cxx.
References fTPCs.
Referenced by GetElement(), and IterateTPCs().
|
inline |
Returns an object suitable for iterating through all TPCs.
IterateElements()
The returned value can be used in a range-for loop like:
The resulting sequence exposes the TPCs within the cryostat in their ID order, from TPC 0
to NTPC() - 1
.
A version of this functionality designed for template code is provided under the generic name IterateElements()
.
Definition at line 249 of file CryostatGeo.h.
References IterateElements().
Referenced by PositionToTPCptr().
|
inline |
Length of the cryostat [cm].
Definition at line 106 of file CryostatGeo.h.
References HalfLength().
Referenced by geo::GeometryCore::CryostatLength(), and PrintCryostatInfo().
|
private |
Referenced by toLocalCoords().
|
private |
Referenced by toLocalCoords().
|
inline |
Mass of the cryostat.
Definition at line 108 of file CryostatGeo.h.
References fVolume.
|
inlineinherited |
Returns the corner point with the largest coordinates.
Definition at line 138 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max.
Referenced by geo::BoxBoundedGeo::ExtendToInclude(), geo::BoxBoundedGeo::GetIntersections(), geo::GeometryCore::MaterialName(), PrintCryostatInfo(), and geo::TPCGeo::PrintTPCInfo().
unsigned int geo::CryostatGeo::MaxPlanes | ( | ) | const |
Returns the largest number of planes among the TPCs in this cryostat.
Definition at line 141 of file CryostatGeo.cxx.
References fTPCs, geo::TPCGeo::Nplanes(), and TPC().
Referenced by ems::MultiEMShowers::convCluster(), geo::GeometryCore::GetEndPlaneID(), ems::EMShower3D::LinkCandidates(), PositionToTPC(), and PrintCryostatInfo().
unsigned int geo::CryostatGeo::MaxWires | ( | ) | const |
Returns the largest number of wires among the TPCs in this cryostat.
Definition at line 152 of file CryostatGeo.cxx.
References fTPCs, geo::TPCGeo::MaxWires(), and TPC().
Referenced by geo::GeometryCore::GetEndWireID(), PositionToTPC(), and PrintCryostatInfo().
|
inlineinherited |
Returns the world x coordinate of the end of the box.
Definition at line 93 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max.
Referenced by Boundaries(), geo::BoxBoundedGeo::CenterX(), geo::BoxBoundedGeo::ContainsX(), evd_tool::ProtoDUNEDrawer::DrawBoxBoundedGeoOutline(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), geo::BoxBoundedGeo::InFiducialX(), evd::SimulationDrawer::MCTruthOrtho(), geo::BoxBoundedGeo::OverlapsX(), geo::BoxBoundedGeo::SizeX(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inlineinherited |
Returns the world y coordinate of the end of the box.
Definition at line 108 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max.
Referenced by Boundaries(), geo::BoxBoundedGeo::CenterY(), geo::BoxBoundedGeo::ContainsY(), evd_tool::ProtoDUNEDrawer::DrawBoxBoundedGeoOutline(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), geo::BoxBoundedGeo::InFiducialY(), pma::Node3D::Node3D(), geo::BoxBoundedGeo::OverlapsY(), tca::SaveCRInfo(), geo::BoxBoundedGeo::SizeY(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inlineinherited |
Returns the world z coordinate of the end of the box.
Definition at line 123 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max.
Referenced by Boundaries(), geo::BoxBoundedGeo::CenterZ(), geo::BoxBoundedGeo::ContainsZ(), evd_tool::ProtoDUNEDrawer::DrawBoxBoundedGeoOutline(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), geo::BoxBoundedGeo::InFiducialZ(), pma::Node3D::Node3D(), geo::BoxBoundedGeo::OverlapsZ(), tca::SaveCRInfo(), geo::BoxBoundedGeo::SizeZ(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inlineinherited |
Returns the corner point with the smallest coordinates.
Definition at line 135 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_min.
Referenced by geo::BoxBoundedGeo::ExtendToInclude(), geo::BoxBoundedGeo::GetIntersections(), geo::GeometryCore::MaterialName(), PrintCryostatInfo(), and geo::TPCGeo::PrintTPCInfo().
|
inlineinherited |
Returns the world x coordinate of the start of the box.
Definition at line 90 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_min.
Referenced by opdet::SimPhotonCounter::beginJob(), Boundaries(), geo::BoxBoundedGeo::CenterX(), geo::BoxBoundedGeo::ContainsX(), evd_tool::ProtoDUNEDrawer::DrawBoxBoundedGeoOutline(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), geo::BoxBoundedGeo::InFiducialX(), pma::Track3D::InitFromMiddle(), evd::SimulationDrawer::MCTruthOrtho(), geo::BoxBoundedGeo::OverlapsX(), evgen::ActiveVolumeVertexSampler::sample_vertex_pos(), geo::BoxBoundedGeo::SizeX(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inlineinherited |
Returns the world y coordinate of the start of the box.
Definition at line 105 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_min.
Referenced by Boundaries(), geo::BoxBoundedGeo::CenterY(), geo::BoxBoundedGeo::ContainsY(), evd_tool::ProtoDUNEDrawer::DrawBoxBoundedGeoOutline(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), geo::BoxBoundedGeo::InFiducialY(), pma::Node3D::Node3D(), geo::BoxBoundedGeo::OverlapsY(), tca::SaveCRInfo(), geo::BoxBoundedGeo::SizeY(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inlineinherited |
Returns the world z coordinate of the start of the box.
Definition at line 120 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_min.
Referenced by Boundaries(), geo::BoxBoundedGeo::CenterZ(), geo::BoxBoundedGeo::ContainsZ(), evd_tool::ProtoDUNEDrawer::DrawBoxBoundedGeoOutline(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), geo::BoxBoundedGeo::InFiducialZ(), pma::Node3D::Node3D(), geo::BoxBoundedGeo::OverlapsZ(), tca::SaveCRInfo(), geo::BoxBoundedGeo::SizeZ(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inline |
Alias for NTPC()
.
Definition at line 177 of file CryostatGeo.h.
References fTPCs.
Referenced by geo::GeometryCore::NTPC().
|
inline |
Number of optical detectors in this TPC.
Definition at line 321 of file CryostatGeo.h.
References fOpDets, GetClosestOpDet(), GetClosestOpDetPtr(), and OpDet().
Referenced by phot::PDFastSimANN::beginJob(), opdet::SimPhotonCounter::beginJob(), evgen::PhotonGen::beginRun(), GetClosestOpDet(), geo::GeometryCore::OpDetFromCryo(), geo::GeometryCore::OpDetGeoFromOpDet(), PrintCryostatInfo(), and UpdateAfterSorting().
|
inline |
Number of TPCs in this cryostat.
Definition at line 175 of file CryostatGeo.h.
References fTPCs.
Referenced by larg4::LArVoxelReadoutGeometry::Construct(), geo::GeometryCore::GetEndTPCID(), groupTPCsByDriftDir(), HasTPC(), geo::ChannelMapStandardAlg::Initialize(), trkf::SpacePointAlg::makeSpacePoints(), PrintCryostatInfo(), larg4::LArG4::produce(), geo::GeometryCore::TotalNTPC(), and UpdateAfterSorting().
const OpDetGeo & geo::CryostatGeo::OpDet | ( | unsigned int | iopdet | ) | const |
Return the iopdet'th optical detector in the cryostat.
Definition at line 95 of file CryostatGeo.cxx.
References fOpDets.
Referenced by cosmic::BeamFlashTrackMatchTaggerAlg::FillFlashProperties(), opdet::FlashHypothesisAnaAlg::FillOpDetPositions(), GetClosestOpDet(), GetClosestOpDetPtr(), NOpDet(), and geo::GeometryCore::OpDetGeoFromOpDet().
|
inline |
Get name of opdet geometry element.
Definition at line 337 of file CryostatGeo.h.
References fOpDetGeoName.
Referenced by geo::GeometryCore::OpDetGeoName().
|
inlineinherited |
Returns if this and other
box overlap.
Definition at line 340 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::OverlapsX(), geo::BoxBoundedGeo::OverlapsY(), and geo::BoxBoundedGeo::OverlapsZ().
|
inlineinherited |
Returns if the x coordinates covered by this and other
box overlap.
Definition at line 322 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxX(), and geo::BoxBoundedGeo::MinX().
Referenced by geo::BoxBoundedGeo::Overlaps().
|
inlineinherited |
Returns if the y coordinates covered by this and other
box overlap.
Definition at line 328 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxY(), and geo::BoxBoundedGeo::MinY().
Referenced by geo::BoxBoundedGeo::Overlaps().
|
inlineinherited |
Returns if the z coordinates covered by this and other
box overlap.
Definition at line 334 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxZ(), and geo::BoxBoundedGeo::MinZ().
Referenced by geo::BoxBoundedGeo::Overlaps().
TPCGeo const & geo::CryostatGeo::PositionToTPC | ( | geo::Point_t const & | point, |
double | wiggle | ||
) | const |
Returns the ID of the TPC at specified location.
point | the location (world reference frame) |
wiggle | a small factor (like 1+epsilon) to avoid rounding errors |
Definition at line 122 of file CryostatGeo.cxx.
References ID(), and PositionToTPCptr().
Referenced by GetElementPtr(), and PositionToTPC().
|
inline |
Returns the ID of the TPC at specified location.
worldLoc | 3D coordinates of the point (world reference frame) |
wiggle | a small factor (like 1+epsilon) to avoid rounding errors |
Definition at line 294 of file CryostatGeo.h.
References geo::vect::makePointFromCoords(), MaxPlanes(), MaxWires(), PositionToTPC(), and PositionToTPCptr().
geo::TPCID geo::CryostatGeo::PositionToTPCID | ( | geo::Point_t const & | point, |
double | wiggle | ||
) | const |
Returns the ID of the TPC at specified location.
point | 3D coordinates of the point (world reference frame) |
wiggle | a small factor (like 1+epsilon) to avoid rounding errors |
Definition at line 113 of file CryostatGeo.cxx.
References geo::TPCGeo::ID(), and PositionToTPCptr().
Referenced by geo::GeometryCore::FindTPCAtPosition(), and GetElementPtr().
geo::TPCGeo const * geo::CryostatGeo::PositionToTPCptr | ( | geo::Point_t const & | point, |
double | wiggle | ||
) | const |
Returns a pointer to the TPC at specified location.
point | position in space [cm] |
wiggle | a small factor (like 1+ε) to avoid rounding errors |
geo::TPCGeo
at point
(nullptr
if none) Definition at line 133 of file CryostatGeo.cxx.
References IterateTPCs().
Referenced by PositionToTPC(), PositionToTPCID(), and geo::GeometryCore::PositionToTPCptr().
void geo::CryostatGeo::PrintCryostatInfo | ( | Stream && | out, |
std::string | indent = "" , |
||
unsigned int | verbosity = 1 |
||
) | const |
Prints information about this cryostat.
Stream | type of output stream to use |
out | stream to send the information to |
indent | prepend each line with this string |
verbosity | amount of information printed |
Note that the first line out the output is not indented.
The constant MaxVerbosity
is set to the highest supported verbosity level.
Definition at line 406 of file CryostatGeo.h.
References BoundingBox(), GetCenter(), Height(), ID(), Length(), geo::BoxBoundedGeo::Max(), MaxPlanes(), MaxWires(), geo::BoxBoundedGeo::Min(), NOpDet(), NTPC(), and Width().
Referenced by CryostatInfo(), and ID().
Sets var to value if value is larger than the current var value.
Definition at line 479 of file BoxBoundedGeo.h.
References value.
Referenced by geo::BoxBoundedGeo::ExtendToInclude().
|
inlinestaticinherited |
Sets each coordinate of var to the one in value if the latter is larger.
Definition at line 493 of file BoxBoundedGeo.h.
Sets var to value if value is smaller than the current var value.
Definition at line 473 of file BoxBoundedGeo.h.
References value.
Referenced by geo::BoxBoundedGeo::ExtendToInclude().
|
inlinestaticinherited |
Sets each coordinate of var to the one in value if the latter is smaller.
Definition at line 485 of file BoxBoundedGeo.h.
|
inlineinherited |
Sets the boundaries in world coordinates as specified.
x_min | lower x coordinate |
x_max | upper x coordinate |
y_min | lower y coordinate |
y_max | upper y coordinate |
z_min | lower z coordinate |
z_max | upper z coordinate |
Definition at line 393 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max, geo::BoxBoundedGeo::c_min, and geo::BoxBoundedGeo::SortCoordinates().
Referenced by geo::PlaneGeo::BoundingBox(), InitCryoBoundaries(), and geo::TPCGeo::InitTPCBoundaries().
Sets the boundaries in world coordinates as specified.
lower | lower coordinates (x, y, z) |
upper | upper coordinates (x, y, z) |
Definition at line 410 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::c_max, geo::BoxBoundedGeo::c_min, and geo::BoxBoundedGeo::SortCoordinates().
|
inlineinherited |
Returns the full size in the X dimension.
Definition at line 99 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxX(), and geo::BoxBoundedGeo::MinX().
Referenced by geo::BoxBoundedGeo::HalfSizeX().
|
inlineinherited |
Returns the full size in the Y dimension.
Definition at line 114 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxY(), and geo::BoxBoundedGeo::MinY().
Referenced by geo::BoxBoundedGeo::HalfSizeY().
|
inlineinherited |
Returns the full size in the Z dimension.
Definition at line 129 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::MaxZ(), and geo::BoxBoundedGeo::MinZ().
Referenced by geo::BoxBoundedGeo::HalfSizeZ().
void geo::CryostatGeo::SortSubVolumes | ( | geo::GeoObjectSorter const & | sorter | ) |
Method to sort TPCGeo objects.
Definition at line 55 of file CryostatGeo.cxx.
References fOpDets, fTPCs, geo::GeoObjectSorter::SortOpDets(), geo::TPCGeo::SortSubVolumes(), geo::GeoObjectSorter::SortTPCs(), and TPC().
Referenced by toLocalCoords().
|
inline |
Transform point from world frame to local cryostat frame.
Definition at line 359 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformationGeo< StoredMatrix, LocalPoint, LocalVector >::toLocalCoords().
|
inline |
Transform direction vector from world to local.
Definition at line 365 of file CryostatGeo.h.
References FindOpDet(), FindTPC(), fTrans, InitCryoBoundaries(), MakeOpDet(), MakeTPC(), SortSubVolumes(), geo::LocalTransformationGeo< StoredMatrix, LocalPoint, LocalVector >::toLocalCoords(), and UpdateAfterSorting().
|
inline |
Transform point from local cryostat frame to world frame.
Definition at line 347 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformationGeo< StoredMatrix, LocalPoint, LocalVector >::toWorldCoords().
Referenced by InitCryoBoundaries(), and geo::sortCryoStandard().
|
inline |
Transform direction vector from local to world.
Definition at line 353 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformationGeo< StoredMatrix, LocalPoint, LocalVector >::toWorldCoords().
const TPCGeo & geo::CryostatGeo::TPC | ( | unsigned int | itpc | ) | const |
Return the itpc'th TPC in the cryostat.
cet::exception | (category "TPCOutOfRange") if no such TPC |
Definition at line 84 of file CryostatGeo.cxx.
References TPCPtr().
Referenced by geo::buildDriftVolumes(), GetElement(), groupTPCsByDriftDir(), HasElement(), geo::ChannelMapStandardAlg::Initialize(), trkf::SpacePointAlg::makeSpacePoints(), MaxPlanes(), MaxWires(), phot::PhotonVisibilityService::reconfigure(), SortSubVolumes(), and geo::GeometryCore::TPC().
Returns the TPC in tpcid from this cryostat.
tpcid | full TPC ID |
cet::exception | (category "TPCOutOfRange") if no such TPC |
The cryostat number in tpcid is ignored, as it is ignored whether tpcid is invalid.
Definition at line 214 of file CryostatGeo.h.
References TPC(), and geo::TPCID::TPC.
Referenced by TPC().
|
inline |
Returns the TPC number itpc from this cryostat.
itpc | the number of local TPC |
Definition at line 256 of file CryostatGeo.h.
References fTPCs, and HasTPC().
Referenced by GetElementPtr(), TPC(), and geo::GeometryCore::TPCPtr().
Returns the TPC in tpcid from this cryostat.
tpcid | full TPC ID |
The cryostat number in tpcid is ignored, as it is ignored whether tpcid is invalid.
Definition at line 269 of file CryostatGeo.h.
References geo::TPCID::TPC, and TPCPtr().
Referenced by TPCPtr().
void geo::CryostatGeo::UpdateAfterSorting | ( | geo::CryostatID | cryoid | ) |
Performs all needed updates after geometry has sorted the cryostats.
Definition at line 67 of file CryostatGeo.cxx.
References fID, fOpDets, fTPCs, NOpDet(), and NTPC().
Referenced by toLocalCoords().
|
inline |
Pointer to ROOT's volume descriptor.
Definition at line 110 of file CryostatGeo.h.
References fVolume.
Referenced by geo::GeometryCore::GetCryostatVolumeName(), and InitCryoBoundaries().
|
inline |
Full width of the cryostat [cm].
Definition at line 102 of file CryostatGeo.h.
References HalfWidth().
Referenced by PrintCryostatInfo().
|
private |
ID of this cryostat.
Definition at line 398 of file CryostatGeo.h.
Referenced by ID(), and UpdateAfterSorting().
|
private |
Name of opdet geometry elements in gdml.
Definition at line 397 of file CryostatGeo.h.
Referenced by CryostatGeo(), and OpDetGeoName().
|
private |
List of opdets in this cryostat.
Definition at line 395 of file CryostatGeo.h.
Referenced by NOpDet(), OpDet(), SortSubVolumes(), and UpdateAfterSorting().
|
private |
List of tpcs in this cryostat.
Definition at line 394 of file CryostatGeo.h.
Referenced by IterateElements(), MaxPlanes(), MaxWires(), NElements(), NTPC(), SortSubVolumes(), TPCPtr(), and UpdateAfterSorting().
|
private |
Cryostat-to-world transformation.
Definition at line 393 of file CryostatGeo.h.
Referenced by toLocalCoords(), and toWorldCoords().
|
private |
Total volume of cryostat, called volCryostat in GDML file.
Definition at line 396 of file CryostatGeo.h.
Referenced by CryostatGeo(), HalfHeight(), HalfLength(), HalfWidth(), Mass(), and Volume().
|
static |
Maximum verbosity supported by PrintCryostatInfo()
.
Definition at line 166 of file CryostatGeo.h.