LArSoft
v06_85_00
Liquid Argon Software toolkit - http://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 | GeoNodePath_t = geo::WireGeo::GeoNodePath_t |
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 (std::vector< const TGeoNode * > &path, int depth) | |
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... | |
auto const & | TPCs () const |
Returns a container with references to 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::TPCID_t | FindTPCAtPosition (double const worldLoc[3], double const wiggle) const |
Returns the index of the TPC at specified location. 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 | |
void | LocalToWorld (const double *cryo, double *world) const |
Transform point from local cryostat frame to world frame. More... | |
template<typename Point > | |
Point | LocalToWorld (Point const &local) const |
geo::Point_t | toWorldCoords (LocalPoint_t const &local) const |
Transform point from local cryostat frame to world frame. More... | |
void | LocalToWorldVect (const double *cryo, double *world) const |
Transform direction vector from local to world. More... | |
geo::Vector_t | toWorldCoords (LocalVector_t const &local) const |
Transform direction vector from local to world. More... | |
void | WorldToLocal (const double *world, double *cryo) const |
Transform point from world frame to local cryostat frame. More... | |
template<typename Point > | |
Point | WorldToLocal (Point const &world) const |
LocalPoint_t | toLocalCoords (geo::Point_t const &world) const |
Transform point from world frame to local cryostat frame. More... | |
void | WorldToLocalVect (const double *world, double *cryo) const |
Transform direction vector from world to local. 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... | |
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 | TPCList_t = std::vector< TPCGeo > |
Type used internally to store the TPCs. More... | |
using | LocalTransformation_t = geo::LocalTransformationGeo< TGeoHMatrix, 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... | |
std::vector< OpDetGeo > | 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... | |
Geometry information for a single cryostat.
Definition at line 36 of file CryostatGeo.h.
|
inherited |
Type of the coordinate.
Definition at line 38 of file BoxBoundedGeo.h.
|
inherited |
Type of the coordinate triplet.
Definition at line 37 of file BoxBoundedGeo.h.
Definition at line 43 of file CryostatGeo.h.
Type of points in the local GDML cryostat frame.
Definition at line 65 of file CryostatGeo.h.
|
private |
Definition at line 406 of file CryostatGeo.h.
Type of displacement vectors in the local GDML cryostat frame.
Definition at line 68 of file CryostatGeo.h.
|
private |
Type used internally to store the TPCs.
Definition at line 39 of file CryostatGeo.h.
geo::CryostatGeo::CryostatGeo | ( | std::vector< const TGeoNode * > & | path, |
int | depth | ||
) |
Construct a representation of a single cryostat of the detector.
Definition at line 66 of file CryostatGeo.cxx.
References geo::DUNE_opdet_sort(), FindOpDet(), FindTPC(), fOpDetGeoName, fOpDets, fVolume, InitCryoBoundaries(), LOG_DEBUG, geo::opdet_sort(), and util::SortByPointers().
|
inline |
Returns boundaries of the cryostat (in centimetres).
Definition at line 99 of file CryostatGeo.h.
References BoundingBox().
Referenced by geo::GeometryCore::CryostatBoundaries(), and GetCenter().
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 317 of file CryostatGeo.cxx.
References GetClosestOpDetPtr(), 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 112 of file CryostatGeo.h.
Referenced by Boundaries(), and PrintCryostatInfo().
|
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 207 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::ContainsX(), and geo::BoxBoundedGeo::ContainsYZ().
Referenced by geo::BoxBoundedGeo::ContainsPosition(), geo::BoxBoundedGeo::ContainsYZ(), and geo::GeometryCore::MaterialName().
|
inherited |
Definition at line 18 of file BoxBoundedGeo.cxx.
References geo::BoxBoundedGeo::ContainsPosition(), and geo::vect::toPoint().
|
inherited |
Definition at line 23 of file BoxBoundedGeo.cxx.
References 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 161 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 171 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 192 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::ContainsPosition(), 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 181 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 333 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 351 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained().
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 392 of file BoxBoundedGeo.h.
Referenced by geo::PlaneGeo::BoundingBox(), evd_tool::StandardDrawer::DetOutline3D(), and lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry().
|
inlineinherited |
Extends the current box to also include the specified point.
point | coordinates of the point to include |
Definition at line 399 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 411 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 |
Definition at line 188 of file CryostatGeo.cxx.
References MakeOpDet(), and OpDetGeoName().
Referenced by CryostatGeo(), and toLocalCoords().
|
private |
Definition at line 105 of file CryostatGeo.cxx.
References MakeTPC().
Referenced by CryostatGeo(), and toLocalCoords().
geo::TPCID::TPCID_t geo::CryostatGeo::FindTPCAtPosition | ( | double const | worldLoc[3], |
double const | wiggle | ||
) | const |
Returns the index 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 |
geo::TPCID::InvalidID
if no TPC is there PositionToTPCID()
instead Definition at line 236 of file CryostatGeo.cxx.
References geo::TPCID::InvalidID, geo::vect::makePointFromCoords(), PositionToTPCID(), and geo::TPCID::TPC.
Referenced by GetElementPtr(), evd::SimulationDrawer::MCTruth3D(), and OpDet().
|
inline |
Returns the geometrical center of the cryostat.
Definition at line 108 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 339 of file CryostatGeo.cxx.
References geo::OpDetGeo::DistanceToPoint(), max, NOpDet(), and OpDet().
Referenced by GetClosestOpDet(), geo::GeometryCore::GetClosestOpDet(), GetClosestOpDetPtr(), and NOpDet().
unsigned int geo::CryostatGeo::GetClosestOpDet | ( | double const * | point | ) | const |
Definition at line 354 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 331 of file CryostatGeo.cxx.
References GetClosestOpDet(), max, and OpDet().
Referenced by Boundaries(), and NOpDet().
Alias for TPC()
.
Definition at line 197 of file CryostatGeo.h.
References TPC().
Alias for TPCPtr()
.
Definition at line 231 of file CryostatGeo.h.
References FindTPCAtPosition(), 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 118 of file BoxBoundedGeo.cxx.
Referenced by geo::BoxBoundedGeo::ExtendToInclude(), and geo::BoxBoundedGeo::GetIntersections().
|
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 27 of file BoxBoundedGeo.cxx.
References geo::vect::bindCoord(), geo::BoxBoundedGeo::c_max, geo::BoxBoundedGeo::c_min, geo::vect::coord(), geo::BoxBoundedGeo::GetIntersections(), geo::BoxBoundedGeo::Max(), and geo::BoxBoundedGeo::Min().
double geo::CryostatGeo::HalfHeight | ( | ) | const |
Half height of the cryostat [cm].
Definition at line 305 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 311 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 299 of file CryostatGeo.cxx.
References fVolume.
Referenced by geo::GeometryCore::CryostatHalfWidth(), InitCryoBoundaries(), and Width().
|
inline |
Alias for HasTPC()
.
Definition at line 167 of file CryostatGeo.h.
References HasTPC().
|
inline |
Alias for HasTPC(geo::TPCID const&)
Definition at line 179 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 164 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 177 of file CryostatGeo.h.
References HasTPC(), and geo::TPCID::TPC.
Referenced by HasTPC().
|
inline |
Full height of the cryostat [cm].
Definition at line 89 of file CryostatGeo.h.
References HalfHeight().
Referenced by PrintCryostatInfo().
|
inline |
Returns the identifier of this cryostat.
Definition at line 116 of file CryostatGeo.h.
References fID, art::detail::indent(), and PrintCryostatInfo().
Referenced by evd_tool::ICARUSDrawer::DetOutline3D(), geo::GeometryCore::FindCryostatAtPosition(), geo::GeometryCore::FindTPCAtPosition(), geo::GeometryCore::GetClosestOpDet(), evd::SimulationDrawer::MCTruth3D(), 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().
Referenced by geo::BoxBoundedGeo::InFiducialX().
|
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().
|
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 274 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxY(), and geo::BoxBoundedGeo::MinY().
Referenced by geo::BoxBoundedGeo::InFiducialY().
|
inlineinherited |
Returns whether TPC fiducial volume contains world y coordinate.
Margins are symmetric.
Definition at line 284 of file BoxBoundedGeo.h.
References 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 305 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), geo::BoxBoundedGeo::MaxZ(), and geo::BoxBoundedGeo::MinZ().
Referenced by geo::BoxBoundedGeo::InFiducialZ().
|
inlineinherited |
Returns whether TPC fiducial volume contains world z coordinate.
Margins are symmetric.
Definition at line 315 of file BoxBoundedGeo.h.
References geo::BoxBoundedGeo::CoordinateContained(), and geo::BoxBoundedGeo::InFiducialZ().
|
private |
Fill the boundary information of the cryostat.
Definition at line 358 of file CryostatGeo.cxx.
References HalfHeight(), HalfLength(), HalfWidth(), geo::BoxBoundedGeo::SetBoundaries(), toWorldCoords(), and Volume().
Referenced by CryostatGeo(), and toLocalCoords().
|
inline |
Length of the cryostat [cm].
Definition at line 91 of file CryostatGeo.h.
References HalfLength().
Referenced by geo::GeometryCore::CryostatLength(), and PrintCryostatInfo().
|
inline |
Transform point from local cryostat frame to world frame.
Definition at line 321 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformation< StoredMatrix >::LocalToWorld().
Referenced by geo::sortCryoStandard().
|
inline |
Transform point from local cryostat frame to world frame.
geo::Point_t
, geo::CryostatGeo::LocalPoint_t
, geo::Vector_t
and geo::CryostatGeo::LocalVector_t
, and then use the method geo::CryostatGeo::toWorldCoords()
instead. Definition at line 333 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformation< StoredMatrix >::LocalToWorld().
|
inline |
Transform direction vector from local to world.
Definition at line 341 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformation< StoredMatrix >::LocalToWorldVect().
|
private |
Definition at line 214 of file CryostatGeo.cxx.
References fOpDets.
Referenced by FindOpDet(), and toLocalCoords().
|
private |
Definition at line 131 of file CryostatGeo.cxx.
References fTPCs.
Referenced by FindTPC(), and toLocalCoords().
|
inline |
Mass of the cryostat.
Definition at line 93 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 279 of file CryostatGeo.cxx.
References fTPCs, geo::TPCGeo::Nplanes(), and TPC().
Referenced by ems::MultiEMShowers::convCluster(), 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 289 of file CryostatGeo.cxx.
References fTPCs, geo::TPCGeo::MaxWires(), and TPC().
Referenced by 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::ICARUSDrawer::DetOutline3D(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), mvapid::MVAAlg::GetDetectorEdges(), geo::BoxBoundedGeo::InFiducialX(), evd::SimulationDrawer::MCTruthOrtho(), pma::Node3D::Node3D(), evgen::NucleonDecay::produce(), evgen::NeutronOsc::produce(), 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::ICARUSDrawer::DetOutline3D(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), mvapid::MVAAlg::GetDetectorEdges(), geo::BoxBoundedGeo::InFiducialY(), pma::Node3D::Node3D(), evgen::NucleonDecay::produce(), evgen::NeutronOsc::produce(), 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::ICARUSDrawer::DetOutline3D(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), mvapid::MVAAlg::GetDetectorEdges(), geo::BoxBoundedGeo::InFiducialZ(), pma::Node3D::Node3D(), evgen::NucleonDecay::produce(), evgen::NeutronOsc::produce(), 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 Boundaries(), geo::BoxBoundedGeo::CenterX(), geo::BoxBoundedGeo::ContainsX(), evd_tool::ICARUSDrawer::DetOutline3D(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), mvapid::MVAAlg::GetDetectorEdges(), geo::BoxBoundedGeo::InFiducialX(), pma::Track3D::InitFromMiddle(), evd::SimulationDrawer::MCTruthOrtho(), pma::Node3D::Node3D(), evgen::NucleonDecay::produce(), evgen::NeutronOsc::produce(), 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::ICARUSDrawer::DetOutline3D(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), mvapid::MVAAlg::GetDetectorEdges(), geo::BoxBoundedGeo::InFiducialY(), pma::Node3D::Node3D(), evgen::NucleonDecay::produce(), evgen::NeutronOsc::produce(), 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::ICARUSDrawer::DetOutline3D(), evd_tool::StandardDrawer::DrawBoxBoundedGeoOutline(), lar::example::SpacePointIsolationAlg::fillAlgConfigFromGeometry(), mvapid::MVAAlg::GetDetectorEdges(), geo::BoxBoundedGeo::InFiducialZ(), pma::Node3D::Node3D(), evgen::NucleonDecay::produce(), evgen::NeutronOsc::produce(), tca::SaveCRInfo(), geo::BoxBoundedGeo::SizeZ(), TPCarea(), and geo::GeometryCore::WorldBox().
|
inline |
Alias for NTPC()
.
Definition at line 157 of file CryostatGeo.h.
References fTPCs.
Referenced by geo::GeometryCore::NTPC().
|
inline |
Number of optical detectors in this TPC.
Definition at line 295 of file CryostatGeo.h.
References fOpDets, GetClosestOpDet(), GetClosestOpDetPtr(), and OpDet().
Referenced by GetClosestOpDet(), geo::GeometryCore::NOpDets(), geo::GeometryCore::OpDetFromCryo(), geo::GeometryCore::OpDetGeoFromOpDet(), and PrintCryostatInfo().
|
inline |
Number of TPCs in this cryostat.
Definition at line 155 of file CryostatGeo.h.
References fTPCs.
Referenced by util::DetectorPropertiesServiceArgoNeuT::CalculateXTicksParams(), detinfo::DetectorPropertiesStandard::CalculateXTicksParams(), larg4::LArVoxelReadoutGeometry::Construct(), evd_tool::ICARUSDrawer::DetOutline3D(), vertex::FeatureVertexFinder::Find2dClusterVertexCandidates(), vertex::FeatureVertexFinder::Find3dVtxFrom2dClusterVtxCand(), vertex::FeatureVertexFinder::Get3dVertexCandidates(), corner::CornerFinderAlg::get_feature_points_fast(), groupTPCsByDriftDir(), HasTPC(), geo::ChannelMapStandardAlg::Initialize(), trkf::SpacePointAlg::makeSpacePoints(), PrintCryostatInfo(), vertex::FeatureVertexFinder::produce(), larg4::LArG4::produce(), evd::SimulationDrawer::SimulationDrawer(), geo::GeometryCore::TotalNTPC(), trkf::SpacePointAlg::update(), and UpdateAfterSorting().
const OpDetGeo & geo::CryostatGeo::OpDet | ( | unsigned int | iopdet | ) | const |
Return the iopdet'th optical detector in the cryostat.
Definition at line 220 of file CryostatGeo.cxx.
References FindTPCAtPosition(), and 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 311 of file CryostatGeo.h.
References fOpDetGeoName.
Referenced by FindOpDet(), and geo::GeometryCore::OpDetGeoName().
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 257 of file CryostatGeo.cxx.
References ID(), and PositionToTPCptr().
Referenced by GetElementPtr(), PositionToTPC(), and PositionToTPCID().
|
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 268 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 247 of file CryostatGeo.cxx.
References geo::TPCGeo::ID(), PositionToTPC(), and PositionToTPCptr().
Referenced by FindTPCAtPosition(), 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 270 of file CryostatGeo.cxx.
References TPCs().
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 423 of file CryostatGeo.h.
References BoundingBox(), GetCenter(), Height(), ID(), Length(), geo::BoxBoundedGeo::Max(), MaxPlanes(), MaxWires(), geo::BoxBoundedGeo::Min(), NOpDet(), NTPC(), and Width().
Referenced by ID().
Sets var to value if value is larger than the current var value.
Definition at line 446 of file BoxBoundedGeo.h.
References fhicl::detail::atom::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 458 of file BoxBoundedGeo.h.
Sets var to value if value is smaller than the current var value.
Definition at line 442 of file BoxBoundedGeo.h.
References fhicl::detail::atom::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 450 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 367 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 383 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 139 of file CryostatGeo.cxx.
References fTPCs, util::SortByPointers(), geo::TPCGeo::SortSubVolumes(), geo::GeoObjectSorter::SortTPCs(), and TPC().
Referenced by toLocalCoords().
|
inline |
Transform point from world frame to local cryostat frame.
Definition at line 365 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformationGeo< StoredMatrix, LocalPoint, LocalVector >::toLocalCoords().
|
inline |
Transform direction vector from world to local.
Definition at line 373 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 337 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformationGeo< StoredMatrix, LocalPoint, LocalVector >::toWorldCoords().
Referenced by InitCryoBoundaries().
|
inline |
Transform direction vector from local to world.
Definition at line 345 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 174 of file CryostatGeo.cxx.
References TPCPtr().
Referenced by geo::buildDriftVolumes(), pma::ProjectionMatchingAlg::buildShowerSeg(), lar_pandora::LArPandoraOutput::CalculateT0(), util::DetectorPropertiesServiceArgoNeuT::CalculateXTicksParams(), detinfo::DetectorPropertiesStandard::CalculateXTicksParams(), lar_pandora::LArPandoraInput::CreatePandoraHits2D(), lar_pandora::LArPandoraInput::CreatePandoraReadoutGaps(), evd_tool::ICARUSDrawer::DetOutline3D(), hit::DisambigCheater::DisambigCheater(), evd::RecoBaseDrawer::DrawTrack2D(), cluster::EndPointAlg::EndPoint(), cluster::HoughBaseAlg::FastTransform(), trkf::SpacePointAlg::fillComplexSpacePoint(), vertex::FeatureVertexFinder::Find2dClusterVertexCandidates(), corner::CornerFinderAlg::get_feature_points_fast(), GetElement(), trkf::BezierTrack::GetProjectedPointUVWT(), trkf::BezierTrack::GetProjectedPointUVWX(), trkf::BezierTrack::GetTrackPitch(), lar_pandora::LArPandoraInput::GetTrueX0(), lar_pandora::PFParticleHitDumper::GetUVW(), groupTPCsByDriftDir(), HasElement(), cluster::fuzzyClusterAlg::InitFuzzy(), geo::ChannelMapStandardAlg::Initialize(), trkf::SpacePointAlg::makeSpacePoints(), MaxPlanes(), MaxWires(), cluster::ClusterCheater::produce(), vertex::HarrisVertexFinder::produce(), vertex::FeatureVertexFinder::produce(), evd::SimulationDrawer::SimulationDrawer(), SortSubVolumes(), apa::APAGeometryAlg::ThreeChanPos(), TPC(), geo::GeometryCore::TPC(), cluster::HoughBaseAlg::Transform(), apa::DisambigAlg::TrivialDisambig(), DUNE::NeutrinoTrackingEff::truthLength(), trkf::SpacePointAlg::update(), apa::DisambigAlg::UseEndPts(), and trkf::VertexFitAlg::VertexFit().
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 194 of file CryostatGeo.h.
References TPC(), and geo::TPCID::TPC.
|
inline |
Returns the TPC number itpc from this cryostat.
itpc | the number of local TPC |
Definition at line 217 of file CryostatGeo.h.
References fTPCs, and HasTPC().
Referenced by GetElementPtr(), TPC(), TPCPtr(), 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 228 of file CryostatGeo.h.
References geo::TPCID::TPC, and TPCPtr().
|
inline |
Returns a container with references to all TPCs.
The returned value can be used in a range-for loop like:
Definition at line 210 of file CryostatGeo.h.
References fTPCs.
Referenced by PositionToTPCptr().
void geo::CryostatGeo::UpdateAfterSorting | ( | geo::CryostatID | cryoid | ) |
Performs all needed updates after geometry has sorted the cryostats.
Definition at line 161 of file CryostatGeo.cxx.
References fID, fTPCs, and NTPC().
Referenced by toLocalCoords().
|
inline |
Pointer to ROOT's volume descriptor.
Definition at line 95 of file CryostatGeo.h.
References fVolume.
Referenced by InitCryoBoundaries().
|
inline |
Full width of the cryostat [cm].
Definition at line 87 of file CryostatGeo.h.
References HalfWidth().
Referenced by PrintCryostatInfo().
|
inline |
Transform point from world frame to local cryostat frame.
Definition at line 349 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformation< StoredMatrix >::WorldToLocal().
|
inline |
Transform point from world frame to local cryostat frame.
geo::Point_t
, geo::CryostatGeo::LocalPoint_t
, geo::Vector_t
and geo::CryostatGeo::LocalVector_t
, and then use the method geo::CryostatGeo::toLocalCoords()
instead. Definition at line 361 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformation< StoredMatrix >::WorldToLocal().
|
inline |
Transform direction vector from world to local.
Definition at line 369 of file CryostatGeo.h.
References fTrans, and geo::LocalTransformation< StoredMatrix >::WorldToLocalVect().
|
private |
ID of this cryostat.
Definition at line 413 of file CryostatGeo.h.
Referenced by ID(), and UpdateAfterSorting().
|
private |
Name of opdet geometry elements in gdml.
Definition at line 412 of file CryostatGeo.h.
Referenced by CryostatGeo(), and OpDetGeoName().
|
private |
List of opdets in this cryostat.
Definition at line 410 of file CryostatGeo.h.
Referenced by CryostatGeo(), MakeOpDet(), NOpDet(), and OpDet().
|
private |
List of tpcs in this cryostat.
Definition at line 409 of file CryostatGeo.h.
Referenced by MakeTPC(), MaxPlanes(), MaxWires(), NElements(), NTPC(), SortSubVolumes(), TPCPtr(), TPCs(), and UpdateAfterSorting().
|
private |
Cryostat-to-world transformation.
Definition at line 408 of file CryostatGeo.h.
Referenced by LocalToWorld(), LocalToWorldVect(), toLocalCoords(), toWorldCoords(), WorldToLocal(), and WorldToLocalVect().
|
private |
Total volume of cryostat, called volCryostat in GDML file.
Definition at line 411 of file CryostatGeo.h.
Referenced by CryostatGeo(), HalfHeight(), HalfLength(), HalfWidth(), Mass(), and Volume().
|
static |
Maximum verbosity supported by PrintCryostatInfo()
.
Definition at line 145 of file CryostatGeo.h.