[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: FEFF Output File Headers
Note: This posting is from Alex Ankudinov; it was refused by the listserv
due to an address error and I am reposting it. J. Rehr
---------------------------------------------------------------
Hi All,
Thank you for your comments on the output file structure and modularity.
I also don't see anything wrong with old Steve Zabinsky format for output
format. Matt suggested to use uniform convention and to start any comment
line in ALL feff output files with #. We decided to put '# ' symbols into
xmu.dat file so one doesn't have to 'gnufix xmu.dat' all the time. We do
not usually plot columns in 'feffNNNN.dat' or 'chiNNNN.dat', but simply pass
those to various EXAFS fitting software. Thus, so as not to break compatibility
of feff.dat output with EXAFS programs, we decided not to add # key there.
In the soon to be released FEFF8.2 code (the present experimental version
of this code is FEFF8x28) I tried to clean up the I/O structure. Thus all
output *.bin files are not really binary, but are in a packed Ascii Data
(PAD) format, as suggested by Matt Newville, who also provided the routines
to read and write such files. The main advantage is that one can transfer
these output files across platforms without significant loss of accuracy.
The files that are meant to be viewed are all ASCII.
The FEFF8.2 code now can be made into a monolithic code as before, or
separated into 8 independent modules. The modules can be used either as
subroutines or programs. For example the main code looks roughly like this:
program feff
integer iabs, nabs
call rdinp(nabs)
call ffmod1
call ffmod7
call ffmod2
do 900 iabs = 1, nabs
if (nabs.gt.1) call ffsort (iabs)
call ffmod3
call ffmod4
call ffmod5
call ffmod6 (iabs)
900 continue
stop
end
Each module reads some *.bin files and a module.inp file. All iformation
from ASCII files necessary for execution of each module is read by a single
routine. We plan to make all those routines freely available, so that
an experienced developer can read information from these files.
Also I am making preliminary announcement that I have now CVS committed
feff8.20x9. There are probably only 20 lines different from the previous
version. I implemented Bruce Ravel's suggestions for Makefiles, fixed
a few minor bugs, including that reported by Scott Calvin, and changed
header lines to those suggested in the recent posting John Rehr.
Thus for example, the column labels of the xmu.dat file are more simply
# omega e k mu mu0 chi @#
i.e., the x-ray energy is omega, and the photoelectron energy is e.
Please let us know if you would prefer an alternative.
A draft version of the FEFF8.2 document will be available shortly. It still
remains to change the license wording in various subroutines, and in the
document, update the WWW pages, and make other checks. Barring other
suggestions for changes, the code will be ready for distribution.
Best wishes
Alex Ankudinov