x_verify_mmc module

Step to verify the extracted model by simulating and plotting measurement data and simulation data. Also allows global fitting but it is not recommended to fit too many parameters at once.

This XVerify allows multiple modelcards and even no reference data.

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

class DMT.extraction.x_verify_mmc.XVerifyMMC(*args, sweeps: List[Sweep] | None = None, modelcards_other: List[MCard] | None = None, names_other: List[str] | None = None, **kwargs)[source]

Bases: XVerify

XVerify step with mutliple modelcards and optional reference data

Parameters:
sweepSweep, optional
add_data_to_plot(plot_obj, x_col, y_col, area_x=False, area_y=False)[source]

This method adds x and y-axis data from self.data_reference and self.line_model to the plot object “plot_obj”.

Parameters:
plot_objDMT.Plot

This is the plot to which the lines shall be added.

x_colstr or DMT.specifier

This is the key for the x-axis data in self.data_reference and self.data_model.

y_colstr or DMT.specifier

This is the key for the y-axis data in self.data_reference and self.data_model.

area_xBool, False

If True, the x-axis data is normalized to the device area (BJT) or device width (MOS).

area_yBool, False

If True, the y-axis data is normalized to the device area (BJT) or device width (MOS).

omegaBool, False

If True, the y-axis data is normalized to the angular frequency.

fit(data_model, paras_model, dut=None)[source]

cite from XStep docs: | - Return the data_model’s y values for the x-values, if the x-step uses a dut+sweep combination. | In this cases, XStep already carried out dut+sweep simulations with the parameters before calling the function. Promised. | Reason: This allows to use DMT’s multithreading capabilities, speeding up the extraction significantly.

get_description()[source]

Return a tex description of this XStep. Used for generating the documentation. If not implemented, there is no description for this XStep in the documentation.

get_dut(line, paras_model, dut_size=None)[source]

Overwritten from XStep. See doc in XStep.

get_tex()[source]

Return a tex Representation of the Model that is beeing fitted. This can then be displayed in the UI.

init_data()[source]
init_data_reference()[source]

Overwrite to allow passing a sweep directly

main_plot()[source]

Overwrite main plot.

set_initial_guess(reference_data)[source]

This methods should set an initial guess for the optimization parameters from the available reference_data array. If no initial guess is set for a parameter, the value for the initial guess is taken form the modelcard. For steps which use a simulation of a DutCircuit, here the sweep should be defined, too.

staticMetaObject = PySide6.QtCore.QMetaObject("XVerifyMMC" inherits "XVerify": )[source]