[Ifeffit] Linux command line ff2chi yields no output

Matt Newville newville at cars.uchicago.edu
Tue May 10 09:10:21 CDT 2011

Hi Francisco,

Your script, or (to simplify for the discussion)

    path(1, file=feff0001.dat, s02 = 0.9, sigma2 = 0.002)
    path(2, file=feff0002.dat, s02 = 0.9, sigma2 = 0.002)
    path(3, file=feff0003.dat, s02 = 0.9, sigma2 = 0.002)

    ff2chi(1-3, group=mycalc)
    fftf(mycalc.chi, kmin=1, kmax=15, dk=0.5, kweight=2.0, kwindow='hanning')

will generate arrays of data for mycalc.k, mycalc.chi.  The fftf()
command will then generate arrays mycalc.r, mycalc.chir_mag,
mycalc.chir_re, and so on for the Fourier transform.

I think you're expecting the ifeffit ff2chi() command to write out a
file, as Feff's ff2chi module does.  IFeffit is meant to be a bit more
flexible than that, so you'd have to explicitly write out the file
yourself.  The benefit of this is that you can sum components from
different Feff calculations, could write out k-weighted chi(k), or
even components of chi(R) as easily as you can write out chi(k).
Adding something like

   write_data(file=my_chik.dat, mycalc.k, mycalc.chi)
   write_data(file=my_chir.dat, mycalc.r, mycalc.chir_mag, mycalc.chir_re)

to your script would do this.

Or, as you also say, you can use Feff's ff2chi module.

Hope that helps,


More information about the Ifeffit mailing list