Monocrystal#

The monocrystal module contains functions for calculating single crystal scattering patterns.

average(occupancy, U11, U22, U33, U23, U13, U12, ux, uy, uz, atms, h_range, k_range, l_range, indices, symop, W, B, R, D, T, weights, nh, nk, nl, nu, nv, nw, Nu, Nv, Nw, source='neutron')[source]#

Average scattering intensity.

Parameters:
occupancy1d array

Unit cell site occupancies.

U11, U22, U33, U23, U13, U121d array

Unit cell anisotropic displacemnt parameters.

ux, uy, uz1d array

Unit cell atom, ion, or isotope positions.

atms1d array

Unit cell atoms, ions, or isotopes.

h_range, k_range, l_range2-tuple or 2-list

Extents of \(h\), \(k\), and \(l\) (min, max) pairs.

indices1d array, int

Array of reciprocal space volume indices.

symop2-tuple or 2-list, int

Symmetry operator identifier and number of operators.

W2d array, 3x3

Reciprocal space projection matrix.

B2d array, 3x3

Reciprocal lattice to Cartesian wavevector transformation matrix.

R2d array, 3x3

Cartesian axis rotation matrix between real and reciprocal space.

D2d array, 3x3

Crystal axis to Cartesian transformation matrix for atomic displacement parameters.

T3d array

Twin transformation matrices. Last two axes are of size 3x3.

weights: 1d array

Twin mass fractions.

nh, nk, nlint

Number of reciprocal space grid points.

nu, nv, nwint

Number of supercell grid points.

Nu, Nv, Nwint

Number of supercell grid points based on reciprocal space resolution.

sourcestr

Radiation source 'neutron', 'x-ray', or 'electron'. Default 'neutron'.

Returns:
I1d array

Average scattering intensity.

displacive(U_r, coeffs, occupancy, ux, uy, uz, atms, h_range, k_range, l_range, indices, symop, W, B, R, T, weights, nh, nk, nl, nu, nv, nw, Nu, Nv, Nw, order, even, centering, source='neutron')[source]#

Displacive diffuse scattering intensity.

Parameters:
U_r1d array

Displacemet parameter.

coeffs1d array, complex

Coefficients for Taylor expansion.

occupancy1d array

Unit cell site occupancies.

ux, uy, uz1d array

Unit cell atom, ion, or isotope positions.

atms1d array

Unit cell atoms, ions, or isotopes.

h_range, k_range, l_range2-tuple or 2-list

Extents of \(h\), \(k\), and \(l\) (min, max) pairs.

indices1d array, int

Array of reciprocal space volume indices.

symop2-tuple or 2-list, int

Symmetry operator identifier and number of operators.

W2d array, 3x3

Reciprocal space projection matrix.

B2d array, 3x3

Reciprocal lattice to Cartesian wavevector transformation matrix.

R2d array, 3x3

Cartesian axis rotation matrix between real and reciprocal space.

D2d array, 3x3

Crystal axis to Cartesian transformation matrix for atomic displacement parameters.

T3d array

Twin transformation matrices. Last two axes are of size 3x3.

weights: 1d array

Twin mass fractions.

nh, nk, nlint

Number of reciprocal space grid points.

nu, nv, nwint

Number of supercell grid points.

Nu, Nv, Nwint

Number of supercell grid points based on reciprocal space resolution.

orderint

Order of the Taylor expansion.

even1d array, int

Indices for the even terms of the Taylor expansion.

centeringint

Reflection centering condition identifier.

sourcestr

Radiation source 'neutron', 'x-ray', or 'electron'. Default 'neutron'.

Returns:
I1d array

Displacive diffuse scattering intensity.

magnetic(Sx, Sy, Sz, occupancy, U11, U22, U33, U23, U13, U12, ux, uy, uz, ions, h_range, k_range, l_range, indices, symop, W, B, R, D, T, weights, nh, nk, nl, nu, nv, nw, Nu, Nv, Nw, g)[source]#

Magnetic scattering intensity.

Parameters:
Sx, Sy, Sz1d array

Magnetic spin vector components.

occupancy1d array

Unit cell site occupancies.

U11, U22, U33, U23, U13, U121d array

Unit cell anisotropic displacemnt parameters.

ux, uy, uz1d array

Unit cell ion positions.

ions1d array

Unit cell ions.

h_range, k_range, l_range2-tuple or 2-list

Extents of \(h\), \(k\), and \(l\) (min, max) pairs.

indices1d array, int

Array of reciprocal space volume indices.

symop2-tuple or 2-list, int

Symmetry operator identifier and number of operators.

W2d array, 3x3

Reciprocal space projection matrix.

B2d array, 3x3

Reciprocal lattice to Cartesian wavevector transformation matrix.

R2d array, 3x3

Cartesian axis rotation matrix between real and reciprocal space.

D2d array, 3x3

Crystal axis to Cartesian transformation matrix for atomic displacement parameters.

T3d array

Twin transformation matrices. Last two axes are of size 3x3.

weights: 1d array

Twin mass fractions.

nh, nk, nlint

Number of reciprocal space grid points.

nu, nv, nwint

Number of supercell grid points.

Nu, Nv, Nwint

Number of supercell grid points based on reciprocal space resolution.

g1d array

Magnetic g-factor.

Returns:
I1d array

Magnetic scattering intensity.

occupational(A_r, occupancy, U11, U22, U33, U23, U13, U12, ux, uy, uz, atms, h_range, k_range, l_range, indices, symop, W, B, R, D, T, weights, nh, nk, nl, nu, nv, nw, Nu, Nv, Nw, source='neutron')[source]#

Occupational diffuse scattering intensity.

Parameters:
A_r1d array

Relative occupancy parameter.

occupancy1d array

Unit cell site occupancies.

U11, U22, U33, U23, U13, U121d array

Unit cell anisotropic displacemnt parameters.

ux, uy, uz1d array

Unit cell atom, ion, or isotope positions.

atms1d array

Unit cell atoms, ions, or isotopes.

h_range, k_range, l_range2-tuple or 2-list

Extents of \(h\), \(k\), and \(l\) (min, max) pairs.

indices1d array, int

Array of reciprocal space volume indices.

symop2-tuple or 2-list, int

Symmetry operator identifier and number of operators.

W2d array, 3x3

Reciprocal space projection matrix.

B2d array, 3x3

Reciprocal lattice to Cartesian wavevector transformation matrix.

R2d array, 3x3

Cartesian axis rotation matrix between real and reciprocal space.

D2d array, 3x3

Crystal axis to Cartesian transformation matrix for atomic displacement parameters.

T3d array

Twin transformation matrices. Last two axes are of size 3x3.

weights: 1d array

Twin mass fractions.

nh, nk, nlint

Number of reciprocal space grid points.

nu, nv, nwint

Number of supercell grid points.

Nu, Nv, Nwint

Number of supercell grid points based on reciprocal space resolution.

sourcestr

Radiation source 'neutron', 'x-ray', or 'electron'. Default 'neutron'.

Returns:
I1d array

Occupational diffuse scattering intensity.