def testGenerateGridPixMultiple(self): """ fit.generate_grid_pix() multiple case """ grid = fit.generate_grid_pix(self.photbands,teffrange=(5000,10000), teff2range=(20000, 40000), loggrange=(3.5,4.5),radrange=(0.1,1.0), logg2range=(4.50, 6.50), ebvrange=(0.0, 0.012),rad2range=(1.0,10.0), points=50) self.assertTrue('teff' in grid) self.assertTrue('logg' in grid) self.assertTrue('teff2' in grid) self.assertTrue('logg2' in grid) self.assertTrue('ebv' in grid) self.assertTrue('ebv2' in grid) self.assertTrue('rad' in grid) self.assertTrue('rad2' in grid) self.assertFalse('z' in grid) self.assertFalse('z2' in grid) self.assertFalse('rv' in grid) self.assertFalse('rv2' in grid) self.assertListEqual(grid['ebv'].tolist(), grid['ebv2'].tolist()) self.assertAllBetweenDiff(grid['teff'], 5000, 10000, places=-2) self.assertAllBetweenDiff(grid['logg'], 3.5, 4.5, places=1) self.assertAllBetweenDiff(grid['ebv'], 0.0, 0.012, places=3) self.assertAllBetweenDiff(grid['rad'], 0.1, 1.0, places=1) self.assertAllBetweenDiff(grid['teff2'], 20000, 40000, places=-2) self.assertAllBetweenDiff(grid['logg2'], 4.5, 6.5, places=1) self.assertAllBetweenDiff(grid['rad2'], 1.0, 10.0, places=0)
def testGenerateGridPixBinary(self): """ fit.generate_grid_pix() binary case """ grid = fit.generate_grid_pix(self.photbands,teffrange=(5000,10000), teff2range=(30000, 40000), loggrange=(3.5,4.50), logg2range=(4.50, 6.50), ebvrange=(0.0, 0.012), rvrange=(2.1,3.1), rv2range=(2.1,3.1), masses=[0.47*1.63, 0.47], points=50) self.assertTrue('teff' in grid) self.assertTrue('logg' in grid) self.assertTrue('teff2' in grid) self.assertTrue('logg2' in grid) self.assertTrue('ebv' in grid) self.assertTrue('ebv2' in grid) self.assertTrue('rad' in grid) self.assertTrue('rad2' in grid) self.assertFalse('z' in grid) self.assertFalse('z2' in grid) self.assertListEqual(grid['ebv'].tolist(), grid['ebv2'].tolist(), msg="ebv should be the same for both components.") self.assertListEqual(grid['rv'].tolist(), grid['rv2'].tolist(), msg="Rv should be the same for both components.") self.assertAllBetweenDiff(grid['teff'], 5000, 10000, places=-2) self.assertAllBetweenDiff(grid['logg'], 3.5, 4.5, places=1) self.assertAllBetweenDiff(grid['ebv'], 0.0, 0.012, places=3) self.assertAllBetweenDiff(grid['rv'], 2.1, 3.1, places=1) self.assertAllBetweenDiff(grid['teff2'], 30000, 40000, places=-2) self.assertAllBetweenDiff(grid['logg2'], 4.5, 6.5, places=1) G, Msol, Rsol = constants.GG_cgs, constants.Msol_cgs, constants.Rsol_cgs rad = np.sqrt(G*0.47*1.63*Msol/10**grid['logg'])/Rsol rad2 = np.sqrt(G*0.47*Msol/10**grid['logg2'])/Rsol self.assertListEqual(rad.tolist(), grid['rad'].tolist()) self.assertListEqual(rad2.tolist(), grid['rad2'].tolist())