Source code for specparam.modes.paramdef

"""Parameter definition for Modes."""

from specparam.reports.strings import gen_params_str

###################################################################################################
###################################################################################################

[docs] class ParamDefinition(): """Defines a parameter definition for a fit mode. Parameters ---------- params : OrderedDict Parameter information, in which: keys should be the name of the parameters values should have the description of each parameter the order should match the function definition """
[docs] def __init__(self, params): """Initialize a parameter definition.""" self.params = params
@property def n_params(self): """Define property attribute for the number of parameters.""" return len(self.params) @property def labels(self): """Define property attribute for parameter labels.""" return list(self.params.keys()) @property def descriptions(self): """Define property attribute for parameter descriptions.""" return self.params @property def indices(self): """Define property attribute for parameter indices.""" return {label : index for index, label in enumerate(self.params)}
[docs] def print(self, description=False, concise=False): """Print out the fit mode parameters. Parameters ---------- description : bool, optional, default: False Whether to print out a description of the fit mode parameters. concise : bool, optional, default: False Whether to print a concise version of the report. """ print(gen_params_str(self, description, concise))