We have endeavored to make FEFF portable to most UNIX machines without any modification. If your machine does not reproduce the test output files 'xmu.dat' and/or 'chi.dat' to high accuracy, some changes may be needed. Please report any problems or warning messages to the authors, as this will help us achieve full portability. If changes are needed, keep in mind the following points:
Floating point calculations must be done to precision 64 bits. Thus the code uses double precision variables throughout, i.e., real*8 for real numbers and complex*16 for complex numbers. If your machine uses 8 bytes for single precision floating point numbers (for example, Crays and some CDC machines), use the compiler option to ignore double precision statements in the code. This option is available (in various forms) on all Cray and CDC machines that we have seen. On the CRAY YMP at Ohio State, the compiler option to ignore double precision in the source code is cf77 -c -Wf"-dp"
On SGI machines a significant increase in speed may be achieved with the following optimization flags f77 -Ofast -LNO:opt=0 feff8.f -o feff8
On many unix systems it may be necessary to increase the memory stack size to allow calculations on larg clusters. For example, for a 200 atom clusters, execute for following command before running FEFF8 if you use CSH or one of its derivatives limit stacksize 170000 or this command if you use the Bourne shell or on of its derivatives: ulimit -s 170000
If you use the GNU g77 compiler, a common compiler on LINUX, BSD, and other systems try: g77 -O2 -ffast-math -m486 -Wall -g -fno-silent Do not use the -pedantic flag, although a casual reading of the g77 document would suggest it is a good idea. -pedantic will not allow the use of double complex.