def test_griddata_fits(): """Round tripping with write_griddata_fits() and read_griddata_fits()""" x0 = np.array([0., 1.]) x1 = np.array([0., 1., 2.]) y = np.zeros((2, 3)) f = six.BytesIO() sncosmo.write_griddata_fits(x0, x1, y, f) # Read it back f.seek(0) x0_in, x1_in, y_in = sncosmo.read_griddata_fits(f) assert_allclose(x0_in, x0) assert_allclose(x1_in, x1) assert_allclose(y_in, y)
def test_griddata_fits(): """Round tripping with write_griddata_fits() and read_griddata_fits()""" x0 = np.array([0., 1.]) x1 = np.array([0., 1., 2.]) y = np.zeros((2, 3)) f = BytesIO() sncosmo.write_griddata_fits(x0, x1, y, f) # Read it back f.seek(0) x0_in, x1_in, y_in = sncosmo.read_griddata_fits(f) assert_allclose(x0_in, x0) assert_allclose(x1_in, x1) assert_allclose(y_in, y) f.close() # Test reading 3-d grid data. We don't have a writer for # this, so we write a temporary FITS file by hand. x2 = np.array([3., 5., 7., 9]) y = np.zeros((len(x0), len(x1), len(x2))) # write a FITS file that represents x0, x1, x2, y w = wcs.WCS(naxis=3) w.wcs.crpix = [1, 1, 1] w.wcs.crval = [x2[0], x1[0], x0[0]] w.wcs.cdelt = [2., 1., 1.] hdu = fits.PrimaryHDU(y, header=w.to_header()) f = BytesIO() hdu.writeto(f) # Read it back f.seek(0) x0_in, x1_in, x2_in, y_in = sncosmo.read_griddata_fits(f) f.close() assert_allclose(x0_in, x0) assert_allclose(x1_in, x1) assert_allclose(x2_in, x2) assert_allclose(y_in, y)
def test_griddata_fits(): """Round tripping with write_griddata_fits() and read_griddata_fits()""" x0 = np.array([0., 1.]) x1 = np.array([0., 1., 2.]) y = np.zeros((2, 3)) f = six.BytesIO() sncosmo.write_griddata_fits(x0, x1, y, f) # Read it back f.seek(0) x0_in, x1_in, y_in = sncosmo.read_griddata_fits(f) assert_allclose(x0_in, x0) assert_allclose(x1_in, x1) assert_allclose(y_in, y) f.close() # Test reading 3-d grid data. We don't have a writer for # this, so we write a temporary FITS file by hand. x2 = np.array([3., 5., 7., 9]) y = np.zeros((len(x0), len(x1), len(x2))) # write a FITS file that represents x0, x1, x2, y w = wcs.WCS(naxis=3) w.wcs.crpix = [1, 1, 1] w.wcs.crval = [x2[0], x1[0], x0[0]] w.wcs.cdelt = [2., 1., 1.] hdu = fits.PrimaryHDU(y, header=w.to_header()) f = six.BytesIO() hdu.writeto(f) # Read it back f.seek(0) x0_in, x1_in, x2_in, y_in = sncosmo.read_griddata_fits(f) f.close() assert_allclose(x0_in, x0) assert_allclose(x1_in, x1) assert_allclose(x2_in, x2) assert_allclose(y_in, y)