I think this echos Scott's and Anatoly's answer, and some of this may be obvious, but I'll take a stab at this. Each absorption of an x-ray is a completely independent event from other absorption events. The excited state lasts for something like 1 femtosecond. We never get more than 10^15 photons/sec, so if the x-ray beam was continuous, we'd never have more than one excited state in the sample at any one time. Even with a very bright and pulsed source (and synchrotrons are pulsed, of course), we can safely assume that having two excited atoms of interest (that is, other atoms can absorb too) at any one time is very rare. When this does happen, the excited atoms will be randomly distributed in the sample, and so very far from each other. (There is very interesting work on doubly-excited atoms, but as far as I know they're still using x-ray + laser, not two x-rays, and I'm getting off topic). The point is that we can very safely assume that EXAFS is a sum over independent absorption events, each happening without any other excited atoms nearby. Since all atoms with atomic number Z have an equal absorption probability and since the full spectra is made up from billions of absorption events (yeah, it's sometimes less), all atoms of number Z are well sampled. The total EXAFS really is then just a sum over the absorbing atoms: chi = Sum_absorbing_atoms[Sum_paths(chi_absorber_path)] If all the absorbing atoms look the same (eg, fcc metal, or the A or B site in a perovskite structure), the first sum is trivial. If there are multiple sites that the central atom can occupy, you just do the weighted sum of sites, where the weights are the occupation probabilities for that site. In a glass with a range of absorbing atom "sites", you could turn the sum into an integral or use a histogram, but it's usually a pretty simple sum. Of course, each site would have its own set of scattering paths (ie, it's own Feff calculation), and each path with that absorbing atom needs the weighting appropriate for that absorber. Now, Feff/Feffit/Ifeffit/Artemis/Diana/SixPack (my goodness, that's getting long!) does only the sum over paths: chi = Sum_paths(chi_absorber_path) To handle a system with multiple absorbing sites, you then need to multiply each path amplitude by the fractional probability of the corresponding central atom: chi = Sum_paths ( weight_absorber * chi_absorber_path) where the weights are fractional, so that Sum (weight_absorber) = 1 For example, if you have 2 different sites, one that's twice as common as the other (say, Fe3O4), you'd have a bunch of path statements like # set of paths for Absorber A: probability = 2x Path 101 Asite/feff0001.dat Amp 101 (2/3) * S02 Path 102 Asite/feff0002.dat Amp 102 (2/3) * S02 Path 103 Asite/feff0003.dat Amp 103 (2/3) * S02 # set of paths for Absorber B: probability = 1x Path 201 Bsite/feff0001.dat Amp 201 (1/3) * S02 Path 202 Bsite/feff0002.dat Amp 202 (1/3) * S02 I think that's exactly what Scott and Anatoly are getting at. Hope that helps, --Matt