\(\renewcommand\AA{\text{Å}}\)

X-ray scattering factor f0 calculations

periodictable.cromermann

Cromer-Mann formula for calculating x-ray scattering factors.

class periodictable.cromermann.CromerMannFormula(symbol, a, b, c)

Bases: object

Cromer-Mann formula for x-ray scattering factors. Coefficient storage and evaluation.

Class data:

stollimit : float | Å-1
maximum sin(theta)/lambda for which the formula works

Attributes:

symbol : string
symbol of an element
a : [float]
a-coefficients
b : [float]
b-coefficients
c : float
c-coefficient

Create a new instance of CromerMannFormula for specified element.

No return value

atstol(stol)

Calculate x-ray scattering factors at specified sin(theta)/lambda

stol : float or [float] | Å-1
sin(theta)/lambda

Return float or numpy.array.

stollimit = 6
periodictable.cromermann.fxrayatq(symbol, Q, charge=None)

Return x-ray scattering factors of an element at a given Q.

symbol : string
symbol of an element or ion, e.g., “Ca”, “Ca2+”
Q : float or [float] | Å-1
Q value
charge : int
ion charge, overrides any valence suffixes such as “-”, “+”, “3+”.

Return float or numpy array.

periodictable.cromermann.fxrayatstol(symbol, stol, charge=None)

Calculate x-ray scattering factors at specified sin(theta)/lambda

symbol : string
symbol of an element or ion, e.g., “Ca”, “Ca2+”
stol : float or [float] | Å-1
sin(theta)/lambda
charge : int
ion charge, overrides any valence suffixes such as “-”, “+”, “3+”.

Return float or numpy.array.

periodictable.cromermann.getCMformula(symbol)

Obtain Cromer-Mann formula and coefficients for a specified element.

symbol : string
symbol of an element

Return instance of CromerMannFormula.