Skip to content

sanjibs/roman-magnitudes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computing Roman magnitudes in different photometric bands

Two models are provided one computes the apparent magnitude while the other computes Absolute magnitude. Output is available for following roman passbands ['roman_f062', 'roman_f087', 'roman_f106', 'roman_f129', 'roman_f146', 'roman_f158', 'roman_f184', 'roman_f213', 'roman_prism', 'roman_grism', 'roman_prism_b8', 'roman_prism_r8', 'roman_grism_b8', 'roman_grism_r8']

See tech-report Roman-STScI–000825 for further details.

Apparent Magnitudes (class RomanAppMagModel)

Apparent magnitude is based on analytical formulas and requires photometry in Gaia or 2MASS bands/ One can also provide additional stellar parameters like metallicity and extinction. This leads to 3 basic combinations or schemes. Optionally, for each of the scheme given below one can also provide parallax.

  • scheme A: ('phot_bp_mean_mag', 'phot_rp_mean_mag', 'feh', 'ag')
  • scheme B: ('phot_bp_mean_mag', 'phot_rp_mean_mag')
  • scheme C: ('tmass_j', 'tmass_ks')
import numpy as np
import roman_magnitudes.models

df={}
df['phot_rp_mean_mag'] = np.array([8.0,9.0,10.0,12.0,14.0])
df['phot_bp_mean_mag'] = df['phot_rp_mean_mag']+1.0
df['feh'] = np.array([-0.5, 0.25, 0.0, 0.25, 0.5])
df['ag'] = np.array([0.0, 0.1, 0.5, 1.0, 2.0])
df['parallax'] = np.array([1.0, 1.0, 1.0, 1.0, 1.0])    
rmodel1=roman_magnitudes.models.RomanAppMagModel().load(df)
print('roman_f106:',rmodel1.get_magnitude('roman_f106'))

df={}
df['tmass_ks'] = np.array([8.0,9.0,10.0,12.0,14.0])
df['tmass_j'] = df['tmass_ks']+0.5
df['parallax'] = np.array([1.0, 1.0, 1.0, 1.0, 1.0])
rmodel1.load(df)
print('roman_grism:',rmodel1.get_magnitude('roman_grism'))
print('roman_grism counts:',rmodel1.mag_to_counts(rmodel1.get_magnitude('roman_grism'),'roman_grism'))
print('roman_grism counts:',rmodel1.mag_to_counts(26.61,'roman_f062'))

Absolute Magnitudes (class RomanAbsMagModel)

Absolute magntidues are presented as a function of stellar parameters (feh, teff, logg) and gaia_g, the absolute magnitude in gaia band. If gaia_g is not provided it is assumed to be 0.0. The output is in AB magnitude system for Roman bands (roman_f15', roman_f184, roman_f213, roman_prism, roman_grism, roman_prism_b8, roman_prism_r8, roman_grism_b8, roman_grism_r8) and Vega for other bands (gaia_gbp, gaia_grp, gaia_g, tmass_j, tmass_h, tmass_ks, wise_w1, wise_w2). Results are based on interpolation tables constructed from Phoenix synthetic spectra using the python synphot package.

import numpy as np
import roman_magnitudes.models


rmodel2=roman_magnitudes.models.RomanAbsMagModel()
feh=np.array([-0.5, 0.25, 0.0, 0.25])
teff=np.array([5000, 4500, 4250.0, 4000])
logg=np.array([4.0, 3.5, 3.0, 0.0])
gaia_g=np.array([1.0, 2.0, 3.0, 4.0])
ebv=np.array([0.0, 0.2, 0.3, 0.4])
print(rmodel2.get_magnitude(feh, teff, logg, bandpass='gaia_g'))
print(rmodel2.get_magnitude(feh, teff, logg, bandpass='gaia_g', gaia_g=gaia_g))
print(rmodel2.get_magnitude(feh, teff, logg, bandpass='gaia_gbp', gaia_g=gaia_g))
print(rmodel2.get_magnitude(feh, teff, logg, bandpass='gaia_gbp', gaia_g=gaia_g, ebv=ebv))
print(rmodel2.get_magnitude(feh, teff, logg, bandpass='roman_f062', gaia_g=gaia_g))
print(rmodel2.get_magnitude(feh, teff, logg, bandpass='roman_f062', gaia_g=gaia_g, ebv=ebv))

About

Utilities for computing apparent and absolute magnitudes in Roman passbands. Apparent magnitude is computed from Gaia or 2MASS magnitudues, while absolute magnitude is computed from ([Fe/H], Teff, logg).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors