Base class with some handy methods for objects that hold an avList.

See AlsoFormatter.
Method params Property: A list of the AV objects in my avList that are parameters.
Method avListSorted Property: A copy of my avList, sorted by each AV object's dmpLabel. If I have no avList for some reason, returns an empty list.
Method __len__ My length is the number of parameter AV objects in my avList.
Method getValuesIndexFor Returns the index in each values list supplied to my __call__ method at which the one and only parameter AV object is found having the same name as the supplied av.
Method checkValues Checks the supplied list of values to ensure that I have a parameter AV object for every one, and no parameter AV objects not accounted for.
Method alterations Performs component and device parameter alterations based on the supplied list of parameter values, using the two callables supplied as additional arguments.
@property
def params(self):

Property: A list of the AV objects in my avList that are parameters.

@property
def avListSorted(self):

Property: A copy of my avList, sorted by each AV object's dmpLabel. If I have no avList for some reason, returns an empty list.

def __len__(self):

My length is the number of parameter AV objects in my avList.

def getValuesIndexFor(self, av):

Returns the index in each values list supplied to my __call__ method at which the one and only parameter AV object is found having the same name as the supplied av.

An AV object that has isParam() == True is a parent, not known, and has a root ValueBasis. The av.AV_Manager sees to it that there is only one per avList item for each parameter name.

Returns None if no such AV object was found.

def checkValues(self, values, verbose=False):

Checks the supplied list of values to ensure that I have a parameter AV object for every one, and no parameter AV objects not accounted for.

Raises a ValueError with an informative error message if not.

ParametersverboseSet True to print/log an informative printout of values and params, even without an error.
@defer.inlineCallbacks
def alterations(self, values, fDev, fModel, fAV=None, ID=None):

Performs component and device parameter alterations based on the supplied list of parameter values, using the two callables supplied as additional arguments.

If a third callable is supplied as fAV, it is called with the AV object and its post-mods value, even if the AV object doesn't produce an alteration.

If a setup ID is specified, only does the alterations for that particular setup.

This is called by analysis.sim.Analyzer.getAlterations, analysis.sim.Analyzer._doAlterations, and analysis.psim.Analyzer.__call__. It's also used by Solver to provide useful info about how component values and device parameters are evolving during the differential evolution parameter finding process.

"Returns" a Deferred that fires with the number of alterations performed.

API Documentation for pingspice, generated by pydoctor at 2021-09-18 08:41:11.