12.08.2013 Views

software to fit optical spectra - Quantum Materials Group

software to fit optical spectra - Quantum Materials Group

software to fit optical spectra - Quantum Materials Group

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Guess initial<br />

parameters<br />

p , , p<br />

1 K<br />

START<br />

M<br />

FINISH<br />

YES<br />

Take a small<br />

value of λ<br />

(e.g. λ = 0.<br />

001)<br />

Figure 2-1. The block diagram of the Levenberg-Marquardt technique, used by RefFIT.<br />

NO<br />

S<strong>to</strong>p<br />

criteria<br />

satisfied<br />

?<br />

λ → 0.<br />

1λ<br />

Compute gradient<br />

β k , Hessian α kl<br />

2 2<br />

and χ = χ<br />

YES 2<br />

χ new<br />

2<br />

< χ cur<br />

?<br />

NO<br />

The minimization process is iterative. One starts with a reasonably small value of λ . At<br />

2 2<br />

every successful iteration ( χ new < χ cur ) it is reduced by a fac<strong>to</strong>r of 10, moving <strong>to</strong>wards the<br />

‘inverse Hessian’ regime. Otherwise it retreats <strong>to</strong> the ‘steepest descent’ regime by being<br />

increased by a fac<strong>to</strong>r of 10. When the so-called s<strong>to</strong>p criteria are satisfied, the <strong>fit</strong>ting process<br />

s<strong>to</strong>ps.<br />

An important issue is the computation of α kl and β k . According <strong>to</strong> Equation 2-2 and<br />

Equation 2-6, we have <strong>to</strong> calculate the first derivatives of the model function f ( x,<br />

p1<br />

K pM<br />

)<br />

with respect <strong>to</strong> parameters. In general, one can do it numerically, which is the only possibility,<br />

if the model function (but not the derivatives) is provided by an external routine. In this case<br />

much care has <strong>to</strong> be taken, as the computational errors could be rather large, especially near the<br />

minimum point. Fortunately, since we are going <strong>to</strong> use the model functions given by explicit<br />

analytical expressions, we can always calculate the derivatives analytically.<br />

The s<strong>to</strong>p criteria are necessary <strong>to</strong> avoid an endless iteration cycle. The most natural<br />

reason <strong>to</strong> s<strong>to</strong>p is when the <strong>fit</strong>ting process converges, or, formally, when the absolute reduction<br />

2<br />

2<br />

of the χ during the last few (e.g., three) iterations does not exceed a certain threshold δχ . It<br />

also makes sense <strong>to</strong> ensure that the <strong>fit</strong>ting process does not take <strong>to</strong>o long by putting certain<br />

limits on the <strong>to</strong>tal number of iterations or (and) the <strong>to</strong>tal <strong>fit</strong>ting time. There could be many more<br />

criteria. For instance, the process must terminate, when an impatient user hits the “STOP”<br />

but<strong>to</strong>n.<br />

It is remarkable, that the LM algorithm, in spite of its simplicity, may easily handle<br />

models that contain a huge number of parameters (of the order of thousands!). The convergence<br />

speed, i.e., the number of iterations, needed <strong>to</strong> reach the minimum, is not significantly<br />

Guide <strong>to</strong> RefFIT Page 11<br />

cur<br />

Solve Equation 2-9<br />

Modify parameters<br />

p → p + δp<br />

k<br />

k<br />

Compute<br />

2 2<br />

χ = χ<br />

new<br />

k<br />

Recall parameters<br />

p → p − δp<br />

k<br />

k<br />

λ → 10λ<br />

k

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!