[Ifeffit] Debye-Waller factors for metal oxides ?

Scott Calvin SCalvin at slc.edu
Wed Feb 9 09:45:42 CST 2005


Hi all,

Theanne Schiros and I are running into a fitting issue that I don't 
quite know how to solve, other than to suggest a new Ifeffit feature. 
:)

The system we are working with is a CuInSe2 photovoltaic. Our model 
allows for the possibility of vacancies as well as site disorder 
(e.g. a copper sitting in a nominally selenium site). Combined with 
the known stoichiometry of the samples (generally somewhat Se rich 
compared to the nominal formula), that gives us a whole network of 
constraints. In other words, there are 12 parameters describing the 
disorder: the amounts of copper, indium, selenium, and vacancies in 
each of the three kinds of site. But many of those can be "def'd" in 
terms of the others, since we know there are twice as many selenium 
sites as copper or indium, and we know the stoichiometry.

The resulting fits work pretty well. They generate results which are 
statistically superior to fits with no disorder, and yield values for 
the various kinds of disorder which are comparable to those predicted 
theoretically.

So here's the problem: a couple of the "def'd" values come out 
somewhat negative. I'm not surprised this happens; my sense is that 
the negative values are comparable to the uncertainties (Theanne has 
the exact data; I'm mainly kibbitzing), so it's not a crisis for the 
overall fit. But of course I'd like to force the fit not to allow 
those negative occupancy numbers.

I can't think how to do that, though. We can't just put an abs() 
around the def'd values, because that means our constraints based on 
stoichiometry and the relative number of sites are being applied 
incorrectly. A restraint doesn't really seem appropriate either.

Does anyone have an idea of how to deal with this?

If no one does, perhaps there should be an ifeffit option for a "hard 
restraint." This would be something like the max and min functions, 
except that it would operate by putting a huge penalty to the 
chi-square when outside the range. Just to be clear, it would work 
something like this: y has been def'd to x + z. Then y is also given 
a hard restraint that it cannot be less than 0. The fit would then 
generate a positive value of y that was not less than 0 by varying x 
and z in such a way that it is still true that y = x + z.

Is this a feature that would be useful to other people? Am I missing 
a way to implement this using the current software? Would this create 
big problems for, e.g., Ifeffit's ability to calculate uncertainties 
and correlations?

Thanks for any thoughts you all have on these issues!

--Scott Calvin
Sarah Lawrence College
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://millenia.cars.aps.anl.gov/pipermail/ifeffit/attachments/20050209/08235370/attachment.html>


More information about the Ifeffit mailing list