LATCON : Refine lattice parameters

Authors: Dieter Schwarzenbach and Geoff King

Contact : Geoff King, Fysica-Chemische Geologie, K.U. Leuven, B-3001 Heverlee, Belgium

LATCON is a rewrite of Dieter Schwarzenbach's program of the same name in the XRAY76 system. It determines the 'best' lattice parameters and their standard deviations from the 2 \(\theta \) diffraction angles of a set of indexed reflections, taking into account any constraints imposed by the crystal system and allowing for systematic errors in the zero values.

Given a set of indexed reflections with their diffraction angles 2 \(\theta \), the program uses the least-squares method to determine the best values of the reciprocal and direct metric tensors and lattice parameters with their estimated standard deviations (esd's) together with the variance-covariance and correlation matrices. The 2 \(\theta \) values may have been obtained by powder or single-crystal measurements. Different schemes are available for allowing for systematic errors.

In principle there are two methods of refining lattice constants by minimizing

R = \(\sum  w (2\theta _{{\rm obs}}- 2\theta _{{\rm calc}})^{2}\)

The first is to express 2 \(\theta \) as a non-linear function of the lattice constants. This leads to a non-linear least-squares procedure which requires starting values and several cycles of refinement. The second, used here, takes advantage of the fact that \(sin^{2}\) \(\theta \) is a linear function of the reciprocal metric tensor giving a linear least-squares problem which can be solved directly without the need for starting values and without iteration. The much more complicated task consists then in computing the esd's of the best lattice constants from those of the reciprocal metric tensor elements.

The following concepts are useful:

Metric tensor ( M ) Reciprocal metric tensor ( M *) Vector ( v *)
\(a^{2}\) a.*b a.*c a* \(^{2}  \) a*.*b* a*.*c* h
a.b \(b^{2}\) b.c a*.b* \(b^{2}\) b*.c* k
a.c b.c \(c^{2}\) a*.c* b*.c* \(c^{2}\) l
     

All symbols containing a "*" refer to reciprocal space. The matrix M * is the inverse of the matrix M. The vector v * \(^{\dagger }  \) is the row vector (h k l), i.e. v * transposed. Therefore,

\(sin^{2}\theta  = (\lambda ^{2}/4) (v*^{\dagger }M* v*)\)

The variance-covariance matrix COV (see e.g. ref. 1) is calculated from the inverse N \(^{-1}  \) of the normal-equation matrix N.

\(COV = eN^{-1}, e = R/(n-k)\)

With R defined above, n = number of observations, k = number of parameters refined, n-k is the number of degrees of freedom and e the variance of an observation with unit weight, so \(\sqrt e\), the error of fit, is the corresponding \(\sigma \). If the weights are the reciprocals of real variances, the expectation value for the error of fit is unity and R should be distributed as \(\chi ^{2}\). The diagonal terms of COV are the variances whose square roots are the standard deviations (esd's), \(\sigma \). The ij th term of the correlation matrix COR is given by

\(COR_{ij}= COV_{ij}/ (\sigma _{i}\sigma _{j})\)

The law of propagation of errors expresses the variance-covariance matrix COVB of derived quantities \(b_{1}\) = function1( \(a_{1}\), \(a_{2}\),...), \(b_{2}\) = function2( \(a_{1}\), \(a_{2}\)...), etc in terms of COVA of \(a_{1}\), \(a_{2}\),... Denoting the derivative of \(b_{k}\) with respect to \(a_{l}\) by \(\partial b_{k}/\partial a_{l}\) and the matrix of derivatives as D, we obtain

\(COVB_{ij}= \sum _{k,l}\partial b_{i}/\partial a_{k}\partial b_{j}/\partial a_{l}COVA_{kl}\)

COVB = D COVA D \(^{\dagger }  \)

The program proceeds by the following steps:

  1. The esd's (i.e. \(\sigma \) 's) of the 2 \(\theta \) values are used to compute the \(\sigma \) 's of \(sin^{2}\theta \)

    i.e. \(Q = 1/d^{2}= 4 sin^{2}\theta / \lambda ^{2}\)

    where d is the interplanar spacing. According to the error propagation law,

    \(\sigma (Q) = (2/\lambda ^{2}) sin2\theta   \sigma (2\theta )\) The weight is 1/ \(\sigma ^{2}\).

  2. With these weights the linear least squares problem is set up, the symmetry constraints are introduced and the tensor M * is determined together with COV and COR. These matrices are complete and include the elements which are determined by the crystal symmetry and which must not be refined. Thus the variances, covariances and correlations of invariant terms are zero. For a dependent term s = k x t we obtain

    variance(s) = \(k^{2}\) variance(t) ; \(\sigma \) (s) = k \(\sigma \) (t)

    covariance(s,t) = k variance(t) ; correlation(s,t) = 1

  3. The reciprocal lattice constants a*, b*, c*, cos \(\alpha \) *, cos \(\beta \) * and cos \(\gamma \) * are determined together with their COV and COR matrices, using the error propagation law. The \(\sigma \) 's of these quantities are again the square roots of the diagonal terms of COR ; the \(\sigma \) of the angles in degrees are derived from those of their cosines.

  4. The matrix of the reciprocal metric tensor M * is inverted to give M, again with the appropriate COV and COR matrices. This requires the evaluation of all 36 derivatives of the matrix elements with respect to the reciprocal matrix elements e.g.

    \(\partial a*b/\partial a*^{2}, \partial b^{2}/\partial c*^{2}\) etc.

  5. The direct lattice constants are obtained as in step 3. If all reflections have been measured with the same wavelength, the COR matrix and therefore the \(\sigma \) 's may be corrected for the uncertainty of the wavelength, σ(lambda;), which is especially interesting in neutron diffraction.- This must not, of course, involve the least-squares weighting. Since the relative error in Q due to an error in the wavelength is

    σ(Q)/Q = 2σ(λ)/λ

    The variances of M * after refinement are increased by \(\sigma \) \(^{2}  \) (Q) x tensor element. The covariances are derived so as to leave the correlation coefficients unchanged.

Systematic Errors

Two mutually exclusive schemes for taking account of systematic errors may be used in the refinement. Both involve refinement of an additional parameter \(D_{k}\).

  1. This scheme is included when the mnemonic rq is used in the LATCON line. It has been shown (2) that errors in the measured d-values ( \(\Delta \) d) caused by absorption and spherical eccentricity of the specimen are approximately proporional to

    \(\Delta \) d = k d \(cos^{2}\) \(\theta \) = - 2 \(D_{k}\) d \(cos^{2}\) \(\theta \)

    where d=1/sin \(\theta \). Thus \(\Delta \) Q is equal to the derivative of Q with respect to d times \(\Delta \) d.

    \(\Delta \) Q = \(D_{k}\) (4/ \(\lambda \) \(^{2}  \) ) \(sin^{2}\) 2 \(\theta \)

    \(D_{k}\) is refined as an additional parameter. The computed Q and 2 \(\theta \) values listed in the output are no longer the TRUE values but they include the correction term. This correction can be used if the position of the primary beam is well-known, i.e. if 2 \(\theta \) has been determined from corresponding reflections at plus and minus 2 \(\theta \) or with respect to an internal standard. Note that many high orders must be included in the refinement since the error approximation is valid for high scattering angles and corresponds to an extrapolation of d to \(cos^{2}\) \(\theta \) zero. Furthermore, the relative error \(\Delta \) Q/Q in Q is proportional to \(cos^{2}\) \(\theta \) which has non-negligable values at quite high angles. Limiting measurements to low orders leads to very high correlations between \(D_{k}\) and the metric tensor elements so that the correction may be meaningless.

  2. Sometimes the position of the primary beam may not be accurately known, as in the case when the diffractometer does not allow measurements at negative 2 \(\theta \) values,. Here we must set

    2 \(\theta \) \(_{true}  \) = 2 \(\theta \) \(_{{\rm obs}}  \) - 2 \(D_{k}\)

    where 2 \(D_{k}\) may be called the true zero value of 2 \(\theta \). The refinement of \(D_{k}\) results in a non-linear least-squares procedure for this parameter and several cycles may be necessary to achieve convergence. Experience shows, however, that convergence is quite fast. The maximum number of cycles must be input after the mnemonic rz but a shift of less than 0.002° halts the refinement. An initial value of 2 \(\theta \) zero may also be given (and will be held constant unless rz refinement is invoked). Linearisation of the expression for Q leads to

    \(\Delta Q = D_{k}(4/\lambda ^{2})  sin2\theta \)

    \(Q_{true}= V*^{\dagger }M* V* + D_{k}(4/\lambda ^{2})  sin2\theta \)

    and \(D_{k}\) is refined as an additional parameter. The true Q and 2 \(\theta \) values are listed in the output. Inclusion of many high-order reflections is desirable but the correlation of \(D_{k}\) with the metric tensor is less severe than in scheme 1 since \(\Delta Q/Q\) is proportional to \(cot\theta \), which decreases faster than \(cos^{2}\theta \) and has large values at low orders.

LATCON should give exactly the same results as a non-linear least-squares procedure. The errors in the variances and covariances derived from the error propagation law, which is due to the series expansion involved, are very small for \(\sigma \) 's of a few percent or less.

LATCON can also use the angle data and the crystal system stored on the archive bdf. The option line skip enables reflections to be omitted. Options also exist for outputting the refined cell dimensions.

File Assignments

  • Writes CELLand CELLSDlines to the line file pch

References

  • D. Schwarzenbach et al. 1989. Statistical Descriptors in Crystallography (Report of the IUCr subcommittee). Acta Cryst., A45, 63-75.

  • L.V. Azaroff and M.J. Buerger. 1958. The Powder Method in X-ray Crystallography (pp. 239-244). McGraw Hill, New York.