Exemple #1
0
    def testPAStacker(self):
        """ Test the parallacticAngleStacker"""
        data = np.zeros(100,
                        dtype=list(
                            zip([
                                'observationStartMJD', 'fieldDec', 'fieldRA',
                                'observationStartLST'
                            ], [float] * 4)))
        data['observationStartMJD'] = np.arange(100) * .2 + 50000
        site = Site(name='LSST')
        data['observationStartLST'], last = calcLmstLast(
            data['observationStartMJD'], site.longitude_rad)
        data['observationStartLST'] = data['observationStartLST'] * 180. / 12.
        stacker = stackers.ParallacticAngleStacker(degrees=True)
        data = stacker.run(data)
        # Check values are in good range
        assert (data['PA'].max() <= 180)
        assert (data['PA'].min() >= -180)

        # Check compared to the util
        check_pa = []
        ras = np.radians(data['fieldRA'])
        decs = np.radians(data['fieldDec'])
        for ra, dec, mjd in zip(ras, decs, data['observationStartMJD']):
            alt, az, pa = _altAzPaFromRaDec(
                ra, dec, ObservationMetaData(mjd=mjd, site=site))

            check_pa.append(pa)
        check_pa = np.degrees(check_pa)
        np.testing.assert_array_almost_equal(data['PA'], check_pa, decimal=0)
 def testPAStacker(self):
     """ Test the parallacticAngleStacker"""
     data = np.zeros(100, dtype=zip(
         ['expMJD', 'fieldDec', 'fieldRA'], [float] * 3))
     data['expMJD'] = np.arange(100) * .2 + 5500
     stacker = stackers.ParallacticAngleStacker()
     data = stacker.run(data)
     # Check values are in good range
     assert(data['PA'].max() <= np.pi)
     assert(data['PA'].min() >= -np.pi)