matflow.ValuePerturbation#

class matflow.ValuePerturbation(name, path=None, multiplicative_factor=1, additive_factor=0)#

Bases: ValuePerturbation

A perturbation applied to a value.

Methods

from_json_like

Make an instance of this class from JSON (or YAML) data.

from_spec

Construct an instance from a specification dictionary.

make_persistent

Save value to a persistent workflow.

to_dict

Serialize this object as a dictionary.

to_json_like

Serialize this object as an object structure that can be trivially converted to JSON.

Attributes

additive_factor

The additive factor to apply.

app

multiplicative_factor

The multiplicative factor to apply.

path

The path to the value(s) to perturb.

value

The value itself.

workflow

The workflow containing this input value.

name

The name of this perturbation.

Parameters:
additive_factor: Numeric | None = 0#

The additive factor to apply.

app = App(name='MatFlow', version='0.3.0a132')#
classmethod from_json_like(json_like, shared_data=None)#

Make an instance of this class from JSON (or YAML) data.

Parameters:
  • json_like (Union[Dict, List]) – The data to deserialise.

  • shared_data (Optional[Dict[str, ObjectList]]) – Shared context data.

Return type:

The deserialised object.

classmethod from_spec(spec)#

Construct an instance from a specification dictionary.

make_persistent(workflow, source)#

Save value to a persistent workflow.

Returns:

  • String is the data path for this task input and single item integer list

  • contains the index of the parameter data Zarr group where the data is

  • stored.

Parameters:
Return type:

Tuple[str, List[int], bool]

multiplicative_factor: Numeric | None = 1#

The multiplicative factor to apply.

name: str#

The name of this perturbation.

path: Sequence[str | int | float] | None = None#

The path to the value(s) to perturb.

to_dict()#

Serialize this object as a dictionary.

to_json_like(dct=None, shared_data=None, exclude=None, path=None)#

Serialize this object as an object structure that can be trivially converted to JSON. Note that YAML can also be produced from the result of this method; it just requires a different final serialization step.

property value#

The value itself.

property workflow#

The workflow containing this input value.