| změnit na češtinu
Please switch off AdBlock for this webside to display it correctly (there are no ads here).

newAD2 - optical characterization software

Regression method: the balanced Levenberg–Marquardt algorithm

The newAD2 program is designed to process many heterogeneous data sets simultaneously – most commonly ellipsometric and spectrophotometric data from different instruments, possibly along with data of other measured quantities – measured in different spectral ranges, with different numbers of points and of different physical nature. A naive sum of the weighted sums of squares over all data would in such a case favor data sets with a large number of points at the expense of data sets with fewer points, even though both could be equally important for the characterization. For this reason, newAD2 uses a special variant of the Levenberg–Marquardt algorithm (LMA) which solves this problem by balancing the contributions of the individual data sets. This method is referred to as the Balanced Levenberg–Marquardt algorithm. It was published and derived in detail in our paper [12] (see in particular Section 4 and Supplement 1, Section 1).

Partial sums of squares

For each of the \(N\) data sets (identified in newAD2 by the id of the experimental function, see the Modeling page) a partial sum of squares is calculated

$$ S_k(\vec p) = \sum_{j=1}^{N_k} w_{k,j} \left( Q_{k,j}^{\rm theory}(\vec p) - Q_{k,j}^{\rm exp} \right)^2 \text{,} $$

where \(\vec p\) is the vector of sought model parameters, \(N_k\) is the number of points in the \(k\)-th data set, \(Q_{k,j}^{\rm exp}\) is the measured value of the \(j\)-th point of the \(k\)-th data set, \(Q_{k,j}^{\rm theory}(\vec p)\) is the corresponding theoretical value and \(w_{k,j}\) is the weight of the \(j\)-th point, defined as the inverse square of the estimated uncertainty of the measured quantity.

Standard and balanced algorithm

The sums of squares of the individual data sets enter the total sum of squares minimized by the LMA with balancing factors \(f_k\):

$$ S(\vec p) = \sum_{k=1}^{N} f_k S_k(\vec p) \text{.} $$

newAD2 offers two modes, switched by the Sequalization setting (a „S equalization“ checkbox in the graphical interface's Settings window, or the let Sequalization = on / let Sequalization = off command in text mode):

At the minimum \(\vec p_{\min}\), the factors \(f_k\) and the sums \(S_k(\vec p_{\min})\) no longer change, and it can be shown that the solution found by the balanced algorithm corresponds to the stationary point of a different, equivalent merit function of product form:

$$ M(\vec p) = \prod_{k=1}^{N} S_k^{t_k}(\vec p) \text{.} $$

The complete derivation of this equivalence is given in Supplement 1 (Section 1) of paper [12].

Assessing the fit quality – \(\chi\)

The quality of agreement between the theoretical and experimental values for the individual data sets is assessed using the quantity \(\chi_k\), defined in the usual way as

$$ \chi_k(\vec p) = \sqrt{\frac{S_k(\vec p)}{N_k}} \text{.} $$

A value of \(\chi_k\) close to unity means that the differences between the theoretical and experimental values correspond to the estimated measurement uncertainties. In addition to the \(\chi_k\) of the individual data sets, an overall value \(\chi\) is calculated to assess the fit quality of all data sets together. This quantity is defined differently depending on which of the two algorithms above is used – in both cases, however, it is chosen so that it decreases monotonically together with the value of the minimized merit function.

For the standard LMA (Sequalization = off):

$$ \chi(\vec p) = \sqrt{\frac{S(\vec p)}{\sum_{k=1}^N f_k N_k}} \text{.} $$

For the balanced LMA (Sequalization = on):

$$ \chi(\vec p) = \left( \prod_{k=1}^{N} \chi_k^{t_k}(\vec p) \right)^{1/t} \text{,} \qquad t=\sum_{k=1}^N t_k \text{.} $$

If all target values are the same, for example the default \(t_k=1\), the last formula simplifies to the geometric mean of the individual \(\chi_k\):

$$ \chi(\vec p) = \left( \prod_{k=1}^{N} \chi_k(\vec p) \right)^{1/N} \text{.} $$

It is important to realize that the \(\chi\) formula used with S equalization switched off is not, in general, a monotonic function of the merit function \(M(\vec p)\) that is actually being minimized when S equalization is switched on (and vice versa).

Practical usage in newAD2

Overview of the related text-mode commands (for more details see the newAD2 page):