49#ifndef G4AdjointPosOnPhysVolGenerator_hh
50#define G4AdjointPosOnPhysVolGenerator_hh 1
G4double epsilon(G4double density, G4double temperature)
void GenerateAPositionOnTheExtSurfaceOfTheSolid(G4ThreeVector &p, G4ThreeVector &direction)
void GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume(G4ThreeVector &p, G4ThreeVector &direction)
G4VPhysicalVolume * DefinePhysicalVolume(const G4String &aName)
void DefinePhysicalVolume1(const G4String &aName)
G4AffineTransform theTransformationFromPhysVolToWorld
void GenerateAPositionOnASolidBoundary(G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction)
static G4ThreadLocal G4AdjointPosOnPhysVolGenerator * theInstance
G4double ComputeAreaOfExtSurfaceStartingFromSphere(G4VSolid *aSolid, G4int NStat)
void SetSolid(G4VSolid *aSolid)
G4double AreaOfExtSurfaceOfThePhysicalVolume
G4String ModelOfSurfaceSource
void GenerateAPositionOnTheExtSurfaceOfASolid(G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction)
~G4AdjointPosOnPhysVolGenerator()
G4double CosThDirComparedToNormal
G4double ComputeAreaOfExtSurfaceStartingFromBox(G4VSolid *aSolid, G4int NStat)
G4double ComputeAreaOfExtSurface()
G4double GetAreaOfExtSurfaceOfThePhysicalVolume()
G4double GenerateAPositionOnASphereBoundary(G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction)
void ComputeTransformationFromPhysVolToWorld()
G4double GenerateAPositionOnABoxBoundary(G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction)
G4double GetCosThDirComparedToNormal()
G4AdjointPosOnPhysVolGenerator()
G4VPhysicalVolume * thePhysicalVolume
static G4AdjointPosOnPhysVolGenerator * GetInstance()