Пример #1
0
from core.lattice import Lattice

Ca227 = Lattice([7.21, 10.1, 7.39, 90, 90, 90], 'C m c m')

n = [1, 1, 1]

r = [0.25, 0.25, 0.25]
q = [1, 9, 0]
E = 10872
azir = [1, 0, 0]
MS = [0, 0, 1]

Fats = Ca227.genTensor(r, q)
print(Fats)

Ca227.diffraction(E, [1, 0], n, azir)
Ca227.diffract.aziScan(Fats, q)

# * Make sure call to genOp is minimized, keep operators in mem.
# * Generalise rotTensor for hexagonal, monoclinic and triclinic -
# * this requires transforming to an orthogonal basis first
# * Restructure OO?
Пример #2
0
from core.lattice import Lattice
# ---- Ca2RuO4 REXS ----- #

# create lattice and symmetry
Ca214 = Lattice([5.38,5.630,11.722],'P b c a')

r    = [0,0,0]
q    = [0,1,3]
MS   = [0,1,0]

# generate ATS and magnetic tensors
Fats = Ca214.genTensor(r,q)
Fm   = Ca214.xrmsTensor(MS)
print(Fats," ",Fm)

# setup diffraction experiment
n    = [0,0,1] # crystal surface
E    = 2967    # energy
pol  = [1,0]   # incident polarisation
azir = [0,1,0] # azimuthal reference

Ca214.diffraction(E,pol,n,azir)

# simulate azimuthal scan
Ca214.diffract.aziScan(Fats+0.5*Fm,q)
Пример #3
0
from core.lattice import Lattice
# ---- Pyrite ATS tensor ----- #

FeS2 = Lattice([5.417],'P a -3')

r = [0,0,0]
q = [0,1,1]
Fats = FeS2.genTensor(r,q)

print(Fats)