Hi all, Thanks to all the concerned persons for having such a wonderful discussion over fitting procedure. I am able to understand the things better by going through these discussions. But what I am trying to say is that I had first applied the fitting procedure in which I make the parameters of all paths( included in the fit) to vary simultaneously, but the problem is that I am not able to get a good fit and the parameters for different paths are also coming absurd like very low amplitude etc. For days I have been trying this method of fitting but not able to get good results.I tried different models also like Debye & Einstien model, I used the relation del r= alpha* Reff but it doesn't work. Then I switch to this the method in which we fit the first shell, get the parameters fix them and then go for the next shell and in this way e fix the whole spectra. The results I got are extremely good. Thus I am using this method. Abhijeet Gaur
....and what we are trying to say is that your method is not generally accepted as the best way to model data. Shelly ________________________________ From: ifeffit-bounces@millenia.cars.aps.anl.gov [mailto:ifeffit-bounces@millenia.cars.aps.anl.gov] On Behalf Of abhijeet gaur Sent: Friday, April 17, 2009 2:29 AM To: ifeffit Subject: [Ifeffit] Fitting procedure Hi all, Thanks to all the concerned persons for having such a wonderful discussion over fitting procedure. I am able to understand the things better by going through these discussions. But what I am trying to say is that I had first applied the fitting procedure in which I make the parameters of all paths( included in the fit) to vary simultaneously, but the problem is that I am not able to get a good fit and the parameters for different paths are also coming absurd like very low amplitude etc. For days I have been trying this method of fitting but not able to get good results.I tried different models also like Debye & Einstien model, I used the relation del r= alpha* Reff but it doesn't work. Then I switch to this the method in which we fit the first shell, get the parameters fix them and then go for the next shell and in this way e fix the whole spectra. The results I got are extremely good. Thus I am using this method. Abhijeet Gaur
Shelly wrote:
….and what we are trying to say is that your method is not generally accepted as the best way to model data.
We are? If I understand Abhijeet's approach (first fit the first shell, then fix those parameters, change the R-range to the second shell and fit that), it is exactly what I would recommend. --Matt
Okay. Sure, I agree with Matt. But I don't think that this data can be broken into different shells....otherwise I do not believe that the model would fail when the entire data range is optimized together. There could be two reasons that the model fails. Either there are correlations that were artificially broken by fitting the r-ranges separately or there is some data that is not accounted for in the model. I guess I should only talk for myself. "I do not generally accept your fitting method to be the best". I did say BEST...sometimes best is not an option. Shelly
-----Original Message----- From: ifeffit-bounces@millenia.cars.aps.anl.gov [mailto:ifeffit- bounces@millenia.cars.aps.anl.gov] On Behalf Of Matt Newville Sent: Friday, April 17, 2009 9:23 AM To: XAFS Analysis using Ifeffit Subject: Re: [Ifeffit] Fitting procedure
Shelly wrote:
....and what we are trying to say is that your method is not generally accepted as the best way to model data.
We are?
If I understand Abhijeet's approach (first fit the first shell, then fix those parameters, change the R-range to the second shell and fit that), it is exactly what I would recommend.
--Matt
_______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
Hi, Perhaps I am misunderstanding something here. It sounded like the original problem was that SO2 was too high/low for some shells. It also sounded like the solution was then to fit each shell separately with its own set of parameters; SO2, dr, sigma-squared. I don't think that is what Matt was saying but I think that was what Abhijeet implied. However, I may have completely misunderstood what was being done. If I did understand correctly then I have two concerns. 1. Can you justify having a different SO2 for each shell? I don't know, I am just asking. 2. In any case, it sounds to me like a recipe for ending up with too many free parameters. It seems to me that fitting separate pieces is dangerous. At the very least, at some point the pieces should be put together and the whole thing fit together. I can see this method as being reasonable to get starting values for each shell. However, a good model should work for the total spectrum as well as for individual pieces. If not, I would be be concerned about the model. Cheers, Adam Kelly, Shelly wrote:
Okay. Sure, I agree with Matt. But I don't think that this data can be broken into different shells....otherwise I do not believe that the model would fail when the entire data range is optimized together.
There could be two reasons that the model fails. Either there are correlations that were artificially broken by fitting the r-ranges separately or there is some data that is not accounted for in the model.
I guess I should only talk for myself. "I do not generally accept your fitting method to be the best". I did say BEST...sometimes best is not an option.
Shelly
-----Original Message----- From: ifeffit-bounces@millenia.cars.aps.anl.gov [mailto:ifeffit- bounces@millenia.cars.aps.anl.gov] On Behalf Of Matt Newville Sent: Friday, April 17, 2009 9:23 AM To: XAFS Analysis using Ifeffit Subject: Re: [Ifeffit] Fitting procedure
Shelly wrote:
....and what we are trying to say is that your method is not generally accepted as the best way to model data. We are?
If I understand Abhijeet's approach (first fit the first shell, then fix those parameters, change the R-range to the second shell and fit that), it is exactly what I would recommend.
--Matt
_______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
_______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
Hi Adam, I am confused by this thread too! As you say, the original issue involved using S02 for individual shells of data on Cu foil. Of course, having separate S02 for each shell is not usually necessary to model Cu foil -- in fact I can't think of a case where it is needed. But since S02 is 100% with N, and ~95% correlated with sigma2, it is easy to have S02 vary per shell if one allows it to happen. Whether that's a good idea or not depends on how you interpret the results. Most people choose to fix a single S02 and vary N. Lots of people fit spectra with one S02 and an N for each shell, so I don't think the number of free parameters is necessarily a big issue. In a follow-up message, Scott seemed (to me) to be more concerned about whether it was reasonable to "fix parameters for the first shell" when fitting a second or higher shells, not so much with the issue of what parameters were being refined. There weren't explicit details on what was fixed or what fitting ranges or parameters were used for the higher shells. Scott suggested (I believe) that "fixing the first shell" and fitting the second shell was not a good idea, and asked to hear differing views. I find the approach of "fit the first shell, then fix those parameters and fit the second shell" to be a reasonable way to start, so I responded. I would not call this approach "acceptable, but generally not preferred" -- I would say it has actual merit. Yes, it is often a good idea to check a fit to the whole spectrum toward the end of an analysis. But in a fit to the whole spectrum, the quality of the fit to the more subtle features (the finer structure) can often get lost in the fit to the more dominant features of the spectra. That is why we subtract mu0(E), after all. I don't see Fourier filtering as a bad idea for analyzing higher shells. But perhaps I am just not understanding what Scott and Shelly recommend??? --Matt
Hi all, Well, I'm understanding my own views on this more clearly as the conversation continues, so it's been helpful to me! There are several different issues that have floated through this thread, but let me focus on one aspect. One possible fitting strategy is a shell-by-shell method, in which each shell is fit more or less independently. In this method, the R- range is chosen to try to correspond to a single shell. Because the first shell is often dominant in the spectrum and can "leak" quite significantly into other shells, it is reasonable to fit the first shell, and then use those parameters to constrain the leakage from the first shell while fitting the second shell. I've rarely used that strategy personally, but it seems perfectly reasonable to me, and there are cases where it seems like a very good way to go. There are no problems with free parameters with this method. For instance, if the first shell is fit over the R-range 1.0 to 1.5 angstroms, and the second from 1.5 to 2.0, each with its own parameters, then you're not "cheating" to use the results of the first fit to fix the parameters for the first shell in the second fit, as those parameters came from data you're not currently using. The usual idea that constraints come from prior knowledge is satisfied. On the other hand, I have sometimes seen students in workshops fit the first shell, then extend the R-range so that it includes both shells, fix the first shell parameters to the results from the prior fit, and then do a fit to determine the parameters of the second shell. This is the approach I find troubling. It seems to double count data. To be specific, the first shell fit might be from 1.0 to 1.5 angstroms, and the results would then be used to constrain the first shell in the next fit, which would vary second shell parameters but extend from 1.0 to 2.0. The data from 1.0 to 1.5 has thus been used twice in a manner that would cause me some concern. I am unclear as to which procedure Abhijeet is describing. I initially assumed the second, and Matt initially assumed the first; that was responsible for some of the confusion. --Scott Calvin Sarah Lawrence College On Apr 18, 2009, at 1:57 PM, Matt Newville wrote:
Hi Adam,
I am confused by this thread too!
I find the approach of "fit the first shell, then fix those parameters and fit the second shell" to be a reasonable way to start, so I responded. I would not call this approach "acceptable, but generally not preferred" -- I would say it has actual merit. Yes, it is often a good idea to check a fit to the whole spectrum toward the end of an analysis. But in a fit to the whole spectrum, the quality of the fit to the more subtle features (the finer structure) can often get lost in the fit to the more dominant features of the spectra. That is why we subtract mu0(E), after all. I don't see Fourier filtering as a bad idea for analyzing higher shells.
But perhaps I am just not understanding what Scott and Shelly recommend???
--Matt _______________________________________________ Ifeffit mailing list Ifeffit@millenia.cars.aps.anl.gov http://millenia.cars.aps.anl.gov/mailman/listinfo/ifeffit
participants (5)
-
abhijeet gaur
-
Adam Webb
-
Kelly, Shelly
-
Matt Newville
-
Scott Calvin