Import Geant4 8.2.0 source tree
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4ClippablePolygon.hh,v 1.10 2006/06/29 18:46:38 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4ClippablePolygon.icc,v 1.4 2006/06/29 18:46:41 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 inline definitions file
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Ellipsoid.hh,v 1.10 2006/06/29 18:46:44 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4Ellipsoid.hh,v 1.11 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -76,6 +76,7 @@ class G4Ellipsoid : public G4VSolid
|
||||
inline void SetSemiAxis (G4double x, G4double y, G4double z);
|
||||
inline void SetZCuts (G4double newzBottomCut, G4double newzTopCut);
|
||||
inline G4double GetCubicVolume();
|
||||
inline G4double GetSurfaceArea();
|
||||
|
||||
// Solid standard methods
|
||||
|
||||
@@ -126,6 +127,7 @@ class G4Ellipsoid : public G4VSolid
|
||||
private:
|
||||
|
||||
G4double fCubicVolume;
|
||||
G4double fSurfaceArea;
|
||||
G4double xSemiAxis, ySemiAxis, zSemiAxis,
|
||||
semiAxisMax, zBottomCut, zTopCut;
|
||||
};
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Ellipsoid.icc,v 1.6 2006/06/29 18:46:47 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4Ellipsoid.icc,v 1.7 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -36,6 +36,7 @@
|
||||
// Implementation of inline methods of G4Ellipsoid
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
inline
|
||||
G4double G4Ellipsoid::GetSemiAxisMax (G4int i) const
|
||||
{
|
||||
return (i==0) ? xSemiAxis
|
||||
@@ -43,16 +44,19 @@ G4double G4Ellipsoid::GetSemiAxisMax (G4int i) const
|
||||
: zSemiAxis;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4Ellipsoid::GetZBottomCut() const
|
||||
{
|
||||
return zBottomCut;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4Ellipsoid::GetZTopCut() const
|
||||
{
|
||||
return zTopCut;
|
||||
}
|
||||
|
||||
inline
|
||||
void G4Ellipsoid::SetSemiAxis (G4double newxSemiAxis,
|
||||
G4double newySemiAxis,
|
||||
G4double newzSemiAxis)
|
||||
@@ -64,6 +68,7 @@ void G4Ellipsoid::SetSemiAxis (G4double newxSemiAxis,
|
||||
if (zTopCut > +zSemiAxis) { zTopCut = +zSemiAxis; }
|
||||
}
|
||||
|
||||
inline
|
||||
void G4Ellipsoid::SetZCuts (G4double newzBottomCut, G4double newzTopCut)
|
||||
{
|
||||
if (newzBottomCut < -zSemiAxis)
|
||||
@@ -97,3 +102,11 @@ G4double G4Ellipsoid::GetCubicVolume()
|
||||
}
|
||||
return fCubicVolume;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4Ellipsoid::GetSurfaceArea()
|
||||
{
|
||||
if(fSurfaceArea != 0.) {;}
|
||||
else { fSurfaceArea = G4VSolid::GetSurfaceArea(); }
|
||||
return fSurfaceArea;
|
||||
}
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4EllipticalCone.hh,v 1.8 2006/06/29 18:46:49 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4EllipticalCone.hh,v 1.9 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -83,7 +83,9 @@ class G4EllipticalCone : public G4VSolid
|
||||
inline G4double GetZTopCut() const;
|
||||
inline void SetSemiAxis (G4double x, G4double y, G4double z);
|
||||
inline void SetZCut (G4double newzTopCut);
|
||||
|
||||
inline G4double GetCubicVolume();
|
||||
inline G4double GetSurfaceArea();
|
||||
|
||||
// Solid standard methods
|
||||
//
|
||||
@@ -140,6 +142,7 @@ class G4EllipticalCone : public G4VSolid
|
||||
private:
|
||||
|
||||
G4double fCubicVolume;
|
||||
G4double fSurfaceArea;
|
||||
G4double xSemiAxis, ySemiAxis, zheight,
|
||||
semiAxisMax, zTopCut;
|
||||
};
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4EllipticalCone.icc,v 1.5 2006/06/29 18:46:51 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4EllipticalCone.icc,v 1.6 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -38,16 +38,19 @@
|
||||
// Author: Dionysios Anninos
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
inline
|
||||
G4double G4EllipticalCone::GetSemiAxisMax () const
|
||||
{
|
||||
return ySemiAxis > xSemiAxis ? ySemiAxis : xSemiAxis;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4EllipticalCone::GetZTopCut() const
|
||||
{
|
||||
return zTopCut;
|
||||
}
|
||||
|
||||
inline
|
||||
void G4EllipticalCone::SetSemiAxis (G4double newxSemiAxis,
|
||||
G4double newySemiAxis,
|
||||
G4double newzMax)
|
||||
@@ -59,6 +62,7 @@ void G4EllipticalCone::SetSemiAxis (G4double newxSemiAxis,
|
||||
if (zTopCut > +zheight) { zTopCut = +zheight; }
|
||||
}
|
||||
|
||||
inline
|
||||
void G4EllipticalCone::SetZCut (G4double newzTopCut)
|
||||
{
|
||||
if (newzTopCut > +zheight)
|
||||
@@ -85,3 +89,11 @@ G4double G4EllipticalCone::GetCubicVolume()
|
||||
}
|
||||
return fCubicVolume;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4EllipticalCone::GetSurfaceArea()
|
||||
{
|
||||
if(fSurfaceArea != 0.) {;}
|
||||
else { fSurfaceArea = G4VSolid::GetSurfaceArea(); }
|
||||
return fSurfaceArea;
|
||||
}
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4EllipticalTube.hh,v 1.17 2006/06/29 18:46:53 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4EllipticalTube.hh,v 1.18 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
@@ -90,6 +90,7 @@ class G4EllipticalTube : public G4VSolid
|
||||
std::ostream& StreamInfo(std::ostream& os) const;
|
||||
|
||||
G4double GetCubicVolume();
|
||||
G4double GetSurfaceArea();
|
||||
|
||||
G4ThreeVector GetPointOnSurface() const;
|
||||
|
||||
@@ -134,6 +135,7 @@ class G4EllipticalTube : public G4VSolid
|
||||
private:
|
||||
|
||||
G4double fCubicVolume;
|
||||
G4double fSurfaceArea;
|
||||
mutable G4Polyhedron* fpPolyhedron;
|
||||
|
||||
};
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4EllipticalTube.icc,v 1.4 2006/06/29 18:46:55 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 inline definitions file
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4EnclosingCylinder.hh,v 1.8 2006/06/29 18:46:58 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -24,9 +24,9 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Hype.hh,v 1.14 2006/06/29 18:47:01 gunter Exp $
|
||||
// $Id: G4Hype.hh,v 1.15 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// $Original: G4Hype.hh,v 1.0 1998/06/09 16:57:50 safai Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -114,6 +114,7 @@ class G4Hype : public G4VSolid
|
||||
std::ostream& StreamInfo(std::ostream& os) const;
|
||||
|
||||
G4double GetCubicVolume();
|
||||
G4double GetSurfaceArea();
|
||||
|
||||
G4ThreeVector GetPointOnSurface() const;
|
||||
|
||||
@@ -189,6 +190,7 @@ class G4Hype : public G4VSolid
|
||||
private:
|
||||
|
||||
G4double fCubicVolume;
|
||||
G4double fSurfaceArea;
|
||||
|
||||
mutable G4Polyhedron* fpPolyhedron;
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4Hype.icc,v 1.7 2006/06/29 18:47:03 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 inline definitions file
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4IntersectingCone.hh,v 1.9 2006/06/29 18:47:05 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4PolyPhiFace.hh,v 1.9 2006/06/29 18:47:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4PolyPhiFace.icc,v 1.6 2006/06/29 18:47:10 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4Polycone.hh,v 1.19 2006/06/29 18:47:12 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4Polycone.icc,v 1.10 2006/06/29 18:47:14 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 inline definitions file
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4PolyconeSide.hh,v 1.8 2006/06/29 18:47:16 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4Polyhedra.hh,v 1.16 2006/06/29 18:47:18 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4Polyhedra.icc,v 1.10 2006/06/29 18:47:20 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 inline definitions file
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4PolyhedraSide.hh,v 1.8 2006/06/29 18:47:23 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: G4QuadrangularFacet.hh,v 1.3 2006/06/29 18:47:26 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4ReduciblePolygon.hh,v 1.9 2006/06/29 18:47:29 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4SolidExtentList.hh,v 1.7 2006/06/29 18:47:32 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: G4TessellatedSolid.hh,v 1.3 2006/06/29 18:47:35 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4TessellatedSolid.hh,v 1.4 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
//
|
||||
@@ -139,7 +139,9 @@ class G4TessellatedSolid : public G4VSolid
|
||||
G4VFacet *GetFacet (size_t i) const;
|
||||
size_t GetNumberOfFacets () const;
|
||||
|
||||
// G4double GetCubicVolume ();
|
||||
G4double GetCubicVolume ();
|
||||
G4double GetSurfaceArea ();
|
||||
|
||||
//
|
||||
// void ComputeDimensions (G4VPVParameterisation* p, const G4int n,
|
||||
// const G4VPhysicalVolume* pRep) const;
|
||||
@@ -177,6 +179,13 @@ class G4TessellatedSolid : public G4VSolid
|
||||
G4Polyhedron* GetPolyhedron () const;
|
||||
G4NURBS* CreateNURBS () const;
|
||||
|
||||
public: // without description
|
||||
|
||||
G4TessellatedSolid(__void__&);
|
||||
// Fake default constructor for usage restricted to direct object
|
||||
// persistency for clients requiring preallocation of memory for
|
||||
// persistifiable objects.
|
||||
|
||||
protected: // with description
|
||||
|
||||
void DeleteObjects ();
|
||||
@@ -193,6 +202,7 @@ class G4TessellatedSolid : public G4VSolid
|
||||
std::vector<G4VFacet *> facets;
|
||||
G4GeometryType geometryType;
|
||||
G4double cubicVolume;
|
||||
G4double surfaceArea;
|
||||
G4ThreeVectorList vertexList;
|
||||
G4double xMinExtent;
|
||||
G4double xMaxExtent;
|
||||
|
||||
@@ -28,8 +28,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4Tet.hh,v 1.7 2006/06/29 18:47:38 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4Tet.hh,v 1.9 2006/11/13 08:58:03 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -46,6 +46,7 @@
|
||||
// -------
|
||||
// 03.09.2004 - M.H.Mendenhall & R.A.Weller (Vanderbilt University, USA)
|
||||
// 10.02.2005 - D.Anninos (CERN) - Added GetPointOnSurface() method.
|
||||
// 12.11.2006 - M.H.Mendenhall - Added GetSurfaceArea() concrete implementation.
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef G4TET_HH
|
||||
#define G4TET_HH
|
||||
@@ -90,7 +91,8 @@ class G4Tet : public G4VSolid
|
||||
|
||||
G4double DistanceToOut(const G4ThreeVector& p) const;
|
||||
|
||||
G4double GetCubicVolume() {return fCubicVolume;}
|
||||
G4double GetCubicVolume();
|
||||
G4double GetSurfaceArea();
|
||||
|
||||
G4GeometryType GetEntityType() const;
|
||||
|
||||
@@ -114,7 +116,7 @@ class G4Tet : public G4VSolid
|
||||
// persistifiable objects.
|
||||
|
||||
const char* CVSHeaderVers()
|
||||
{ return "$Id: G4Tet.hh,v 1.7 2006/06/29 18:47:38 gunter Exp $"; }
|
||||
{ return "$Id: G4Tet.hh,v 1.9 2006/11/13 08:58:03 gcosmo Exp $"; }
|
||||
const char* CVSFileVers()
|
||||
{ return CVSVers; }
|
||||
void PrintWarnings(G4bool flag)
|
||||
@@ -135,7 +137,7 @@ class G4Tet : public G4VSolid
|
||||
|
||||
private:
|
||||
|
||||
G4double fCubicVolume;
|
||||
G4double fCubicVolume, fSurfaceArea;
|
||||
|
||||
mutable G4Polyhedron* fpPolyhedron;
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: G4TriangularFacet.hh,v 1.3 2006/06/29 18:47:40 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistTrapFlatSide.hh,v 1.5 2006/06/29 18:47:48 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistTubsFlatSide.hh,v 1.5 2006/06/29 18:47:53 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistTubsHypeSide.hh,v 1.5 2006/06/29 18:47:56 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistTubsSide.hh,v 1.5 2006/06/29 18:47:58 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistedBox.hh,v 1.10 2006/06/29 18:48:00 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistedTrap.hh,v 1.10 2006/06/29 18:48:02 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistedTrd.hh,v 1.6 2006/06/29 18:48:04 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4TwistedTubs.hh,v 1.12 2006/06/29 18:48:06 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4TwistedTubs.hh,v 1.13 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -170,6 +170,9 @@ class G4TwistedTubs : public G4VSolid
|
||||
G4double GetCubicVolume();
|
||||
// Returns an estimation of the geometrical cubic volume of the
|
||||
// solid. Caches the computed value once computed the first time.
|
||||
G4double GetSurfaceArea();
|
||||
// Returns an estimation of the geometrical surface area of the
|
||||
// solid. Caches the computed value once computed the first time.
|
||||
|
||||
G4ThreeVector GetPointOnSurface() const ;
|
||||
|
||||
@@ -231,6 +234,7 @@ class G4TwistedTubs : public G4VSolid
|
||||
G4VTwistSurface *fOuterHype; // Surface of +ve r
|
||||
|
||||
G4double fCubicVolume; // Cached value for cubic volume
|
||||
G4double fSurfaceArea; // Cached value for surface area
|
||||
|
||||
mutable G4Polyhedron* fpPolyhedron; // pointer to polyhedron for vis
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4VCSGface.hh,v 1.7 2006/06/29 18:48:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VCSGfaceted.hh,v 1.12 2006/06/29 18:48:10 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4VCSGfaceted.hh,v 1.13 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
@@ -55,7 +55,7 @@ class G4VCSGfaceted : public G4VSolid
|
||||
{
|
||||
public: // with description
|
||||
|
||||
G4VCSGfaceted( G4String name );
|
||||
G4VCSGfaceted( const G4String& name );
|
||||
virtual ~G4VCSGfaceted();
|
||||
|
||||
G4VCSGfaceted( const G4VCSGfaceted &source );
|
||||
@@ -96,10 +96,17 @@ class G4VCSGfaceted : public G4VSolid
|
||||
G4double GetCubVolEpsilon() const;
|
||||
void SetCubVolStatistics(G4int st);
|
||||
void SetCubVolEpsilon(G4double ep);
|
||||
G4int GetAreaStatistics() const;
|
||||
G4double GetAreaAccuracy() const;
|
||||
void SetAreaStatistics(G4int st);
|
||||
void SetAreaAccuracy(G4double ep);
|
||||
|
||||
virtual G4double GetCubicVolume();
|
||||
// Returns an estimation of the geometrical cubic volume of the
|
||||
// solid. Caches the computed value once computed the first time.
|
||||
virtual G4double GetSurfaceArea();
|
||||
// Returns an estimation of the geometrical surface area of the
|
||||
// solid. Caches the computed value once computed the first time.
|
||||
|
||||
public: // without description
|
||||
|
||||
@@ -113,6 +120,7 @@ class G4VCSGfaceted : public G4VSolid
|
||||
G4int numFace;
|
||||
G4VCSGface **faces;
|
||||
G4double fCubicVolume;
|
||||
G4double fSurfaceArea;
|
||||
mutable G4Polyhedron* fpPolyhedron;
|
||||
|
||||
virtual G4double DistanceTo( const G4ThreeVector &p,
|
||||
@@ -123,8 +131,9 @@ class G4VCSGfaceted : public G4VSolid
|
||||
|
||||
private:
|
||||
|
||||
G4int fCubVolStatistics;
|
||||
G4int fStatistics;
|
||||
G4double fCubVolEpsilon;
|
||||
G4double fAreaAccuracy;
|
||||
// Statistics, error accuracy for volume estimation.
|
||||
|
||||
};
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: G4VFacet.hh,v 1.3 2006/06/29 18:48:12 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
// $Id: G4VFacet.icc,v 1.3 2006/06/29 18:48:15 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
//
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4VTwistSurface.hh,v 1.5 2006/06/29 18:48:17 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
//
|
||||
//
|
||||
// $Id: G4VTwistSurface.icc,v 1.3 2006/06/29 18:48:20 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VTwistedFaceted.hh,v 1.9 2006/06/29 18:48:23 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: G4VTwistedFaceted.hh,v 1.10 2006/10/20 13:45:20 gcosmo Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// --------------------------------------------------------------------
|
||||
// GEANT 4 class header file
|
||||
@@ -107,6 +107,7 @@ class G4VTwistedFaceted: public G4VSolid
|
||||
G4ThreeVector GetPointInSolid(G4double z) const;
|
||||
|
||||
virtual inline G4double GetCubicVolume() ;
|
||||
virtual inline G4double GetSurfaceArea() ;
|
||||
|
||||
virtual void DescribeYourselfTo (G4VGraphicsScene &scene) const;
|
||||
virtual G4Polyhedron *CreatePolyhedron () const ;
|
||||
@@ -194,7 +195,8 @@ class G4VTwistedFaceted: public G4VSolid
|
||||
G4VTwistSurface *fSide180 ; // Twisted Side at phi = 180 deg
|
||||
G4VTwistSurface *fSide270 ; // Twisted Side at phi = 270 deg
|
||||
|
||||
G4double fCubicVolume ; // volume of the twisted trapezoid
|
||||
G4double fCubicVolume ; // volume of the solid
|
||||
G4double fSurfaceArea ; // area of the solid
|
||||
|
||||
mutable G4Polyhedron* fpPolyhedron; // pointer to polyhedron for vis
|
||||
|
||||
@@ -275,14 +277,20 @@ class G4VTwistedFaceted: public G4VSolid
|
||||
inline
|
||||
G4double G4VTwistedFaceted::GetCubicVolume()
|
||||
{
|
||||
|
||||
|
||||
if(fCubicVolume != 0.) ;
|
||||
else fCubicVolume = 2 * fDz
|
||||
* ( ( fDx1 + fDx2 ) * fDy1 + ( fDx3 + fDx4 ) * fDy2 );
|
||||
return fCubicVolume;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4VTwistedFaceted::GetSurfaceArea()
|
||||
{
|
||||
if(fSurfaceArea != 0.) ;
|
||||
else fSurfaceArea = G4VSolid::GetSurfaceArea();
|
||||
return fSurfaceArea;
|
||||
}
|
||||
|
||||
inline
|
||||
G4double G4VTwistedFaceted::GetValueA(G4double phi) const
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user