def test_norm_at_point(self): segment1 = Spectrum(x = numpy.arange(1000,10000,1), y = numpy.arange(1000,10000,1), yerr=numpy.arange(1000,10000,1)*.01, z=1.0) segment2 = Sed(x=numpy.arange(1000,10000,500), y=numpy.arange(1000,10000,500), yerr=numpy.arange(1000,10000,500)*.01) segment3 = Sed(x=numpy.arange(1000,10000,500), y=numpy.arange(1000,10000,500), yerr=numpy.arange(1000,10000,500)*.01, z = 0.35) segment4 = Spectrum(x = numpy.arange(1000,10000,10), y = numpy.arange(1000,10000,10), yerr=numpy.arange(1000,10000,10)*.01, z=1.0) x0 = 5025 y0 = 1000 aggsed = Stack([segment1, segment2, segment3, segment4]) norm_aggsed = aggsed.normalize_at_point(x0,y0) sedarray = segment3._toarray() control_norm_aggsed_segment3 = sedarray[1]*0.2 self.assertEqual(norm_aggsed[1][8].y, 1000) sedarray = norm_aggsed[2]._toarray() numpy.testing.assert_array_almost_equal(sedarray[1], control_norm_aggsed_segment3) self.assertEqual(norm_aggsed[0].norm_constant, numpy.float_(y0)/5025)
def test_toarray(self): sed = Sed(x = self._x, y = self._y, yerr = self._yerr, xunit = self._xunit, yunit = self._yunit, z = self._z) sedarray = sed._toarray() self.assertEqual(sedarray[1][0], self._y[0])
def test_sed_write_with_counts(self): sed = Sed(x=self.x,y=self.y,yerr=self.yerr) sed.counts = numpy.ones(numpy.array(sed._toarray()[0]).size, dtype=numpy.int_) filename = test_directory+'sed_counts.dat' sed.write(filename) self.assertEqual(os.path.exists(filename), True) data = astropy.io.ascii.read(filename) self.assertEqual(data['counts'][3],1.0)
def test_aggsed_counts1(self): sed = Sed(x=self.x,y=self.y,yerr=self.yerr) sed.counts = numpy.ones(numpy.array(sed._toarray()[0]).size, dtype=numpy.int_) spectrum = Spectrum(x=self.x, y=self.y, yerr=self.yerr) aggsed = AggregateSed([sed, spectrum]) filename = test_directory+'aggsed_counts1.dat' aggsed.write(filename) self.assert_(os.path.exists(filename)) data = astropy.io.ascii.read(filename) self.assertEqual(all(counts == numpy.nan for counts in data['counts']), False)