Am Dienstag, 19. Juni 2007 20:38 schrieb Matt Newville: > Hi Jörg, > > On Tuesday 19 June 2007, Jörg Haug wrote: > > Dear all, > > > > I have a question regarding the weighting for a multiple data set > > fitting. I found that there is the parameter Epsilon to do this in > > Artemis. But in the help file there is no description how to use this > > parameter. Which value did I have to use to set the weighting to (for > > example) double or half? Best regards > > It's a little bit convoluted -- probably more so than it should be -- > to modify the weightings for different data sets in a fit using > multiple data sets. It's also poorly documented. It is discussed in > some detail in the older Feffit documentation that's on the Ifeffit > web site. > > The approach is to specify epsilon_r or epsilon_k for each data set. > The two values are related and specifying either one is sufficient for > the feffit() command to calculate the appropriate one. For fits in R > space, epsilon_r is used as the weighting factor: For a single data > set, the quantity minimized in the best fit is > chi_square = (1 / N ) Sum_i=1^N { [Data_i - Fit_i]^2 / epsilon_r^2 > } > > where the sum is over N R-space points. The data spacing for chi(R) > is set by the Fourier transform range and k-grid, so that points in R > space are ~0.03Ang apart. Since we really ought to be careful about > how much information is in our data, the sum might be better (though > less stable) if the spacing were given by the spectral resolution (see > other recent discussions!) of pi/(2*Delta k), which would make the sum > go to N_idp instead of N. > > We take that into account, and also assume that there is no R > dependence of epsilon_r, so that chi_square becomes > chi_square = N_idp / (N epsilon_r^2) Sum_i=1^N [ Data_i - Fit_i]^2 > > for one data set. For multiple data sets, there's an outer sum, so > the weighting factors applied > actually take N_idp and N (for each data set!) into account. For a > fit with M data sets, > chi_square = SUM_j=1^M { N_idp_j /(N_j epsilon_r_j^2) > Sum_i=1^N_j [ Data_ij - Fit_ij]^2 } > > > The upshot is that if you want "equal weighting" to spectra with > different k- and R-ranges and/or different noise levels, you might > have to be a little careful in how you set epsilon_r (or, equivalently > epsilon_k) for each data set. For the simplest case of the > different data sets having equal k- and R- ranges, you can just double > an epsilon_k for a particular data set to mean "accept a fit that's > twice as bad for this data set". > > Cheers, > > --Matt
Thanks Matt and Bruce for the answers. I will try to play with this parameter now a little bit. -- Dr. Jörg Haug Martin-Luther-Universität Halle-Wittenberg Institut für Physik Anorganisch-Nichtmetallische Materialien Friedemann-Bach-Platz 6 D-06108 Halle Telefon: 0345 55 25 529 Fax: 0345 55 27 159 e-mail: [EMAIL PROTECTED] http://www.physik.uni-halle.de/Fachgruppen/Glas/arbeitsgruppen/anw.htm _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit