In cases where heuristics fail, researchers typically must rely on their existing knowledge of specific materials' spectra, and also use software such as FEFF to predict theoretical spectra from input crystal structures. These known or computational spectra can be used either through direct comparison or through specialized algorithms, such as those in MXAN and Pyfitit . This theoretical mapping of crystal structure to spectra can provide a thorough understanding of the materials under investigation, as long as the material's structure can be identified. However, identifying the structure can be computationally expensive if spectra for multiple geometrical configurations must be computed during the search. The experimental material may also have a structure that is significantly different from anything in the current library or list of structural candidates (the sample could even be amorphous) which would make it difficult to apply these techniques.