Certain parameter combinations of Gervais oscillators may lead to unphysical optical constants (i.e. negative imaginary part of the dielectric function). Physical meaningful solutions satisfy a sum rule for the damping constants which may be used to steer the fit into the direction of ‘good’ solutions.
The “check sum” (sum of the difference of LO damping and TO damping for all oscillators) can now be obtained as optical function. Use the optical function “my_material (Gervais_condition)” to retrieve the current value of the check sum.
In order to make use of this number in a fit you can proceed like this(this hint will work in CODE only): Generate an integral quantity of type ‘function of int. quant.’ and call it ‘Gervais check sum’. As formula to compute the value use the term “of(1)” (here it is assumed that the check sum is the first optical function). So the integral quantity is the check sum itself.
Now define a penalty shape function for this integral quantity. It should be 0 if the check sum is positive, and get large for large negative values of the check sum. An expression like “abs(y)*step(-y)y)” will do the job (in penalty shape functions for integral quantities the symbol “y” refers to the current value of the integral quantity). This way large negative values of the check sum are severely punished whereas positive values do not contribute to the fit deviation at all.
Finally activate the option “Combine fit deviations of integral quantities and spectra” in the fit options dialog (File/Options/Fit). This lets CODE simultaneously minimize the difference of measured and simulated spectra and the fit deviation of the integral quantities (which is in this case the penalty for an unphysical check sum). Eventually you have to experiment a little bit with the weight of the ‘Gervais check sum’ in the list of integral quantities in order to get a good fit.