Next: 7.7 Post-Fitting Tasks Up: 7 Fitting XAFS Data with Previous: 7.5 Estimating the uncertainties in

## 7.6 Goodness of Fit Parameters

In addition to doing the fit, the feffit() command generates a few scalars for the goodness-of-fit statistics. The scalars chi_square, chi_reduced, and r_factor will contain the values of goodness-of-fit parameters , , and , respectively. The estimated uncertainties in the data in k and R space will be stored in epsilon_k, and epsilon_r. Details of these calculations are given in XAFS Analysis with IFEFFIT . In addition, the number of variables in n_varys, the number of fit iterations in &fit_iteration, and the number of independent points in the data in n_idp, which is defined as

Nidp =

where k = kmax-kmin and R = rmax-rmin. This value gives an estimate of the maximum number of parameters that can be determined from the data.

The estimated uncertainties reflect the goodness-of-fit statistics and include the correlations between variables. Of course, the uncertainties are only an estimate, and there are a couple of things you can do to affect these estimates. By far the most important thing you can do is to improve the fit - that's not always that easy.

The goodness-of-fit parameters and, to a very small extent the uncertainties in the fitted parameters, depend on the estimated uncertainty in the data (which can be specified either in k- or R-space). Normally, feffit() automatically estimates these for you from the data itself and you don't have to worry about them. If, on the other hand, you want to worry about or change these values, you can use the chi_noise() command to do this. chi_noise() will estimate the uncertainty in the XAFS data (k) and (R) (epsilon_k and epsilon_r, respectively), based on the assumption that the noise in the data can be approximated from the high-R components of (k). This can be done explicitly simply as

  Iff> chi_noise(chi  = data.chi)

which will calculate epsilon_k and epsilon_r, given the current set of Fourier Transform parameters (you can give these with the usual parameters, of course). If this default calculation for the uncertainty in the data is not good enough for your needs, you can explicitly specify the value of epsilon_k or epsilon_r to use in the feffit() command:
  Iff> feffit(1, chi= data.chi, group = fit, epsilon_k = 0.0008)

This will alter the resulting values for chi_square and chi_reduced, but not r_factor or the uncertainties in the fitted variables.

Next: 7.7 Post-Fitting Tasks Up: 7 Fitting XAFS Data with Previous: 7.5 Estimating the uncertainties in
Matt Newville
2004-02-09