def test_optics_from_schema(self): model = AlphaModel(Sphere(), medium_index=prior.Uniform(1, 2)) schema = detector_grid(2, 2) schema.attrs['illum_wavelen'] = 0.6 schema.attrs['illum_polarization'] = [1, 0] found_optics = model._find_optics([1.5], schema) expected = {'medium_index': 1.5, 'illum_wavelen': 0.6, 'illum_polarization': [1, 0]} self.assertEqual(found_optics, expected)
def test_model_optics_take_precedence(self): model = AlphaModel(Sphere(), medium_index=1.5, illum_wavelen=0.8) schema = detector_grid(2, 2) schema.attrs['illum_wavelen'] = 0.6 schema.attrs['illum_polarization'] = [1, 0] found_optics = model._find_optics([], schema) expected = {'medium_index': 1.5, 'illum_wavelen': 0.8, 'illum_polarization': [1, 0]} self.assertEqual(found_optics, expected)
def test_reads_optics_from_map(self): med_n = prior.ComplexPrior(1.5, prior.Uniform(0, 0.1)) wl = {'red': 0.5, 'green': prior.Uniform(0, 1)} pol = [1, prior.Uniform(0.5, 1.5)] model = AlphaModel(Sphere(), medium_index=med_n, illum_wavelen=wl, illum_polarization=pol) pars = [0.01, 0.6, 1] found_optics = model._find_optics(pars, None) expected = {'medium_index': complex(1.5, 0.01), 'illum_wavelen': {'red': 0.5, 'green': 0.6}, 'illum_polarization': [1, 1]} self.assertEqual(found_optics, expected)