68 G4cout <<
"XUnitCell::GetBase(G4int) Base "
69 << i <<
" does not exist" << std::endl;
93 G4cout <<
"XUnitCell::SetBase Base(G4int,G4XLogicalBase) "
94 << i <<
" does not exist" << std::endl;
126 return vAtomVolumeDensity;
132 return std::pow(h/
fSize.x(),2.) + std::pow(k/
fSize.y(),2.) + std::pow(l/
fSize.z(),2.);
138 return std::pow(h*
fSize.x(),2.) + std::pow(k*
fSize.y(),2.) + std::pow(l*
fSize.z(),2.);
144 G4double vReciprocalVectorSquared = 0.0;
154 vTemp[0] = std::pow(vTemp[0] * h,2.) / vVolume;
157 vTemp[1] = std::pow(vTemp[1] * k,2.) / vVolume;
160 vTemp[2] = std::pow(vTemp[2] * l,2.) / vVolume;
164 vTemp[3] *= (2. * h * k);
168 vTemp[4] *= (2. * l * h);
172 vTemp[5] *= (2. * k * l);
174 vReciprocalVectorSquared = (vTemp[0]+vTemp[1]+vTemp[2]) / vVolume;
175 vReciprocalVectorSquared += (vTemp[3]+vTemp[4]+vTemp[5]);
176 vReciprocalVectorSquared /= vVolume;
180 return vReciprocalVectorSquared;
196 double vDirectVectorSquared = 0.0;
198 vDirectVectorSquared += 2. * h * k *
fSize.y() *
200 vDirectVectorSquared += 2. * l * h *
fSize.x() *
202 vDirectVectorSquared += 2. * l * l *
fSize.x() *
204 return vDirectVectorSquared;
G4int GetLatticeNumberOfAtoms()
G4double ComputeDirectVectorSquared(G4int, G4int, G4int)
XLogicalBase * fBase[MAXBASENUMBER]
CLHEP::Hep3Vector G4ThreeVector
void SetSize(G4ThreeVector)
G4double ComputeMillerPerSizeSquared(G4int, G4int, G4int)
G4double ComputeReciprocalVectorSquared(G4int, G4int, G4int)
G4double ComputeMillerOverSizeSquared(G4int, G4int, G4int)
XLogicalAtomicLattice * GetLattice()
G4GLOB_DLL std::ostream G4cout
void AddBase(XLogicalBase *)
G4double ComputeAtomVolumeDensity()
static constexpr double radian
G4double ComputeDirectPeriod(G4int, G4int, G4int)
XLogicalBase * GetBase(G4int)
void SetBase(G4int, XLogicalBase *)
G4double ComputeDirectPeriodSquared(G4int, G4int, G4int)
static constexpr double angstrom
static constexpr double pi
Definition of the XUnitCell class.
void SetAngle(G4ThreeVector)
G4double ComputeReciprocalVector(G4int, G4int, G4int)
G4double ComputeDirectVector(G4int, G4int, G4int)