class StaticHelpers(): data_single = [Measurement(name='y0', timepoints=[1, 2, 3], values=[10, 10 ,10], errors=[0.1, 0.2, 0.3])] data_multi = [ Measurement(name='y0', timepoints=[1, 2, 3], values=[10, 10 ,10], errors=[0.1, 0.2, 0.3], replicate_id='1st'), Measurement(name='y0', timepoints=[1, 5, 10], values=[10, 10 ,10], errors=[0.1, 0.2, 0.3], replicate_id='2nd'), ] many_time_series_1 = [ [TimeSeries(name='T1', timepoints=[1, 2, 3, 4], values=[10, 10, 10, 10], replicate_id='1st')], [TimeSeries(name='T1', timepoints=[1, 2, 3], values=[10, 10, 10], replicate_id='1st')], ] unknowns = ['y00', 'y10'] bounds = [(-100, 100), (-100, 100)]
def test_init_datatypes_masking_non_numeric(self, input_vector, masked_vector): """ Non-numeric values implicitly define a mask, which is in turn applied to all vectors of the corresponding datatypes. """ _timeseries = TimeSeries(name=StaticHelpers.name, timepoints=input_vector, values=StaticHelpers.values) assert all(_timeseries.timepoints) == all(masked_vector) assert _timeseries.length == len(masked_vector) _timeseries = TimeSeries(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=input_vector) assert all(_timeseries.timepoints) == all(masked_vector) assert _timeseries.length == len(masked_vector) _measurement = Measurement(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, errors=input_vector) assert all(_measurement.timepoints) == all(masked_vector) assert _measurement.length == len(masked_vector)
class StaticData(): measurements_wo_errors = Measurement(name='M1', timepoints=[1, 2, 3], values=[10, 20, 30], replicate_id='1st') measurements_w_errors = Measurement(name='M2', timepoints=[2, 3, 4], values=[20, 30, 40], errors=[1 / 20, 1 / 30, 1 / 40], replicate_id='1st') time_series_1 = TimeSeries(name='TS1', timepoints=[1, 2], values=[10, 20], replicate_id='1st') time_series_2 = TimeSeries(name='TS2', timepoints=[2, 3], values=[20, 30], replicate_id='2nd')
def test_init_datatypes(self, values, errors, info, replicate_id): """ To test typical instantiations of datatypes. """ # Standard instatiations TimeSeries(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, info=info, replicate_id=replicate_id) ModelState(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, info=info, replicate_id=replicate_id) Measurement(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, errors=errors, info=info, replicate_id=replicate_id) Observation(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, observed_state='y1', replicate_id=replicate_id) Sensitivity(timepoints=StaticHelpers.timepoints, values=values, response='y1', parameter='p1', replicate_id=replicate_id) Sensitivity(timepoints=StaticHelpers.timepoints, values=values, response='y1', parameter='p1', h=1e-8, replicate_id=replicate_id) # Must provide timepoints with pytest.raises(ValueError): TimeSeries(name=StaticHelpers.name, timepoints=None, values=values) # Must provide values with pytest.raises(ValueError): TimeSeries(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=None) # Measurements can be created with error_models Measurement( name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, error_model=StaticErrorModelHelpers.constant_error_model, error_model_parameters=StaticErrorModelHelpers.constant_error_model_parameters, ) # Must provide a subclass of rvs.continous as p.d.f. with pytest.raises(ValueError): Measurement(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, error_distribution=scipy.stats.bernoulli) # Error values must be >0 with pytest.raises(ValueError): Measurement(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, errors=[0]*len(StaticHelpers.values)) with pytest.raises(ValueError): Measurement(name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=values, errors=[-1]*len(StaticHelpers.values))
class StaticDatatypes(): timeseries = TimeSeries( name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, replicate_id=StaticHelpers.replicate_id ) modelstate = ModelState( name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, replicate_id=StaticHelpers.replicate_id ) measurement_wo_errs = Measurement( name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, replicate_id=StaticHelpers.replicate_id ) measurement_w_errs = Measurement( name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, errors=StaticHelpers.errors, replicate_id=StaticHelpers.replicate_id ) observation = Observation( name=StaticHelpers.name, timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, observed_state=StaticHelpers.state, replicate_id=StaticHelpers.replicate_id ) sensitivity = Sensitivity( timepoints=StaticHelpers.timepoints, values=StaticHelpers.values, response=StaticHelpers.state, parameter=StaticHelpers.parameter, replicate_id=StaticHelpers.replicate_id )