#include <G4XTankOpBoundaryProcess.h>
Public Member Functions | |
G4XTankOpBoundaryProcess (const G4String &processName="OpBoundary", G4ProcessType type=fOptical) | |
G4double | GetMeanFreePath (const G4Track &, G4double, G4ForceCondition *condition) |
G4OpticalSurfaceModel | GetModel () const |
G4XTankOpBoundaryProcessStatus | GetStatus () const |
G4bool | IsApplicable (const G4ParticleDefinition &aParticleType) |
G4VParticleChange * | PostStepDoIt (const G4Track &aTrack, const G4Step &aStep) |
void | SetModel (G4OpticalSurfaceModel model) |
~G4XTankOpBoundaryProcess () | |
Private Member Functions | |
void | ChooseReflection () |
void | DielectricDielectric () |
void | DielectricMetal () |
void | DoAbsorption () |
void | DoReflection () |
G4bool | G4BooleanRand (const G4double prob) const |
G4ThreeVector | G4IsotropicRand () const |
G4ThreeVector | G4LambertianRand (const G4ThreeVector &normal) |
G4ThreeVector | G4PlaneVectorRand (const G4ThreeVector &normal) const |
void | G4Swap (G4double *a, G4double *b) const |
void | G4Swap (G4Material *a, G4Material *b) const |
void | G4VectorSwap (G4ThreeVector *vec1, G4ThreeVector *vec2) const |
G4ThreeVector | GetFacetNormal (const G4ThreeVector &Momentum, const G4ThreeVector &Normal) const |
Private Attributes | |
G4double | cost1 |
G4double | cost2 |
G4double | kCarTolerance |
G4Material * | Material1 |
G4Material * | Material2 |
G4ThreeVector | NewMomentum |
G4ThreeVector | NewPolarization |
G4ThreeVector | OldMomentum |
G4ThreeVector | OldPolarization |
G4OpticalSurface * | OpticalSurface |
G4double | prob_bs |
G4double | prob_sl |
G4double | prob_ss |
G4double | Rindex1 |
G4double | Rindex2 |
G4double | sint1 |
G4double | sint2 |
G4double | theEfficiency |
G4ThreeVector | theFacetNormal |
G4OpticalSurfaceFinish | theFinish |
G4ThreeVector | theGlobalNormal |
G4OpticalSurfaceModel | theModel |
G4double | thePhotonMomentum |
G4double | theReflectivity |
G4XTankOpBoundaryProcessStatus | theStatus |
Definition at line 104 of file G4XTankOpBoundaryProcess.h.
G4XTankOpBoundaryProcess::G4XTankOpBoundaryProcess | ( | const G4String & | processName = "OpBoundary" , |
G4ProcessType | type = fOptical |
||
) |
Definition at line 86 of file G4XTankOpBoundaryProcess.cc.
References theFinish, theModel, theStatus, and G4XTankSimulatorAG::Undefined.
G4XTankOpBoundaryProcess::~G4XTankOpBoundaryProcess | ( | ) |
Definition at line 112 of file G4XTankOpBoundaryProcess.cc.
|
inlineprivate |
Definition at line 358 of file G4XTankOpBoundaryProcess.h.
References G4XTankSimulatorAG::BackScattering, G4XTankSimulatorAG::LambertianReflection, G4XTankSimulatorAG::LobeReflection, prob_bs, prob_sl, prob_ss, G4XTankSimulatorAG::SpikeReflection, theFacetNormal, theGlobalNormal, and theStatus.
Referenced by DielectricDielectric().
|
private |
Definition at line 537 of file G4XTankOpBoundaryProcess.cc.
References utl::abs(), G4XTankSimulatorAG::BackScattering, ChooseReflection(), cost1, cost2, DoAbsorption(), DoReflection(), G4XTankSimulatorAG::FresnelReflection, G4XTankSimulatorAG::FresnelRefraction, G4BooleanRand(), G4Swap(), GetFacetNormal(), kCarTolerance, G4XTankSimulatorAG::LambertianReflection, Material1, Material2, NewMomentum, NewPolarization, OldMomentum, OldPolarization, Rindex1, Rindex2, sint1, sint2, sqrt(), theFacetNormal, theFinish, theGlobalNormal, theModel, theReflectivity, theStatus, and G4XTankSimulatorAG::TotalInternalReflection.
Referenced by PostStepDoIt().
|
private |
Definition at line 514 of file G4XTankOpBoundaryProcess.cc.
References DoAbsorption(), DoReflection(), G4BooleanRand(), NewMomentum, NewPolarization, OldMomentum, OldPolarization, theGlobalNormal, and theReflectivity.
Referenced by PostStepDoIt().
|
inlineprivate |
Definition at line 379 of file G4XTankOpBoundaryProcess.h.
References G4XTankSimulatorAG::Absorption, G4XTankSimulatorAG::Detection, G4BooleanRand(), NewMomentum, NewPolarization, OldMomentum, OldPolarization, theEfficiency, thePhotonMomentum, and theStatus.
Referenced by DielectricDielectric(), DielectricMetal(), and PostStepDoIt().
|
inlineprivate |
Definition at line 401 of file G4XTankOpBoundaryProcess.h.
References G4LambertianRand(), GetFacetNormal(), G4XTankSimulatorAG::LambertianReflection, G4XTankSimulatorAG::LobeReflection, NewMomentum, NewPolarization, OldMomentum, OldPolarization, G4XTankSimulatorAG::SpikeReflection, theFacetNormal, theFinish, theGlobalNormal, theStatus, and UnivRecNS::unit.
Referenced by DielectricDielectric(), DielectricMetal(), and PostStepDoIt().
|
inlineprivate |
Definition at line 263 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DielectricMetal(), DoAbsorption(), G4LambertianRand(), and PostStepDoIt().
|
inlineprivate |
Definition at line 271 of file G4XTankOpBoundaryProcess.h.
Referenced by G4LambertianRand().
|
inlineprivate |
Definition at line 293 of file G4XTankOpBoundaryProcess.h.
References G4BooleanRand(), and G4IsotropicRand().
Referenced by DoReflection().
|
inlineprivate |
Definition at line 316 of file G4XTankOpBoundaryProcess.h.
|
inlineprivate |
Definition at line 220 of file G4XTankOpBoundaryProcess.h.
References RdGeoCeLDFFitter::a, and RdGeoCeLDFFitter::b.
Referenced by DielectricDielectric().
|
inlineprivate |
Definition at line 236 of file G4XTankOpBoundaryProcess.h.
References RdGeoCeLDFFitter::a, and RdGeoCeLDFFitter::b.
|
inlineprivate |
Definition at line 249 of file G4XTankOpBoundaryProcess.h.
|
private |
Definition at line 427 of file G4XTankOpBoundaryProcess.cc.
References OpticalSurface, and theModel.
Referenced by DielectricDielectric(), and DoReflection().
G4double G4XTankOpBoundaryProcess::GetMeanFreePath | ( | const G4Track & | , |
G4double | , | ||
G4ForceCondition * | condition | ||
) |
Definition at line 805 of file G4XTankOpBoundaryProcess.cc.
|
inline |
Definition at line 340 of file G4XTankOpBoundaryProcess.h.
References theModel.
|
inline |
Definition at line 346 of file G4XTankOpBoundaryProcess.h.
References theStatus.
|
inline |
Definition at line 333 of file G4XTankOpBoundaryProcess.h.
G4VParticleChange * G4XTankOpBoundaryProcess::PostStepDoIt | ( | const G4Track & | aTrack, |
const G4Step & | aStep | ||
) |
Definition at line 121 of file G4XTankOpBoundaryProcess.cc.
References DielectricDielectric(), DielectricMetal(), DoAbsorption(), DoReflection(), G4BooleanRand(), kCarTolerance, G4XTankSimulatorAG::LambertianReflection, Material1, Material2, NewMomentum, NewPolarization, OldMomentum, OldPolarization, OpticalSurface, prob_bs, prob_sl, prob_ss, Rindex1, Rindex2, theEfficiency, theFinish, theGlobalNormal, theModel, thePhotonMomentum, theReflectivity, theStatus, and G4XTankSimulatorAG::Undefined.
|
inline |
Definition at line 352 of file G4XTankOpBoundaryProcess.h.
References theModel.
Referenced by G4XTankSimulatorAG::G4XTankPhysicsList::ConstructOp(), and G4XTankSimulatorAG::G4XTankPhysicsListCustomization::ConstructProcess().
|
private |
Definition at line 199 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric().
|
private |
Definition at line 199 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric().
|
private |
Definition at line 210 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), and PostStepDoIt().
|
private |
Definition at line 191 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), and PostStepDoIt().
|
private |
Definition at line 192 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), and PostStepDoIt().
|
private |
Definition at line 185 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DielectricMetal(), DoAbsorption(), DoReflection(), and PostStepDoIt().
|
private |
Definition at line 186 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DielectricMetal(), DoAbsorption(), DoReflection(), and PostStepDoIt().
|
private |
Definition at line 182 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DielectricMetal(), DoAbsorption(), DoReflection(), and PostStepDoIt().
|
private |
Definition at line 183 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DielectricMetal(), DoAbsorption(), DoReflection(), and PostStepDoIt().
|
private |
Definition at line 194 of file G4XTankOpBoundaryProcess.h.
Referenced by GetFacetNormal(), and PostStepDoIt().
|
private |
Definition at line 209 of file G4XTankOpBoundaryProcess.h.
Referenced by ChooseReflection(), and PostStepDoIt().
|
private |
Definition at line 209 of file G4XTankOpBoundaryProcess.h.
Referenced by ChooseReflection(), and PostStepDoIt().
|
private |
Definition at line 209 of file G4XTankOpBoundaryProcess.h.
Referenced by ChooseReflection(), and PostStepDoIt().
|
private |
Definition at line 196 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), and PostStepDoIt().
|
private |
Definition at line 197 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), and PostStepDoIt().
|
private |
Definition at line 199 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric().
|
private |
Definition at line 199 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric().
|
private |
Definition at line 208 of file G4XTankOpBoundaryProcess.h.
Referenced by DoAbsorption(), and PostStepDoIt().
|
private |
Definition at line 189 of file G4XTankOpBoundaryProcess.h.
Referenced by ChooseReflection(), DielectricDielectric(), and DoReflection().
|
private |
Definition at line 205 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DoReflection(), G4XTankOpBoundaryProcess(), and PostStepDoIt().
|
private |
Definition at line 188 of file G4XTankOpBoundaryProcess.h.
Referenced by ChooseReflection(), DielectricDielectric(), DielectricMetal(), DoReflection(), and PostStepDoIt().
|
private |
Definition at line 203 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), G4XTankOpBoundaryProcess(), GetFacetNormal(), GetModel(), PostStepDoIt(), and SetModel().
|
private |
Definition at line 180 of file G4XTankOpBoundaryProcess.h.
Referenced by DoAbsorption(), and PostStepDoIt().
|
private |
Definition at line 207 of file G4XTankOpBoundaryProcess.h.
Referenced by DielectricDielectric(), DielectricMetal(), and PostStepDoIt().
|
private |
Definition at line 201 of file G4XTankOpBoundaryProcess.h.
Referenced by ChooseReflection(), DielectricDielectric(), DoAbsorption(), DoReflection(), G4XTankOpBoundaryProcess(), GetStatus(), and PostStepDoIt().