# metawards.VariableSets¶

class metawards.VariableSets[source]

This class holds the collection of all VariableSet objects that contain the set of adjustable variables that are used to control a single run of the model

Examples

>>> v = VariableSets()
>>> v.append({"beta[2]": 0.95, "beta[3]": 0.9})
>>> v.append({"beta[1]": 0.86, "beta[2]": 0.89})
>>> print(v)
{(beta[2]=0.95, beta[3]=0.9)[repeat 1], (beta[1]=0.86,
beta[2]=0.89)[repeat 1]}
>>> v = v.repeat(2)
>>> print(v)
{(beta[2]=0.95, beta[3]=0.9)[repeat 1], (beta[1]=0.86,
beta[2]=0.89)[repeat 1], (beta[2]=0.95, beta[3]=0.9)[repeat 2],
(beta[1]=0.86, beta[2]=0.89)[repeat 2]}

__init__()[source]

Initialise an empty VariableSets object

Parameters

None

Returns

Return type

None

Methods

 __delattr__(name, /) Implement delattr(self, name). __dir__() Default dir() implementation. __eq__(other) Return self==value. __format__(format_spec, /) Default object formatter. __ge__(value, /) Return self>=value. __getattribute__(name, /) Return getattr(self, name). Return the VariableSet at the specified index __gt__(value, /) Return self>value. Initialise an empty VariableSets object __init_subclass__ This method is called when a class is subclassed. __le__(value, /) Return self<=value. __len__() __lt__(value, /) Return self

Attributes

 __dict__ __doc__ __hash__ __module__ __weakref__ list of weak references to the object (if defined)
__eq__(other)[source]

Return self==value.

__getitem__(i: int)[source]

Return the VariableSet at the specified index

__init__()[source]

Initialise an empty VariableSets object

Parameters

None

Returns

Return type

None

__repr__()[source]

Return repr(self).

__str__()[source]

Return str(self).

append(variables: metawards._variableset.VariableSet)[source]

Append the passed set of variables to the set that will be used to run a model. If there are any existing VariableSet objects in this list, then the new VariableSet must adjust the same variables

Parameters

variables (VariableSet) – The VariableSet to append to this list. If you pass a dict of {str: float} values, then this will automatically be converted into a VariableSet. Note that all VariableSet objects in a VariableSets must adjust the same variables

Returns

Return type

None

static read(filename: str, line_numbers: List[int] = None)[source]

Read and return collection of VariableSet objects from the specified line number(s) of the specified file

Parameters
• filename (str) – The name of the file from which to read the VariableSets

• line_numbers (List[int]) – The line numbers from the file to read. This is 0-indexed, meaning that the first line is line 0. If this is None, then all lines are read and used

Returns

variables – The collection of VariableSet objects that have been read, in the order they were read from the file

Return type

VariableSets

repeat(nrepeats: Union[List[int], int])[source]

Return a copy of this VariableSet in which all of the unique VaribleSet objects have been repeated ‘nrepeats’ times

Parameters

nrepeats (int or list[int]) – The number of repeats of the VariableSet objects to perform. If this is a list, then nrepeats[i] will be the number of times to repeat variables[i]

Returns

repeats – A new VariableSets object containing ‘nrepeats’ copies of the VariableSet objects from this set

Return type

VariableSets

set_outdir_from_number()[source]

This function resets the names of all of the output directories for each run so that they are numbered sequentially from one

set_outdir_from_uid()[source]

This function resets the names of all of the output directories for each run so that they all have a globally unique UID