def testearthshine(self): expr = "earthshine.fits" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() f = sp(wave) w,f = sp.getArrays() self.assertApproxFP(f[0], 2.41358E-23, accuracy=0.0025)
def testpl2(self): expr = "pl(4000.,1,jy)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() f = sp(wave) w,f = sp.getArrays() self.assertApproxFP(f[5270], 1.00287, accuracy=0.0025)
def testzodi(self): expr = "spec(Zodi.fits)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() f = sp(wave) w,f = sp.getArrays() self.assertApproxFP(f[0], 4.74300E-29, accuracy=0.0025)
def testunit1(self): expr = "unit(1,photlam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() fluxes = sp(wave) self.assertApproxFP(fluxes.shape[0], 1.0E+04, accuracy=0.0025) self.assertApproxFP(fluxes[0], 1.0, accuracy=0.0025) self.assertApproxFP(fluxes[9000], 1.0, accuracy=0.0025)
def test1(self): sp = P.interpret(P.parse(P.scan("icat(k93models,5750,0.0,4.5)"))) sp.writefits(self.filename) sp = spectrum.TabularSourceSpectrum(testdata) (wave, flux) = sp.getArrays() i = len(flux)/3 self.assertApproxFP(flux[i], 9.634403E-13, accuracy=0.0025)
def testunit2(self): expr = "unit(1,flam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() fluxes = sp(wave) self.assertApproxFP(fluxes[0], 2.51701E+10, accuracy=0.0025) self.assertApproxFP(fluxes[9000], 8.81633E+11, accuracy=0.0025) waves,fluxes = sp.getArrays() self.assertApproxFP(fluxes[0], 1.0, accuracy=0.0025) self.assertApproxFP(fluxes[9000], 1.0, accuracy=0.0025)
def testuserdir2(self): userdir = tempfile.mkdtemp(suffix='pysynphot') shutil.copy(os.path.join(testdir, 'test.dat'), userdir) try: expr = "spec(%s/test.dat)" % userdir sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[5000], 6.08108E+10, accuracy=0.0025) finally: shutil.rmtree(userdir)
def testebmvx(self): expr = "rn(unit(1,flam)*ebmvx(0.1,gal1),box(5500.0,1),1.0E-18,flam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.tda = dict(expr=expr,sp=str(sp), ref=1.53329E-7, epsilon=0.0025, tst=flux[5000]) self.tda.update(refs.getref()) self.assertApproxFP(flux[4954], 1.53329E-7, accuracy=0.0025)
def testuserdir1(self): userdir = tempfile.mkdtemp(suffix='pysynphot') shutil.copy(os.path.join(testdir, 'vb8.inr.2a'), userdir) try: expr = "spec(%s)" % os.path.join(userdir, 'vb8.inr.2a') sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[5000], 8.15545E-3, accuracy=0.0025) finally: shutil.rmtree(userdir)
def testrn1(self): expr = "rn(unit(1,flam),box(5500.0,1000),1.0E-18,flam)" sp = P.interpret(P.parse(P.scan(expr))) sp.convert('flam') wave = sp.GetWaveSet() sp(wave) wav,flux = sp.getArrays() self.assertApproxFP(flux[0], 1.0E-18, accuracy=0.0025) box = spectrum.Box(5500.0,1.0) sp = sp * box integral = sp.integrate(fluxunits='flam') self.assertApproxFP(integral, 1.0E-18, accuracy=0.0025)
def testcomp11(self): expr = "(spec(crcalspec$grw_70d5824_stis_001.fits))" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[2000], 1.41039E-2, accuracy=0.0025)
def testcomp8(self): expr = "rn(icat(k93models,3500,0.0,4.6),band(johnson,v),15.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[1000], 0.000595778, accuracy=0.0025)
def testnullz(self): expr = "rn(z(null,NaN),band(johnson,v),15.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[5000], 0.000997219, accuracy=0.0025)
def testpl1(self): expr = "pl(4000.,1,photlam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[5270], 1.00287, accuracy=0.0025)
def testcomp16(self): expr = "rn((spec(crcalspec$bd_28d4211_stis_001.fits)),box(2000.0,1),1.0E-12,flam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[200], 0.292770, accuracy=0.0025)
def testcomp14(self): expr = "rn((icat(k93models,44500,0.0,5.0))*ebmvx(0.5,smc),band(johnson,v),15.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[200],2.09058e-06, accuracy=0.0025)
def testcomp12(self): expr = "(spec(crcalspec$gd71_mod_005.fits))*ebmvx(0.1,gal1)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[2000], 7.15737E-3, accuracy=0.0025)
def compute(self,expr): sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) return wave, flux
def testcomp4(self): expr = "rn(elliptical.fits,band(johnson,v),15.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[50], 0.000220323, accuracy=0.0025)
def testem(self): expr = "em(3880.0,10.0,1.0000000168623835E-16,flam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[50], 1.83491E-6, accuracy=0.0025)
def testbb1(self): expr = "bb(10000.0)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[5000], 1.06813E-2, accuracy=0.0025)
def testlen(self): self.tokens=[self.fname] x=P.scan(self.fname) self.assertEqual(len(x),len(self.tokens))
def testgal1(self): expr = "ebmvx(0.1,gal1)" th = P.interpret(P.parse(P.scan(expr))) wave = th.GetWaveSet() throughput = th._throughputtable self.assertApproxFP(throughput[1000], 0.9816266, accuracy=0.0025)
def testsmc(self): expr = "ebmvx(0.5,smc)" th = P.interpret(P.parse(P.scan(expr))) wave = th.GetWaveSet() throughput = th._throughputtable self.assertApproxFP(throughput[1000], 0.87486, accuracy=0.0025)
def testval(self): self.tokens=[self.fname] x=P.scan(self.fname) self.assertEqual(x[0].attr,self.tokens[0])
def testcomp13(self): expr = "rn(z(qso_template.fits,1),band(johnson,v),18.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[2000],2.87964e-05 , accuracy=0.0025)
def testcomp5(self): expr = "rn(bb(5500.0),band(bessell,h),22.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[6000], 3.88200E-7, accuracy=0.0265)
def testcomp15(self): expr = "rn((icat(k93models,44500,0.0,5.0)),band(johnson,v),10.516,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[200], 1.08749, accuracy=0.0025)
def testcomp6(self): expr = "rn(egal.dat,band(bessell,h),20.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[500], 9.60494E-7, accuracy=0.0265)
def testcomp17(self): expr = "rn((spec(crcalspec$gd71_mod_005.fits))*ebmvx(0.1,gal1),box(5500.0,1),1.0E-16,flam)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[2000], 4.37347E-5, accuracy=0.0025)
def testcomp7(self): expr = "rn(bb(5500.0)*ebmvx(0.5,lmc),band(bessell,h),20.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[6933], 1.38877E-6, accuracy=0.0265)
def testk93(self): expr = "rn(icat(k93models,5770,0.0,4.5),band(johnson,v),20.0,vegamag)" sp = P.interpret(P.parse(P.scan(expr))) wave = sp.GetWaveSet() flux = sp(wave) self.assertApproxFP(flux[500], 1.02585e-05, accuracy=0.025)
def setUp(self): self.sp=P.interpret(P.parse(P.scan('ebmvx(0.5,gal1)')))