|
Geant4
10.00.p02
|
#include <UCons.hh>
Inheritance diagram for UCons:
Collaboration diagram for UCons:Public Member Functions | |
| UCons (const std::string &pName, double pRmin1, double pRmax1, double pRmin2, double pRmax2, double pDz, double pSPhi, double pDPhi) | |
| ~UCons () | |
| double | GetInnerRadiusMinusZ () const |
| double | GetOuterRadiusMinusZ () const |
| double | GetInnerRadiusPlusZ () const |
| double | GetOuterRadiusPlusZ () const |
| double | GetZHalfLength () const |
| double | GetStartPhiAngle () const |
| double | GetDeltaPhiAngle () const |
| void | SetInnerRadiusMinusZ (double Rmin1) |
| void | SetOuterRadiusMinusZ (double Rmax1) |
| void | SetInnerRadiusPlusZ (double Rmin2) |
| void | SetOuterRadiusPlusZ (double Rmax2) |
| void | SetZHalfLength (double newDz) |
| void | SetStartPhiAngle (double newSPhi, bool trig=true) |
| void | SetDeltaPhiAngle (double newDPhi) |
| double | GetCubicVolume () |
| double | GetSurfaceArea () |
| bool | Normal (const UVector3 &p, UVector3 &n) const |
| double | DistanceToIn (const UVector3 &p, const UVector3 &v, double aPstep=UUtils::kInfinity) const |
| double | SafetyFromOutside (const UVector3 &p, bool precise) const |
| double | DistanceToOut (const UVector3 &aPoint, const UVector3 &aDirection, UVector3 &aNormalVector, bool &aConvex, double aPstep=UUtils::kInfinity) const |
| double | SafetyFromInside (const UVector3 &p, bool precise) const |
| UGeometryType | GetEntityType () const |
| UVector3 | GetPointOnSurface () const |
| VUSolid * | Clone () const |
| std::ostream & | StreamInfo (std::ostream &os) const |
| void | Extent (UVector3 &aMin, UVector3 &aMax) const |
| virtual void | GetParametersList (int, double *) const |
| virtual void | ComputeBBox (UBBox *, bool) |
| double | SafetyToPhi (const UVector3 &p, const double rho, bool &outside) const |
| double | SafetyFromInsideR (const UVector3 &p, const double rho, bool) const |
| double | SafetyFromOutsideR (const UVector3 &p, const double rho, bool) const |
| VUSolid::EnumInside | Inside (const UVector3 &p) const |
| UCons () | |
| UCons (const UCons &rhs) | |
| UCons & | operator= (const UCons &rhs) |
| double | GetRmin1 () const |
| double | GetRmax1 () const |
| double | GetRmin2 () const |
| double | GetRmax2 () const |
| double | GetDz () const |
| double | GetSPhi () const |
| double | GetDPhi () const |
Public Member Functions inherited from VUSolid | |
| VUSolid () | |
| VUSolid (const std::string &name) | |
| virtual | ~VUSolid () |
| double | GetCarTolerance () const |
| double | GetRadTolerance () const |
| double | GetAngTolerance () const |
| void | SetCarTolerance (double eps) |
| void | SetRadTolerance (double eps) |
| void | SetAngTolerance (double eps) |
| virtual void | ExtentAxis (EAxisType aAxis, double &aMin, double &aMax) const |
| const std::string & | GetName () const |
| void | SetName (const std::string &aName) |
| virtual void | SamplePointsInside (int, UVector3 *) const |
| virtual void | SamplePointsOnSurface (int, UVector3 *) const |
| virtual void | SamplePointsOnEdge (int, UVector3 *) const |
| double | EstimateCubicVolume (int nStat, double epsilon) const |
| double | EstimateSurfaceArea (int nStat, double ell) const |
Private Types | |
| enum | ESide { kNull, kRMin, kRMax, kSPhi, kEPhi, kPZ, kMZ } |
| enum | ENorm { kNRMin, kNRMax, kNSPhi, kNEPhi, kNZ } |
Private Member Functions | |
| double | Capacity () |
| double | SurfaceArea () |
| void | Initialize () |
| void | CheckSPhiAngle (double sPhi) |
| void | CheckDPhiAngle (double dPhi) |
| void | CheckPhiAngles (double sPhi, double dPhi) |
| void | InitializeTrigonometry () |
| UVector3 | ApproxSurfaceNormal (const UVector3 &p) const |
Private Attributes | |
| double | fCubicVolume |
| double | fSurfaceArea |
| double | kRadTolerance |
| double | kAngTolerance |
| double | fRmin1 |
| double | fRmin2 |
| double | fRmax1 |
| double | fRmax2 |
| double | fDz |
| double | fSPhi |
| double | fDPhi |
| double | sinCPhi |
| double | cosCPhi |
| double | cosHDPhiOT |
| double | cosHDPhiIT |
| double | sinSPhi |
| double | cosSPhi |
| double | sinEPhi |
| double | cosEPhi |
| bool | fPhiFullCone |
| double | secRMin |
| double | tanRMin |
| double | tanRMax |
| double | secRMax |
Additional Inherited Members | |
Public Types inherited from VUSolid | |
| enum | EnumInside { eInside =0, eSurface =1, eOutside =2 } |
| enum | EAxisType { eXaxis =0, eYaxis =1, eZaxis =2 } |
Static Public Member Functions inherited from VUSolid | |
| static double | Tolerance () |
Static Protected Attributes inherited from VUSolid | |
| static double | fgTolerance = 1.0E-9 |
| static double | frTolerance = 1.0E-9 |
| static double | faTolerance = 1.0E-9 |
|
private |
|
private |
| UCons::UCons | ( | const std::string & | pName, |
| double | pRmin1, | ||
| double | pRmax1, | ||
| double | pRmin2, | ||
| double | pRmax2, | ||
| double | pDz, | ||
| double | pSPhi, | ||
| double | pDPhi | ||
| ) |
Definition at line 40 of file UCons.cc.
References CheckPhiAngles(), e3, UUtils::Exception(), FatalErrorInArguments, VUSolid::faTolerance, fRmin1, fRmin2, VUSolid::frTolerance, VUSolid::GetName(), Initialize(), kAngTolerance, and kRadTolerance.
Here is the call graph for this function:| UCons::UCons | ( | ) |
Definition at line 92 of file UCons.cc.
References Initialize().
Referenced by Clone().
Here is the call graph for this function:
Here is the caller graph for this function:| UCons::UCons | ( | const UCons & | rhs | ) |
Definition at line 114 of file UCons.cc.
References Initialize().
Here is the call graph for this function:Definition at line 298 of file UCons.cc.
References UUtils::Exception(), fDPhi, fDz, fPhiFullCone, fRmax2, fRmin2, fSPhi, kNEPhi, kNRMax, kNRMin, kNSPhi, kNZ, UUtils::kPi, secRMax, secRMin, tanRMax, tanRMin, Warning, UVector3::x, UVector3::y, and UVector3::z.
Referenced by Normal().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivatevirtual |
Implements VUSolid.
|
inlineprivate |
|
inlineprivate |
|
inlineprivate |
|
virtual |
|
inlinevirtual |
|
virtual |
Implements VUSolid.
Definition at line 440 of file UCons.cc.
References cosCPhi, cosEPhi, cosHDPhiIT, cosHDPhiOT, cosSPhi, UVector3::Dot(), fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, UUtils::kInfinity, kRadTolerance, G4INCL::Math::max(), secRMax, secRMin, sinCPhi, sinEPhi, sinSPhi, tanRMax, tanRMin, VUSolid::Tolerance(), UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 1343 of file UCons.cc.
References cosCPhi, cosEPhi, cosSPhi, UVector3::Dot(), UUtils::Exception(), fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, kAngTolerance, kEPhi, UUtils::kInfinity, kMZ, kNull, UUtils::kPi, kPZ, kRadTolerance, kRMax, kRMin, kSPhi, secRMax, secRMin, sinCPhi, sinEPhi, sinSPhi, tanRMax, tanRMin, VUSolid::Tolerance(), UVector3::Unit(), Warning, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
inline |
|
inline |
Referenced by G4UCons::GetDeltaPhiAngle(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
|
inline |
|
virtual |
|
inline |
Referenced by G4UCons::GetInnerRadiusMinusZ(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
Referenced by G4UCons::GetInnerRadiusPlusZ(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
Referenced by G4UCons::GetOuterRadiusMinusZ(), and GetParametersList().
Here is the caller graph for this function:
|
inline |
Referenced by G4UCons::GetOuterRadiusPlusZ(), and GetParametersList().
Here is the caller graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 2192 of file UCons.cc.
References GetDeltaPhiAngle(), GetInnerRadiusMinusZ(), GetInnerRadiusPlusZ(), GetOuterRadiusMinusZ(), GetOuterRadiusPlusZ(), GetStartPhiAngle(), and GetZHalfLength().
Here is the call graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 2090 of file UCons.cc.
References fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, UUtils::GetRadiusInRing(), UUtils::Random(), and UUtils::sqr().
Here is the call graph for this function:
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by GetParametersList(), and G4UCons::GetStartPhiAngle().
Here is the caller graph for this function:
|
inline |
|
inline |
Referenced by GetParametersList(), and G4UCons::GetZHalfLength().
Here is the caller graph for this function:
|
inlineprivate |
|
inlineprivate |
|
inlinevirtual |
Implements VUSolid.
Definition at line 174 of file UCons.cc.
References ApproxSurfaceNormal(), UUtils::Exception(), fDPhi, fDz, fPhiFullCone, fRmax2, fRmin1, fRmin2, fSPhi, kAngTolerance, UUtils::kInfinity, UUtils::kPi, secRMax, secRMin, tanRMax, tanRMin, VUSolid::Tolerance(), UVector3::Unit(), Warning, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:Definition at line 130 of file UCons.cc.
References cosCPhi, cosEPhi, cosHDPhiIT, cosHDPhiOT, cosSPhi, fDPhi, fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, fSPhi, Initialize(), kAngTolerance, kRadTolerance, sinCPhi, sinEPhi, and sinSPhi.
Here is the call graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 1995 of file UCons.cc.
References degree, VUSolid::eOutside, UUtils::Exception(), fDz, Inside(), SafetyFromInsideR(), Warning, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
inline |
Referenced by SafetyFromInside(), and UPolycone::SafetyFromInsideSection().
Here is the caller graph for this function:
|
virtual |
Implements VUSolid.
Definition at line 1259 of file UCons.cc.
References fDz, fPhiFullCone, fRmax1, fRmax2, fRmin1, fRmin2, SafetyToPhi(), secRMax, secRMin, tanRMax, tanRMin, UVector3::x, UVector3::y, and UVector3::z.
Here is the call graph for this function:
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
virtual |
|
inlineprivatevirtual |
Implements VUSolid.
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), and operator=().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), and operator=().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), and operator=().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), and operator=().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), and operator=().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToOut(), GetPointOnSurface(), Normal(), operator=(), and StreamInfo().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Extent(), GetPointOnSurface(), Normal(), operator=(), SafetyFromInside(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 206 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), GetPointOnSurface(), Normal(), operator=(), and SafetyFromOutside().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), Extent(), GetPointOnSurface(), operator=(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Extent(), GetPointOnSurface(), Normal(), operator=(), SafetyFromOutside(), and StreamInfo().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), GetPointOnSurface(), Normal(), operator=(), SafetyFromOutside(), StreamInfo(), and UCons().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), GetPointOnSurface(), Normal(), operator=(), SafetyFromOutside(), StreamInfo(), and UCons().
|
private |
Definition at line 197 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToOut(), GetPointOnSurface(), Normal(), operator=(), and StreamInfo().
|
private |
Definition at line 193 of file UCons.hh.
Referenced by DistanceToOut(), Normal(), operator=(), and UCons().
|
private |
Definition at line 193 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), operator=(), and UCons().
|
private |
Definition at line 210 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), and SafetyFromOutside().
|
private |
Definition at line 210 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), and SafetyFromOutside().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), and operator=().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), and operator=().
|
private |
Definition at line 201 of file UCons.hh.
Referenced by DistanceToIn(), DistanceToOut(), and operator=().
|
private |
Definition at line 210 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), and SafetyFromOutside().
|
private |
Definition at line 210 of file UCons.hh.
Referenced by ApproxSurfaceNormal(), DistanceToIn(), DistanceToOut(), Normal(), and SafetyFromOutside().