The code uses a constructive algorithm with several path importance filters to explore all significant multiple-scattering paths in order of increasing path length. The paths are determined from the list of atomic coordinates in 'feff.inp'. An efficient degeneracy checker is used to identify equivalent paths (based on similar geometry, path reversal symmetry, and space inversion symmetry). To avoid roundoff errors, the degeneracy checker is conservative and occasionally treats two degenerate paths as not degenerate. These errors occur in the third or fourth decimal place (less than 0.001 Ang) but are fail safe; that is, no paths will be lost. Of course, all paths which are completely inside the FMS cluster are automatically excluded from paths list.
The criteria used in filtering are based on increasingly accurate estimates of each path's amplitude. The earliest filters, the pathfinder heap and keep filters, are applied as the paths are being searched for. A plane wave filter based on the plane wave approximation (plus a curved wave correction for multiple-scattering paths) and accurate to about 30% is applied after the paths have been enumerated and sorted. Finally, an accurate curved wave filter is applied to all remaining paths.NOGEOM (Useful)
When this card is present, the file 'geom.dat' will not be produced. This option is useful to take advantage of the symmetry in a cluster to speed the path calculation by using the 'geom.dat' file produced by the auxiliary code ATOMS rather than letting FEFF produce 'geom.dat' from the atom list in 'feff.inp'. CAUTION: DO NOT use this option with the POLARIZATION card, since you would have to redo 'geom.dat' yourself for every polarization direction and you cannot use ATOMS to do that.
PCRITERIA keep-criterion heap-criterion (Advanced)
These criteria, like those described in the CRITERIA card, also limit the number of paths. However, they are applied in the pathfinder and eliminate unimportant paths while the pathfinder is doing its search. The pathfinder criteria (pcrit's) do not know the degeneracy of a path and are therefore much less reliable than the curved wave and plane wave criteria in the CRITERIA card above. These path finder criteria (keep and heap) are turned off by default, and we recommend that they be used only with very large runs, and then with caution.
The keep-criterion looks at the amplitude of chi (in the plane wave approx) for the current path and compares it to a single scattering path of the same effective length. To set this value, consider the maximum degeneracy you expect and divide your plane wave criterion by this number. For example, in fcc Cu, typical degeneracies are 196 for paths with large r, and the minimum degeneracy is 6. So a keep criterion of 0.08% is appropriate for a pw criteria of 2.5%.
The heap-criterion filters paths as the pathfinder puts all paths into a heap (a partially ordered data structure), then removes them in order of increasing total path length. Each path that is removed from the heap is modified and then considered again as part of the search algorithm. The heap filter is used to decide if a path has enough amplitude in it to be worth further consideration. If we can eliminate a path at this point, entire trees of derivative paths can be neglected, leading to enormous time savings. This test does not come into play until paths with at least 4 legs are being considered, so single scattering and triangular (2 and 3 legged) paths will always pass this test. Because only a small part of a path is used for this criterion, it is difficult to predict what appropriate values will be. To use this (it is only necessary if your heap is filling up, and if limiting rpath doesn't help), study the results in 'crit.dat' from runs with shorter rpath and experiment with the heap criterion accordingly. In the future, we hope to improve this filter.
Before using these criteria, study the output in the file 'crit.dat' (use print option 1 for paths, see Table 2.1), which has the values of critpw, keep factor and heap factor for all paths which pass the critpw filter.
Default: If this card is omitted, the keep and heap criteria are set to zero, that is, no filtering will be done at this step in the calculation.
* fcc Cu had degeneracies from 6 to 196, so correct for this by * dividing pw-crit of 2.5% by 30 to get 0.08 for keep crit. Check this * empirically by running with pcrits turned off and studying crit.dat. * After studying crit.dat, choose 0.5 for heap crit. PCRITERIA 0.08 0.5
RPATH rpath (Useful)
* include MS paths with effective length up to 5.10 Ang RPATH 5.10
SS index ipot deg rss (Advanced)
The SS card can only be used with OVERLAP cards when the atomic structure is unknown but one does know the distance and coordination numbers and wants to generate an approximate EXAFS contribution. Thus the pathfinder cannot be used in this case. Instead the user has to specify explicitly the single scattering paths and their degeneracy. OVERLAP cards must be used to construct the potentials for the use with SS card. The parameters are a shell index, which is a label used for 'feffNNNN.dat' file name, a unique potential index ipot identifying the unique potential of the scattering atom, the degeneracy (or multiplicity) of the single scattering path, and the distance to central atom rss.
* index ipot deg rss generate single scattering results SS 29 1 48 5.98 parameters for 19th shell of Cu