|
Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
|
G4LogicalCrystalVolume is a specialised logical volume for the description of crystals. The object can be created only with an extended material with a crystal extension. The class handles the orientation of the crystal axes wrt the solid to which the crystal is attached. More...
#include <G4LogicalCrystalVolume.hh>
Static Public Member Functions | |
| static G4bool | IsLattice (G4LogicalVolume *aLV) |
| Static Public Member Functions inherited from G4LogicalVolume | |
| static const G4LVManager & | GetSubInstanceManager () |
| static void | Clean () |
| static G4VSolid * | GetSolid (G4LVData &instLVdata) |
| static void | SetSolid (G4LVData &instLVdata, G4VSolid *pSolid) |
G4LogicalCrystalVolume is a specialised logical volume for the description of crystals. The object can be created only with an extended material with a crystal extension. The class handles the orientation of the crystal axes wrt the solid to which the crystal is attached.
Definition at line 53 of file G4LogicalCrystalVolume.hh.
| G4LogicalCrystalVolume::G4LogicalCrystalVolume | ( | G4VSolid * | pSolid, |
| G4ExtendedMaterial * | pMaterial, | ||
| const G4String & | name, | ||
| G4FieldManager * | pFieldMgr = nullptr, | ||
| G4VSensitiveDetector * | pSDetector = nullptr, | ||
| G4UserLimits * | pULimits = nullptr, | ||
| G4bool | optimise = true, | ||
| G4int | h = 0, | ||
| G4int | k = 0, | ||
| G4int | l = 0, | ||
| G4double | rot = 0.0 ) |
Constructor for G4LogicalCrystalVolume.
| [in] | pSolid | Pointer to the associated solid primitive. |
| [in] | pMaterial | Pointer to the associated extended crystal material. |
| [in] | name | The volume name. |
| [in] | pFieldMgr | Pointer to optional magnetic field manager. |
| [in] | pSDetector | Pointer to optional associated sensitive detector. |
| [in] | pULimits | Pointer to optional user limits. |
| [in] | optimise | Flag to enable/disable optimisation structure. |
| [in] | h | Miller orientation parameter h. |
| [in] | k | Miller orientation parameter k. |
| [in] | l | Miller orientation parameter l. |
| [in] | rot | Miller rotation parameter. |
Definition at line 40 of file G4LogicalCrystalVolume.cc.
|
override |
Destructor.
Definition at line 54 of file G4LogicalCrystalVolume.cc.
| const G4ThreeVector & G4LogicalCrystalVolume::GetBasis | ( | G4int | i | ) | const |
Calls through to get crystal basis vectors.
Definition at line 78 of file G4LogicalCrystalVolume.cc.
Referenced by SetMillerOrientation().
| const G4CrystalExtension * G4LogicalCrystalVolume::GetCrystal | ( | ) | const |
Returns a pointer to the crystal extension object.
Definition at line 69 of file G4LogicalCrystalVolume.cc.
Referenced by GetBasis().
|
inlineoverridevirtual |
Returns true as it is not a base-class object.
Reimplemented from G4LogicalVolume.
Definition at line 91 of file G4LogicalCrystalVolume.hh.
|
static |
Returns true if the logical volume 'aLV' is a lattice.
Definition at line 62 of file G4LogicalCrystalVolume.cc.
Referenced by G4Channeling::GetMeanFreePath(), and G4Channeling::PostStepDoIt().
| const G4ThreeVector & G4LogicalCrystalVolume::RotateToLattice | ( | G4ThreeVector & | dir | ) | const |
Methods to rotate input vector between lattice and solid orientations.
Definition at line 122 of file G4LogicalCrystalVolume.cc.
| const G4ThreeVector & G4LogicalCrystalVolume::RotateToSolid | ( | G4ThreeVector & | dir | ) | const |
Definition at line 128 of file G4LogicalCrystalVolume.cc.
Referenced by G4Channeling::PostStepDoIt().
Sets the physical lattice orientation, relative to G4VSolid coordinates. Miller orientation aligns lattice normal (hkl) with geometry +Z.
Definition at line 85 of file G4LogicalCrystalVolume.cc.
Referenced by G4LogicalCrystalVolume().
|
inline |
Setter for verbosity level.
Definition at line 119 of file G4LogicalCrystalVolume.hh.