def test_single_data(self): ogle_path = datasets.get("single_dat", "ogle.dat") ogle_tff_path = datasets.get("single_dat", "tff.dat") ogle_dff_path = datasets.get("single_dat", "dff.dat") ogle_mch_path = datasets.get("single_dat", "match.dat") ogle_tff = pytff.load_tff_dat(ogle_tff_path, self.tff.process_tff) ogle_dff = pytff.load_tff_dat(ogle_dff_path, self.tff.process_dff) ogle_mch = pytff.load_match_dat(ogle_mch_path, self.tff.process_matchs) times, values = pytff.loadtarget(ogle_path) periods = np.array([0.6347522]) tff_data, dff_data, mch_data = self.tff.analyze(periods, times, values) np.testing.assert_array_equal(tff_data, ogle_tff) np.testing.assert_array_equal(dff_data, ogle_dff) np.testing.assert_array_equal(mch_data, ogle_mch)
def test_load_tff_dat(self): ogle_tff_path = datasets.get("single_dat", "tff.dat") asstring = pytff.load_tff_dat(ogle_tff_path) with open(ogle_tff_path) as fp: asfp = pytff.load_tff_dat(fp) self.assertEqual(asstring, asfp) self.assertIsInstance(asstring, tuple) self.assertIsInstance(asfp, tuple) self.assertTrue(all(map(lambda e: isinstance(e, tuple), asstring))) self.assertTrue(all(map(lambda e: isinstance(e, tuple), asfp))) rnd = random.random() asstring = pytff.load_tff_dat(ogle_tff_path, lambda gen: rnd) with open(ogle_tff_path) as fp: asfp = pytff.load_tff_dat(fp, lambda gen: rnd) self.assertEqual(asstring, asfp) self.assertEqual(asfp, rnd) self.assertEqual(asstring, rnd)
def test_asterisk_in_first_commponents(self): dat = "\n".join([ "90", " 0.9972900000 0.0000 215.562 111 0.1040", " ******* 0.6175 ******* 5.9440 90.4794 4.9784 24.0941 3.9973 2.9758 2.9903", # noqa " 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000", # noqa " 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000"]) # noqa dat = six.StringIO(dat) parsed = pytff.load_tff_dat(dat, self.tff.fourier_proc_default) self.assertTrue(np.all(np.isnan(parsed["A_1"]))) self.assertTrue(np.all(np.isnan(parsed["A_2"])))
def test_big_period(self): bp_path = datasets.get("big_period", "star.dat") bp_tff_path = datasets.get("big_period", "tff.dat") bp_dff_path = datasets.get("big_period", "dff.dat") bp_mch_path = datasets.get("big_period", "match.dat") bp_tff = pytff.load_tff_dat(bp_tff_path, self.tff.process_tff) bp_dff = pytff.load_tff_dat(bp_dff_path, self.tff.process_dff) bp_mch = pytff.load_match_dat(bp_mch_path, self.tff.process_matchs) times, values = pytff.loadtarget(bp_path) periods = np.array([153.798519147]) tff_data, dff_data, mch_data = self.tff.analyze(periods, times, values) for name in bp_tff.dtype.names: np.testing.assert_array_equal(tff_data[name], bp_tff[name]) for name in bp_dff.dtype.names: np.testing.assert_array_equal(dff_data[name], bp_dff[name]) for name in bp_mch.dtype.names: np.testing.assert_array_equal(mch_data[name], bp_mch[name])
def test_split_data(self): ogle_0_path = datasets.get("split_dat", "ogle_0.dat") ogle_1_path = datasets.get("split_dat", "ogle_1.dat") ogle_tff_path = datasets.get("split_dat", "tff.dat") ogle_dff_path = datasets.get("split_dat", "dff.dat") ogle_mch_path = datasets.get("split_dat", "match.dat") ogle_tff = pytff.load_tff_dat(ogle_tff_path, self.tff.process_tff) ogle_dff = pytff.load_tff_dat(ogle_dff_path, self.tff.process_dff) ogle_mch = pytff.load_match_dat(ogle_mch_path, self.tff.process_matchs) times_0, values_0 = pytff.loadtarget(ogle_0_path) times_1, values_1 = pytff.loadtarget(ogle_1_path) times, values = pytff.stack_targets( (times_0, times_1), (values_0, values_1)) periods = np.array([0.6347522] * 2) tff_data, dff_data, mch_data = self.tff.analyze(periods, times, values) np.testing.assert_array_equal(tff_data, ogle_tff) np.testing.assert_array_equal(dff_data, ogle_dff) np.testing.assert_array_equal(mch_data, ogle_mch)