lli5ba / LS-alhambra-stellar

Understanding the stellar component of the Alhambra survey project for La Serena Data Science School 2015
0 stars 0 forks source link

Making star traces with python image processing #3

Open lli5ba opened 9 years ago

lli5ba commented 9 years ago

all_surveys = [] survey_dict = SkyView.survey_dict for wavelength in survey_dict: survey_list = survey_dict[wavelength] for survey in survey_list: if(wavelength != "overlay_red" and wavelength != "overlay_green" \ and wavelength != "overlay_blue"): all_surveys.append(survey.encode("utf-8"))

lli5ba commented 9 years ago

paths = [] for survey in all_surveys: try: paths.append(SkyView().get_images(position='Barnard', \ survey=survey)) except urllib2.HTTPError, err: print "HTTPError, skipping to next download" continue

yordenes commented 9 years ago

for i in range(0,len(img_barnard)): img_barnard[i].info() img_median=np.median(img_barnard[i][0].data) img_std=np.std(img_barnard[i][0].data) print 'Science image - median: ',img_median print 'Science image - stddev: ',img_std fig, ax = plt.subplots() im = ax.imshow(img_barnard[i][0].data,cmap=plt.get_cmap('hot'), interpolation='nearest', origin='lower',\ vmin=img_median-img_std, vmax=img_median+img_std) fig.colorbar(im) plt.show()

lli5ba commented 9 years ago

http://astropy.readthedocs.org/en/latest/api/astropy.coordinates.SkyCoord.html#astropy.coordinates.SkyCoord.to_pixel

lli5ba commented 9 years ago

def plotImage(hduData): matplotlib.rcParams['figure.figsize'] = (20, 16)

img_median=np.median(hduData)
img_std=np.std(hduData)
#print 'Science image - median: ',img_median
#print 'Science image - stddev: ',img_std
fig, ax = plt.subplots()
im = ax.imshow(hduData,cmap=plt.get_cmap('hot'), interpolation='nearest', origin='lower',\
vmin=img_median-(3*img_std), vmax=img_median+(5*img_std))
fig.colorbar(im)
plt.show()
lli5ba commented 9 years ago

all_surveys = [] survey_dict = SkyView.survey_dict for wavelength in survey_dict: survey_list = survey_dict[wavelength] for survey in survey_list: if(wavelength in ['UV','Optical:SDSS','OtherOptical','InfaredHighRes', 'Optical:DSS']): all_surveys.append(survey.encode("utf-8"))

lli5ba commented 9 years ago

import math as m from astropy.io import fits import numpy as np import socket from pylab import * import scipy.misc as sp %matplotlib inline import urllib2 import matplotlib.pyplot as plt from astroquery.vizier import Vizier

result = Vizier.query_object('Barnard')

from astroquery.skyview import SkyView

dleebrown commented 9 years ago

def imNorm(hduData): trim_mean=np.mean(hduData) hduData=hduData/trim_mean return(hduData)

def plotImage(hduData): matplotlib.rcParams['figure.figsize'] = (20, 16) img_median=np.median(hduData) img_std=np.std(hduData)

trim_mean=sp.mstats.tmean(hduData,(0,np.mean(hduData)+10_img_std))

#print 'Science image - median: ',img_median
#print 'Science image - stddev: ',img_std
trim_std=np.std(hduData)
trim_median=np.median(hduData)
fig, ax = plt.subplots()
im = ax.imshow(hduData,cmap=plt.get_cmap('hot'), interpolation='nearest', origin='lower',\
vmin=img_median-(3_img_std), vmax=img_median+(5*img_std))
fig.colorbar(im)
plt.show()
lli5ba commented 9 years ago

def resizeImage(hdu, arcminutes): header = hdu.header width_pixel = header['NAXIS1'] height_pixel = header['NAXIS2'] xscale = abs(header['CDELT1']) yscale = abs(header['CDELT2']) width_arc = int(width_pixel_xscale_img_arcmin_60) height_arc = int(height_pixel_yscale_img_arcmin_60) print width_arc print height_arc data = hdu.data resized = sp.imresize(data, (width_arc,height_arc)) image_stack = [] for indiv in all_surveys: try: paths = sv.get_images(position='Barnard', \ survey=indiv) except: print "Error, skipping" continue for hdulist in paths: for hdu in hdulist: resized = resizeImage(hdu, 30)

yordenes commented 9 years ago

http://www.astrosurf.com/c2a/english/support/help/Html/Catalogue_UCAC4.htm

yordenes commented 9 years ago

http://www.astro.caltech.edu/~george/ay20/eaa-stellarmasses.pdf

dleebrown commented 9 years ago

http://docs.scipy.org/doc/scipy/reference/tutorial/interpolate.html

dleebrown commented 9 years ago

def simple_mc(tave,tstd,number,radii):

calculate maximally likely radius

outputradii=np.zeros((number,1))
for i in range(number):
    #draw from gaussian distro of temperature
    redraw=np.random.normal(tave,tstd)
    minentry=(np.abs(radii[:,0]-redraw)).argmin()
    radius=radii[minentry,1]
    err_radius=radii[minentry,2]
    #draw from uniform distribution of radii
    outputradii[i]=np.random.uniform(radius-err_radius,radius+err_radius)
return(outputradii)
yordenes commented 9 years ago

Teff/Radius theoretical relation catalog (data2)

x1=data2['Teff_1'] y1=data2['logg_1'] x2=data2['Teff_2'] y2=data2['logg_2']

fit_bms=np.polyfit(x1,y1,1) #Teff and Radius for stars before entering the MS fit_ams=np.polyfit(x2,y2,3) #Teff and Radius for stars after entering the MS

print "fit before MS:", fit_bms print "fit after MS :", fit_ams,"\n"

plt.plot(x1, y1, '.', ms = 7,color='blue') plt.plot(x2, y2, '.', color='red',ms = 7) plt.xlabel('Teff') plt.ylabel('logg') plt.ylim([0, 2]) plt.xlim([3000, 7000]) plt.plot(x1, fit_bms[0]_x1 + fit_bms[1], '-',color='blue') plt.plot(x2, fit_ams[0]_x2*3 + fit_ams[1]x2*2 + fit_ams[2]x2 + fit_ams[3], '-',color='red')