Geant4
10.02.p02
|
#include <G4AdjointCrossSurfChecker.hh>
Public Member Functions | |
G4bool | CrossingASphere (const G4Step *aStep, G4double sphere_radius, G4ThreeVector sphere_center, G4ThreeVector &crossing_pos, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | GoingInOrOutOfaVolume (const G4Step *aStep, const G4String &volume_name, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | GoingInOrOutOfaVolumeByExtSurface (const G4Step *aStep, const G4String &volume_name, const G4String &mother_log_vol_name, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | CrossingAGivenRegisteredSurface (const G4Step *aStep, const G4String &surface_name, G4ThreeVector &crossing_pos, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | CrossingAGivenRegisteredSurface (const G4Step *aStep, int ind, G4ThreeVector &crossing_pos, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | CrossingOneOfTheRegisteredSurface (const G4Step *aStep, G4String &surface_name, G4ThreeVector &crossing_pos, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | CrossingAnInterfaceBetweenTwoVolumes (const G4Step *aStep, const G4String &vol1_name, const G4String &vol2_name, G4ThreeVector &crossing_pos, G4double &cos_to_surface, G4bool &GoingIn) |
G4bool | AddaSphericalSurface (const G4String &SurfaceName, G4double radius, G4ThreeVector pos, G4double &area) |
G4bool | AddaSphericalSurfaceWithCenterAtTheCenterOfAVolume (const G4String &SurfaceName, G4double radius, const G4String &volume_name, G4ThreeVector ¢er, G4double &area) |
G4bool | AddanExtSurfaceOfAvolume (const G4String &SurfaceName, const G4String &volume_name, G4double &area) |
G4bool | AddanInterfaceBetweenTwoVolumes (const G4String &SurfaceName, const G4String &volume_name1, const G4String &volume_name2, G4double &area) |
void | ClearListOfSelectedSurface () |
Static Public Member Functions | |
static G4AdjointCrossSurfChecker * | GetInstance () |
Private Member Functions | |
G4AdjointCrossSurfChecker () | |
~G4AdjointCrossSurfChecker () | |
G4int | FindRegisteredSurface (const G4String &name) |
Private Attributes | |
std::vector< G4String > | ListOfSurfaceName |
std::vector< G4String > | ListOfSurfaceType |
std::vector< G4double > | ListOfSphereRadius |
std::vector< G4ThreeVector > | ListOfSphereCenter |
std::vector< G4String > | ListOfVol1Name |
std::vector< G4String > | ListOfVol2Name |
std::vector< G4double > | AreaOfSurface |
Static Private Attributes | |
static G4ThreadLocal G4AdjointCrossSurfChecker * | instance = 0 |
Definition at line 63 of file G4AdjointCrossSurfChecker.hh.
|
private |
Definition at line 51 of file G4AdjointCrossSurfChecker.cc.
Referenced by GetInstance().
|
private |
Definition at line 56 of file G4AdjointCrossSurfChecker.cc.
References instance.
G4bool G4AdjointCrossSurfChecker::AddanExtSurfaceOfAvolume | ( | const G4String & | SurfaceName, |
const G4String & | volume_name, | ||
G4double & | area | ||
) |
Definition at line 316 of file G4AdjointCrossSurfChecker.cc.
References AreaOfSurface, FindRegisteredSurface(), G4cout, G4PhysicalVolumeStore::GetInstance(), G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetMotherLogical(), G4LogicalVolume::GetName(), G4LogicalVolume::GetSolid(), G4VSolid::GetSurfaceArea(), ListOfSphereCenter, ListOfSphereRadius, ListOfSurfaceName, ListOfSurfaceType, ListOfVol1Name, and ListOfVol2Name.
Referenced by G4AdjointSimManager::DefineAdjointSourceOnTheExtSurfaceOfAVolume(), and G4AdjointSimManager::DefineExtSourceOnTheExtSurfaceOfAVolume().
G4bool G4AdjointCrossSurfChecker::AddanInterfaceBetweenTwoVolumes | ( | const G4String & | SurfaceName, |
const G4String & | volume_name1, | ||
const G4String & | volume_name2, | ||
G4double & | area | ||
) |
Definition at line 358 of file G4AdjointCrossSurfChecker.cc.
References AreaOfSurface, FindRegisteredSurface(), ListOfSphereCenter, ListOfSphereRadius, ListOfSurfaceName, ListOfSurfaceType, ListOfVol1Name, and ListOfVol2Name.
G4bool G4AdjointCrossSurfChecker::AddaSphericalSurface | ( | const G4String & | SurfaceName, |
G4double | radius, | ||
G4ThreeVector | pos, | ||
G4double & | area | ||
) |
Definition at line 247 of file G4AdjointCrossSurfChecker.cc.
References AreaOfSurface, FindRegisteredSurface(), ListOfSphereCenter, ListOfSphereRadius, ListOfSurfaceName, ListOfSurfaceType, ListOfVol1Name, ListOfVol2Name, pi, and pos.
Referenced by AddaSphericalSurfaceWithCenterAtTheCenterOfAVolume(), G4AdjointSimManager::DefineSphericalAdjointSource(), and G4AdjointSimManager::DefineSphericalExtSource().
G4bool G4AdjointCrossSurfChecker::AddaSphericalSurfaceWithCenterAtTheCenterOfAVolume | ( | const G4String & | SurfaceName, |
G4double | radius, | ||
const G4String & | volume_name, | ||
G4ThreeVector & | center, | ||
G4double & | area | ||
) |
Definition at line 272 of file G4AdjointCrossSurfChecker.cc.
References AddaSphericalSurface(), cm, G4cout, G4VPhysicalVolume::GetFrameRotation(), G4PhysicalVolumeStore::GetInstance(), G4VPhysicalVolume::GetMotherLogical(), G4VPhysicalVolume::GetObjectTranslation(), and G4AffineTransform::NetTranslation().
Referenced by G4AdjointSimManager::DefineSphericalAdjointSourceWithCentreAtTheCentreOfAVolume(), and G4AdjointSimManager::DefineSphericalExtSourceWithCentreAtTheCentreOfAVolume().
void G4AdjointCrossSurfChecker::ClearListOfSelectedSurface | ( | ) |
Definition at line 384 of file G4AdjointCrossSurfChecker.cc.
References ListOfSphereCenter, ListOfSphereRadius, ListOfSurfaceName, ListOfSurfaceType, ListOfVol1Name, and ListOfVol2Name.
G4bool G4AdjointCrossSurfChecker::CrossingAGivenRegisteredSurface | ( | const G4Step * | aStep, |
const G4String & | surface_name, | ||
G4ThreeVector & | crossing_pos, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 164 of file G4AdjointCrossSurfChecker.cc.
References FindRegisteredSurface().
Referenced by CrossingOneOfTheRegisteredSurface().
G4bool G4AdjointCrossSurfChecker::CrossingAGivenRegisteredSurface | ( | const G4Step * | aStep, |
int | ind, | ||
G4ThreeVector & | crossing_pos, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 175 of file G4AdjointCrossSurfChecker.cc.
References CrossingAnInterfaceBetweenTwoVolumes(), CrossingASphere(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), GoingInOrOutOfaVolumeByExtSurface(), ListOfSphereCenter, ListOfSphereRadius, ListOfSurfaceType, ListOfVol1Name, and ListOfVol2Name.
G4bool G4AdjointCrossSurfChecker::CrossingAnInterfaceBetweenTwoVolumes | ( | const G4Step * | aStep, |
const G4String & | vol1_name, | ||
const G4String & | vol2_name, | ||
G4ThreeVector & | crossing_pos, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 215 of file G4AdjointCrossSurfChecker.cc.
References fGeomBoundary, G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetName(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4StepPoint::GetStepStatus(), G4StepPoint::GetTouchable(), and G4VTouchable::GetVolume().
Referenced by CrossingAGivenRegisteredSurface().
G4bool G4AdjointCrossSurfChecker::CrossingASphere | ( | const G4Step * | aStep, |
G4double | sphere_radius, | ||
G4ThreeVector | sphere_center, | ||
G4ThreeVector & | crossing_pos, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 69 of file G4AdjointCrossSurfChecker.cc.
References a, G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), and G4Step::GetPreStepPoint().
Referenced by CrossingAGivenRegisteredSurface().
G4bool G4AdjointCrossSurfChecker::CrossingOneOfTheRegisteredSurface | ( | const G4Step * | aStep, |
G4String & | surface_name, | ||
G4ThreeVector & | crossing_pos, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 203 of file G4AdjointCrossSurfChecker.cc.
References CrossingAGivenRegisteredSurface(), and ListOfSurfaceName.
Referenced by G4AdjointSteppingAction::UserSteppingAction().
Definition at line 395 of file G4AdjointCrossSurfChecker.cc.
References ListOfSurfaceName.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), and CrossingAGivenRegisteredSurface().
|
static |
Definition at line 62 of file G4AdjointCrossSurfChecker.cc.
References G4AdjointCrossSurfChecker(), and instance.
Referenced by G4AdjointSimManager::DefineAdjointSourceOnTheExtSurfaceOfAVolume(), G4AdjointSimManager::DefineExtSourceOnTheExtSurfaceOfAVolume(), G4AdjointSimManager::DefineSphericalAdjointSource(), G4AdjointSimManager::DefineSphericalAdjointSourceWithCentreAtTheCentreOfAVolume(), G4AdjointSimManager::DefineSphericalExtSource(), G4AdjointSimManager::DefineSphericalExtSourceWithCentreAtTheCentreOfAVolume(), and G4AdjointSteppingAction::G4AdjointSteppingAction().
G4bool G4AdjointCrossSurfChecker::GoingInOrOutOfaVolume | ( | const G4Step * | aStep, |
const G4String & | volume_name, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 107 of file G4AdjointCrossSurfChecker.cc.
References fGeomBoundary, G4VPhysicalVolume::GetName(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4StepPoint::GetStepStatus(), G4StepPoint::GetTouchable(), and G4VTouchable::GetVolume().
G4bool G4AdjointCrossSurfChecker::GoingInOrOutOfaVolumeByExtSurface | ( | const G4Step * | aStep, |
const G4String & | volume_name, | ||
const G4String & | mother_log_vol_name, | ||
G4double & | cos_to_surface, | ||
G4bool & | GoingIn | ||
) |
Definition at line 135 of file G4AdjointCrossSurfChecker.cc.
References fGeomBoundary, G4VPhysicalVolume::GetLogicalVolume(), G4VPhysicalVolume::GetName(), G4LogicalVolume::GetName(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), G4StepPoint::GetStepStatus(), G4StepPoint::GetTouchable(), and G4VTouchable::GetVolume().
Referenced by CrossingAGivenRegisteredSurface().
|
private |
Definition at line 102 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), and AddaSphericalSurface().
|
staticprivate |
Definition at line 94 of file G4AdjointCrossSurfChecker.hh.
Referenced by GetInstance(), and ~G4AdjointCrossSurfChecker().
|
private |
Definition at line 99 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), ClearListOfSelectedSurface(), and CrossingAGivenRegisteredSurface().
|
private |
Definition at line 98 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), ClearListOfSelectedSurface(), and CrossingAGivenRegisteredSurface().
|
private |
Definition at line 96 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), ClearListOfSelectedSurface(), CrossingOneOfTheRegisteredSurface(), and FindRegisteredSurface().
|
private |
Definition at line 97 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), ClearListOfSelectedSurface(), and CrossingAGivenRegisteredSurface().
|
private |
Definition at line 100 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), ClearListOfSelectedSurface(), and CrossingAGivenRegisteredSurface().
|
private |
Definition at line 101 of file G4AdjointCrossSurfChecker.hh.
Referenced by AddanExtSurfaceOfAvolume(), AddanInterfaceBetweenTwoVolumes(), AddaSphericalSurface(), ClearListOfSelectedSurface(), and CrossingAGivenRegisteredSurface().