High-level, simplified interface to the functionality in
the multipleloop module.
Typical application:
p = {'name1': multiple values , name2 : values , ...}
experiments = py4cs.multipleloop.MultipleLoop(option_prefix='-')
for name in p:
experiments.add(name, p[name])
for cmlargs, parameters, varied_parameters in experiments:
<run experiment: some program + cmlargs>
<extract results and save>
Attributes (m is some MultipleLoop object):
m.names names of all parameters
m.varied names of parameters with multiple values
m.options list of strings of all command-line arguments
(-name value), one for each experiment
m.all list of all experiments
m.prm_values list of (name, valuelist) tuples
Methods
|
|
__init__
__iter__
add
combine
next
remove
|
|
__init__
|
__init__ ( self, option_prefix='--' )
|
|
__iter__
|
__iter__ ( self )
|
|
add
|
add (
self,
prm_name,
str_with_values,
)
|
|
combine
|
combine ( self )
|
|
next
|
next ( self )
|
|
remove
|
remove ( self, condition )
Remove experiments that fulfill a boolean condition.
Example:
e.remove(w < 1.0 and p = 1.2) or (q in (1,2,3) and f < 0.1 )
(names of the parametes must be used)
|
|