Geant4  10.03
XUnitCell Class Reference

#include <XUnitCell.hh>

+ Collaboration diagram for XUnitCell:

Public Member Functions

G4ThreeVector GetSize ()
 
G4ThreeVector GetAngle ()
 
XLogicalBaseGetBase (G4int)
 
void SetSize (G4ThreeVector)
 
void SetAngle (G4ThreeVector)
 
void SetBase (G4int, XLogicalBase *)
 
void AddBase (XLogicalBase *)
 
G4double ComputeVolume ()
 
G4double ComputeMillerOverSizeSquared (G4int, G4int, G4int)
 
G4double ComputeMillerPerSizeSquared (G4int, G4int, G4int)
 
G4double ComputeReciprocalVectorSquared (G4int, G4int, G4int)
 
G4double ComputeReciprocalVector (G4int, G4int, G4int)
 
G4double ComputeDirectVectorSquared (G4int, G4int, G4int)
 
G4double ComputeDirectVector (G4int, G4int, G4int)
 
G4double ComputeDirectPeriodSquared (G4int, G4int, G4int)
 
G4double ComputeDirectPeriod (G4int, G4int, G4int)
 
G4double ComputeAtomVolumeDensity ()
 
G4complex ComputeStructureFactor (G4int, G4int, G4int)
 
G4bool IsOrthogonal ()
 
G4bool IsCubic ()
 
 XUnitCell ()
 
 ~XUnitCell ()
 

Private Attributes

G4int fNumberOfBases
 
XLogicalBasefBase [MAXBASENUMBER]
 
G4ThreeVector fSize
 
G4ThreeVector fAngle
 

Detailed Description

Definition at line 46 of file XUnitCell.hh.

Constructor & Destructor Documentation

XUnitCell::XUnitCell ( )

Definition at line 34 of file XUnitCell.cc.

References angstrom, fAngle, fNumberOfBases, fSize, pi, and radian.

XUnitCell::~XUnitCell ( )

Definition at line 46 of file XUnitCell.cc.

Member Function Documentation

void XUnitCell::AddBase ( XLogicalBase base)

Definition at line 100 of file XUnitCell.cc.

References fBase, and fNumberOfBases.

Referenced by ExExChDetectorConstruction::ConstructXtalTarget().

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeAtomVolumeDensity ( )

Definition at line 119 of file XUnitCell.cc.

References ComputeVolume(), fBase, fNumberOfBases, XLogicalBase::GetElement(), XLogicalBase::GetLattice(), XLogicalAtomicLattice::GetLatticeNumberOfAtoms(), and G4Element::GetZ().

Referenced by XCrystalPlanarMoliereElectricField::ComputeECForSinglePlane(), XCrystalPlanarMolierePotential::ComputeECForSinglePlane(), and XCrystalPlanarMoliereTempPotential::ComputeECForSinglePlane().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeDirectPeriod ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 222 of file XUnitCell.cc.

References ComputeDirectPeriodSquared().

Referenced by XCrystalPlanarMoliereElectricField::ComputeECForSinglePlane(), XCrystalPlanarMolierePotential::ComputeECForSinglePlane(), XCrystalPlanarMoliereTempPotential::ComputeECForSinglePlane(), XPhysicalLattice::ComputeInterplanarPeriod(), XCrystalPlanarMolierePotential::ComputeMinimum(), and XCrystalPlanarMoliereTempPotential::ComputeMinimum().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeDirectPeriodSquared ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 216 of file XUnitCell.cc.

References ComputeMillerOverSizeSquared().

Referenced by ComputeDirectPeriod().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeDirectVector ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 210 of file XUnitCell.cc.

References ComputeDirectVectorSquared().

+ Here is the call graph for this function:

G4double XUnitCell::ComputeDirectVectorSquared ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 191 of file XUnitCell.cc.

References ComputeMillerPerSizeSquared(), fAngle, fSize, and IsOrthogonal().

Referenced by ComputeDirectVector().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeMillerOverSizeSquared ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 131 of file XUnitCell.cc.

References fSize.

Referenced by ComputeDirectPeriodSquared(), and ComputeReciprocalVectorSquared().

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeMillerPerSizeSquared ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 137 of file XUnitCell.cc.

References fSize.

Referenced by ComputeDirectVectorSquared().

+ Here is the caller graph for this function:

G4double XUnitCell::ComputeReciprocalVector ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 185 of file XUnitCell.cc.

References ComputeReciprocalVectorSquared().

+ Here is the call graph for this function:

G4double XUnitCell::ComputeReciprocalVectorSquared ( G4int  h,
G4int  k,
G4int  l 
)

Definition at line 143 of file XUnitCell.cc.

References ComputeMillerOverSizeSquared(), ComputeVolume(), fAngle, fSize, IsOrthogonal(), and pi.

Referenced by ComputeReciprocalVector().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4complex XUnitCell::ComputeStructureFactor ( G4int  ,
G4int  ,
G4int   
)
G4double XUnitCell::ComputeVolume ( )

Definition at line 108 of file XUnitCell.cc.

References fAngle, fSize, and IsOrthogonal().

Referenced by ComputeAtomVolumeDensity(), XVCrystalIntegratedDensity::ComputeIntegratedDensity(), and ComputeReciprocalVectorSquared().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ThreeVector XUnitCell::GetAngle ( )

Definition at line 57 of file XUnitCell.cc.

References fAngle.

XLogicalBase * XUnitCell::GetBase ( G4int  i)

Definition at line 63 of file XUnitCell.cc.

References fBase, fNumberOfBases, and G4cout.

Referenced by XVCrystalCharacteristic::ComputeTFScreeningRadius().

+ Here is the caller graph for this function:

G4ThreeVector XUnitCell::GetSize ( )

Definition at line 51 of file XUnitCell.cc.

References fSize.

Referenced by XVCrystalIntegratedDensity::ComputeIntegratedDensity(), XVCrystalCharacteristic::ComputeMaximum(), and XVCrystalCharacteristic::ComputeMinimum().

+ Here is the caller graph for this function:

G4bool XUnitCell::IsCubic ( )

Definition at line 239 of file XUnitCell.cc.

References fSize, and IsOrthogonal().

+ Here is the call graph for this function:

G4bool XUnitCell::IsOrthogonal ( )

Definition at line 229 of file XUnitCell.cc.

References fAngle, and pi.

Referenced by ComputeDirectVectorSquared(), ComputeReciprocalVectorSquared(), ComputeVolume(), and IsCubic().

+ Here is the caller graph for this function:

void XUnitCell::SetAngle ( G4ThreeVector  vAngle)

Definition at line 82 of file XUnitCell.cc.

References fAngle.

void XUnitCell::SetBase ( G4int  i,
XLogicalBase base 
)

Definition at line 88 of file XUnitCell.cc.

References fBase, fNumberOfBases, and G4cout.

void XUnitCell::SetSize ( G4ThreeVector  vSize)

Definition at line 76 of file XUnitCell.cc.

References fSize.

Referenced by ExExChDetectorConstruction::ConstructXtalTarget().

+ Here is the caller graph for this function:

Member Data Documentation

XLogicalBase* XUnitCell::fBase[MAXBASENUMBER]
private

Definition at line 50 of file XUnitCell.hh.

Referenced by AddBase(), ComputeAtomVolumeDensity(), GetBase(), and SetBase().

G4int XUnitCell::fNumberOfBases
private

Definition at line 49 of file XUnitCell.hh.

Referenced by AddBase(), ComputeAtomVolumeDensity(), GetBase(), SetBase(), and XUnitCell().


The documentation for this class was generated from the following files: