EXAFSPAK – a program suite for analysis of X-ray absorption spectroscopic data. Graham N. George Graham N. George EXAFSPAK – a portable, easy to use analysis code. • • • • • First written in Fortran and VAX Macro-11 assembler between 1983 and 1986 to run on a VAX VMS system. Modern code consists of a mixture of ANSI Fortran and C. Simple terminal-based user interface. Incorporated several “modern” ideas – device independent graphics (virtual address space). Modern version of code uses X Windows graphics. Designed to be quick – when interface was first designed we counted keystrokes… Graham N. George EXAFSPAK Portability Operating Systems: • • • • • • • • • Windows Mac OS-X Linux Irix Solaris Ultrix HPUX Tru-64 Unix And others… Graham N. George EXAFSPAK Internals • EXAFSPAK contains little or no third party code (Many modern programs use code “borrowed” from others.). • EXAFS refinement routines use analytical derivatives (not numerical ones). • Makes refinement robust (usually). Graham N. George EXAFSPAK Curve-fitting • Stable refinement – can refine minor EXAFS components Nickel(II) oxide (NiO) – first-shell k-space EXAFS refinement in presence of intense outer-shell EXAFS. Graham N. George EXAFSPAK programs MLIST – list information on raw data files. MVIEW – viewing raw data. MCALIB – energy calibration. MAVE – average data. PROCESS – data reduction. OPT – curve-fitting analysis. Feff interface – single scattering and multiple scattering. DATFIT – least-squares fitting near-edge (and other) data EDG_FIT – pseudo Voigt deconvolution of near-edge spectra. PCA – principal component analysis. TARGET – target tranformation. MULDAT – generalized plotting (figures etc.) Plus a number of other more minor programs (e.g. MDEAD) for more specialized needs. Graham N. George MLIST • • Flexible command line interface. Header search functions supported. >mlist /array DHOASE-K101A_014.001 DHOASE-K101A_014.001 Hamster DHOase K101A variant. 8.5K ---------------------------------------Label Index Array ---------------------------------------rtc 1 Requested Energy 2 Achieved Energy 3 I 0 - 2 4 - 6 LYTLE 7 8 9 FF 1 - 30 10 - 39 ICR 1 - 30 40 - 69 ---------------------------------------> Graham N. George MVIEW >mview/num=10-39/den=4 DHOASE-K101A_014.001 Graham N. George MVIEW >mview/num=10-39/den=4 DHOASE-K101A_014.001 Graham N. George MVIEW >mview /help Usage: mview FILES [OPTIONS] Options: /abscissa=<arg> /colours=<arg> /cursors /denominator=<arg> /device=<arg> /dumb /help /highlight /logfile[=<arg>] /noline /normalize /numerator=<arg> /points[=<arg>] /recover[=<arg>] /route=<arg> /sumdata /takelog /write[=<arg>] /xmaximum=<arg> /xminimum=<arg> /xwindows=<arg> /ymaximum=<arg> /yminimum=<arg> Options can be denoted by "-option" or "/option" > Graham N. George MCALIB >mcalib/elem=zn/edge=k/out=dho.cal DHOASE-K101A_014.001 Graham N. George MAVE >mave/mcalib=dho.cal/out=dho.ave Generates averaged data file – .ave file Options : • Removal and weighting of individual array positions. • detector dead-time correction. • independent calibration of individual scans. Graham N. George PROCESS Main data reduction program. Graham N. George OPT – EXAFS curve-fitting. Graham N. George Helpful features – Keystroke files… >process/log=firstsession.log dhoase-k101a.ave … records every keystroke and mouse action in the specified log file. >process/rec=firstsession.log dhoase-ds2a.ave … replays every keystroke and mouse action in the specified log file using a different input file (useful for performing identical analysis on lots of data). Scripts are available to work up large numbers of files. Graham N. George