コード例 #1
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_map_hierarchical_transformed_prior(self):
     model = SimpleModel()
     inner = prior.TransformedPrior(np.sqrt, prior.Uniform(0, 2))
     full = prior.TransformedPrior(np.maximum, [inner, prior.Uniform(0, 1)])
     position = len(model._parameters)
     parameter_map = model._convert_to_map(full)
     placeholder = ['_parameter_{}'.format(position + i) for i in range(2)]
     submap = [transformed_prior, [np.sqrt, [placeholder[0]]]]
     expected = [transformed_prior, [np.maximum, [submap, placeholder[1]]]]
コード例 #2
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_read_hierarchical_transformed(self):
     inner_map = [transformed_prior, [np.sqrt, ['_parameter_0']]]
     parameter_map = [transformed_prior, [np.maximum, ['_parameter_1',
                                                       inner_map]]]
     priors = [prior.Uniform(0, 1), prior.Uniform(1, 2)]
     expected_base = [prior.Uniform(1, 2),
                      prior.TransformedPrior(np.sqrt, prior.Uniform(0, 1))]
     expected_full = prior.TransformedPrior(np.maximum, expected_base)
     self.assertEqual(read_map(parameter_map, priors), expected_full)
     values = [25, 7]
     self.assertEqual(read_map(inner_map, values), 5)
     self.assertEqual(read_map(parameter_map, values), 7)
コード例 #3
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_map_transformed_prior(self):
     model = SimpleModel()
     transformed = prior.TransformedPrior(np.sqrt, prior.Uniform(0, 2),
                                          name='sqrt')
     position = len(model._parameters)
     parameter_map = model._convert_to_map(transformed)
     placeholder = "_parameter_{}".format(position)
     expected = [transformed_prior, [np.sqrt, [placeholder]]]
     self.assertEqual(parameter_map, expected)
コード例 #4
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_transformed_priors_are_tied(self):
     base_prior = prior.Uniform(0, 2, name='x')
     transformed = prior.TransformedPrior(np.sqrt, base_prior, name='y')
     scatterer = Sphere(n=1.5, r=0.5, center=[base_prior, transformed,
                                              prior.Uniform(5, 10)])
     model = AlphaModel(scatterer)
     expected_priors = [base_prior, prior.Uniform(5, 10)]
     expected_names = ['x', 'center.2']
     self.assertEqual(model._parameters, expected_priors)
     self.assertEqual(model._parameter_names, expected_names)
コード例 #5
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_read_transformed_prior_map_priors(self):
     parameter_map = [transformed_prior, [np.sqrt, ['_parameter_0']]]
     priors = [prior.Uniform(0, 1)]
     expected = prior.TransformedPrior(np.sqrt, priors)
     self.assertEqual(read_map(parameter_map, priors), expected)
コード例 #6
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_read_complex_map_priors(self):
     parameter_map = [transformed_prior, [complex, ['_parameter_0',
                                                    '_parameter_1']]]
     priors = [prior.Uniform(0, 1), prior.Uniform(1, 2)]
     expected = prior.TransformedPrior(complex, [priors[0], priors[1]])
     self.assertEqual(read_map(parameter_map, priors), expected)
コード例 #7
0
ファイル: test_model.py プロジェクト: galaturka/holopy
 def test_map_transformed_prior_names(self):
     model = SimpleModel()
     base_prior = [prior.Uniform(0, 2, name='first'), prior.Uniform(1, 2)]
     transformed = {'trans': prior.TransformedPrior(np.maximum, base_prior)}
     parameter_map = model._convert_to_map(transformed)
     self.assertEqual(model._parameter_names[-2:], ['first', 'trans.1'])