Geant4-11
|
#include <G4AdjointPosOnPhysVolGenerator.hh>
Static Public Member Functions | |
static G4AdjointPosOnPhysVolGenerator * | GetInstance () |
Private Member Functions | |
G4double | ComputeAreaOfExtSurfaceStartingFromBox (G4VSolid *aSolid, G4int NStat) |
G4double | ComputeAreaOfExtSurfaceStartingFromSphere (G4VSolid *aSolid, G4int NStat) |
void | ComputeTransformationFromPhysVolToWorld () |
G4AdjointPosOnPhysVolGenerator () | |
G4double | GenerateAPositionOnABoxBoundary (G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction) |
void | GenerateAPositionOnASolidBoundary (G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction) |
G4double | GenerateAPositionOnASphereBoundary (G4VSolid *aSolid, G4ThreeVector &p, G4ThreeVector &direction) |
~G4AdjointPosOnPhysVolGenerator () | |
Private Attributes | |
G4double | AreaOfExtSurfaceOfThePhysicalVolume |
G4double | CosThDirComparedToNormal |
G4String | ModelOfSurfaceSource |
G4VPhysicalVolume * | thePhysicalVolume = nullptr |
G4VSolid * | theSolid = nullptr |
G4AffineTransform | theTransformationFromPhysVolToWorld |
G4bool | UseSphere |
Static Private Attributes | |
static G4ThreadLocal G4AdjointPosOnPhysVolGenerator * | theInstance = nullptr |
Definition at line 58 of file G4AdjointPosOnPhysVolGenerator.hh.
|
private |
Definition at line 64 of file G4AdjointPosOnPhysVolGenerator.cc.
Referenced by GetInstance().
|
private |
Definition at line 58 of file G4AdjointPosOnPhysVolGenerator.cc.
G4double G4AdjointPosOnPhysVolGenerator::ComputeAreaOfExtSurface | ( | ) |
Definition at line 116 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeAreaOfExtSurface(), and theSolid.
Referenced by ComputeAreaOfExtSurface().
Definition at line 130 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeAreaOfExtSurface(), eps, and theSolid.
Definition at line 123 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeAreaOfExtSurface(), and theSolid.
Definition at line 138 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeAreaOfExtSurface().
G4double G4AdjointPosOnPhysVolGenerator::ComputeAreaOfExtSurface | ( | G4VSolid * | aSolid, |
G4double | epsilon | ||
) |
Definition at line 174 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeAreaOfExtSurface(), and eps.
Definition at line 146 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeAreaOfExtSurfaceStartingFromBox(), ComputeAreaOfExtSurfaceStartingFromSphere(), GenerateAPositionOnABoxBoundary(), GenerateAPositionOnASphereBoundary(), ModelOfSurfaceSource, and UseSphere.
|
private |
Definition at line 212 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4VSolid::DistanceToIn(), GenerateAPositionOnABoxBoundary(), and kInfinity.
Referenced by ComputeAreaOfExtSurface().
|
private |
Definition at line 232 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4VSolid::DistanceToIn(), GenerateAPositionOnASphereBoundary(), and kInfinity.
Referenced by ComputeAreaOfExtSurface().
|
private |
Definition at line 463 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4VPhysicalVolume::GetFrameRotation(), G4PhysicalVolumeStore::GetInstance(), G4VPhysicalVolume::GetMotherLogical(), G4VPhysicalVolume::GetObjectTranslation(), thePhysicalVolume, and theTransformationFromPhysVolToWorld.
Referenced by DefinePhysicalVolume().
G4VPhysicalVolume * G4AdjointPosOnPhysVolGenerator::DefinePhysicalVolume | ( | const G4String & | aName | ) |
Definition at line 73 of file G4AdjointPosOnPhysVolGenerator.cc.
References ComputeTransformationFromPhysVolToWorld(), G4cout, G4endl, G4PhysicalVolumeStore::GetInstance(), G4VPhysicalVolume::GetLogicalVolume(), G4LogicalVolume::GetSolid(), thePhysicalVolume, and theSolid.
Referenced by DefinePhysicalVolume1().
void G4AdjointPosOnPhysVolGenerator::DefinePhysicalVolume1 | ( | const G4String & | aName | ) |
Definition at line 109 of file G4AdjointPosOnPhysVolGenerator.cc.
References DefinePhysicalVolume(), and thePhysicalVolume.
Referenced by G4AdjointPrimaryGenerator::SetAdjointPrimarySourceOnAnExtSurfaceOfAVolume().
|
private |
Definition at line 322 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4VSolid::CalculateExtent(), G4UniformRand, kXAxis, kYAxis, kZAxis, maxZ, and CLHEP::twopi.
Referenced by ComputeAreaOfExtSurface(), ComputeAreaOfExtSurfaceStartingFromBox(), GenerateAPositionOnASolidBoundary(), and GenerateAPositionOnTheExtSurfaceOfASolid().
|
private |
Definition at line 252 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4VSolid::DistanceToIn(), GenerateAPositionOnABoxBoundary(), GenerateAPositionOnASphereBoundary(), kInfinity, and UseSphere.
Referenced by GenerateAPositionOnTheExtSurfaceOfASolid().
|
private |
Definition at line 278 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4VSolid::CalculateExtent(), G4UniformRand, kXAxis, kYAxis, kZAxis, maxZ, CLHEP::pi, CLHEP::Hep3Vector::rotateY(), CLHEP::Hep3Vector::rotateZ(), CLHEP::Hep3Vector::setRThetaPhi(), and CLHEP::twopi.
Referenced by ComputeAreaOfExtSurface(), ComputeAreaOfExtSurfaceStartingFromSphere(), GenerateAPositionOnASolidBoundary(), and GenerateAPositionOnTheExtSurfaceOfASolid().
void G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnTheExtSurfaceOfASolid | ( | G4VSolid * | aSolid, |
G4ThreeVector & | p, | ||
G4ThreeVector & | direction | ||
) |
Definition at line 183 of file G4AdjointPosOnPhysVolGenerator.cc.
References GenerateAPositionOnABoxBoundary(), GenerateAPositionOnASolidBoundary(), GenerateAPositionOnASphereBoundary(), and ModelOfSurfaceSource.
Referenced by GenerateAPositionOnTheExtSurfaceOfTheSolid().
void G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume | ( | G4ThreeVector & | p, |
G4ThreeVector & | direction | ||
) |
Definition at line 435 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4cout, G4endl, GenerateAPositionOnTheExtSurfaceOfTheSolid(), thePhysicalVolume, theTransformationFromPhysVolToWorld, G4AffineTransform::TransformAxis(), and G4AffineTransform::TransformPoint().
Referenced by G4AdjointPrimaryGenerator::GenerateAdjointPrimaryVertex(), GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume(), and G4AdjointPrimaryGenerator::GenerateFwdPrimaryVertex().
void G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume | ( | G4ThreeVector & | p, |
G4ThreeVector & | direction, | ||
G4double & | costh_to_normal | ||
) |
Definition at line 452 of file G4AdjointPosOnPhysVolGenerator.cc.
References CosThDirComparedToNormal, and GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume().
void G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnTheExtSurfaceOfTheSolid | ( | G4ThreeVector & | p, |
G4ThreeVector & | direction | ||
) |
Definition at line 203 of file G4AdjointPosOnPhysVolGenerator.cc.
References GenerateAPositionOnTheExtSurfaceOfASolid(), and theSolid.
Referenced by GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume().
|
inline |
Definition at line 88 of file G4AdjointPosOnPhysVolGenerator.hh.
References AreaOfExtSurfaceOfThePhysicalVolume.
|
inline |
Definition at line 90 of file G4AdjointPosOnPhysVolGenerator.hh.
References CosThDirComparedToNormal.
|
static |
Definition at line 47 of file G4AdjointPosOnPhysVolGenerator.cc.
References G4AdjointPosOnPhysVolGenerator(), and theInstance.
Referenced by G4AdjointPrimaryGenerator::G4AdjointPrimaryGenerator().
|
inline |
Definition at line 86 of file G4AdjointPosOnPhysVolGenerator.hh.
References theSolid.
|
private |
Definition at line 125 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by GetAreaOfExtSurfaceOfThePhysicalVolume().
|
private |
Definition at line 126 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume(), and GetCosThDirComparedToNormal().
|
private |
Definition at line 123 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by ComputeAreaOfExtSurface(), and GenerateAPositionOnTheExtSurfaceOfASolid().
|
staticprivate |
Definition at line 118 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by GetInstance().
|
private |
Definition at line 120 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by ComputeTransformationFromPhysVolToWorld(), DefinePhysicalVolume(), DefinePhysicalVolume1(), and GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume().
|
private |
Definition at line 119 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by ComputeAreaOfExtSurface(), DefinePhysicalVolume(), GenerateAPositionOnTheExtSurfaceOfTheSolid(), and SetSolid().
|
private |
Definition at line 124 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by ComputeTransformationFromPhysVolToWorld(), and GenerateAPositionOnTheExtSurfaceOfThePhysicalVolume().
|
private |
Definition at line 122 of file G4AdjointPosOnPhysVolGenerator.hh.
Referenced by ComputeAreaOfExtSurface(), and GenerateAPositionOnASolidBoundary().