q_step module

File contains only class QStep, see below.

Author: Markus Müller | Markus.Mueller3@tu-dresden.de

class DMT.extraction.q_step.QStep(*args, **kwargs)[source]

Bases: XStep

Subclass of XStep. QSteps (Q for Quantity) steps are a special case of XSteps. They do not extract model parameters like XSteps, but bias dependent electrical quantities from measured or simulated data.

A Bias dependent PoA Analysis is an example for a QStep.
Subclasses of this class need to implement set_initial_guess_line and write_back_results in addition to the usual XStep abstract methods.
See the XPoa class for an example of this class.
Parameters:
same as XStep.
Attributes:
same as XStep except:
para_compositions[McParameterCollection]

Holds artificial model parameters for each measured operating point. This allows to use the powerfull XStep infrastructure without changing much. For an PoA Analysis at 10 operating points, there would be 10 McParameterCollections, each with the area and perimeter component that is to be extracted. Numerically this is porbably not the fastest solution, but who cares.

calc_all(xdata, paras_model, jac=True, reinit=False)[source]

Much simpler than for XStep. No DutTcad support and no Jacobian support.

abstract fit(data_model, compositions)[source]

This needs to be implemented for subclasses. | The method shall calculate the corresponding y-data for each line in data_model. | The ModelParameters for each line are to be calculated using the McParameterCollections in compositions. | See XPoa for an implementation example. It is simpler than it sounds…

fit_function(xdata, *args)[source]

Very similar to XStep. Here we need to write args back into the McParameterCompositon in exactly the same way as we have passed them in self.optimize()

optimize()[source]

Slightly changed compared to XStep. Here we fit all parameters for each line, simultaneously. Jacoby currently not implemented.

set_initial_guess(data_reference)[source]

In contrast to XStep set_initial_guess, this method needs to set an initial guess for each line and init the parameter arrays.

abstract set_initial_guess_line(composition, line)[source]

This method need to set an initial guess for parameters in composition for each line.

staticMetaObject = PySide6.QtCore.QMetaObject("QStep" inherits "XStep": )[source]