Design
: Experimental designs¶
-
class
epyc.
Design
¶ Base class for experimental designs.
A “design” is a protocol for conducting a set of experiments so as to maximise the amount of useful data collected. It is a common topic in real-world experiments, and can be applied to computational experiments as well.
A design in
epyc
converts a set of experimental parameters into ann experimental configuration, a list consisting of pairs of an experiment to run and the parameters at which to run it.A design must be able to cope with being passed None as an experiment, and should return None for all the experiments in the configuration: this allows for pre-checks to be performed.
A design is associated with each
Lab
. By default the standardFactorialDesign
is used, and no further action is needed. Other designs can be selected at lab creation time.
Creating experiments¶
-
Design.
experiments
(e: epyc.experiment.Experiment, ps: Dict[str, Any]) → List[Tuple[epyc.experiment.Experiment, Dict[str, Any]]]¶ Convert a mapping from parameter name to list of values into a list of mappings from parameter names to single values paired with experiment to run at that point, according to the requirements of the design. This method must be overridden by sub-classes.
Parameters: ps – a dict of parameter values Returns: an experimental configuration