Skip to content

Instantly share code, notes, and snippets.

@dfm
Created December 9, 2011 05:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dfm/1450336 to your computer and use it in GitHub Desktop.
Save dfm/1450336 to your computer and use it in GitHub Desktop.
Object oriented Python for Ross
import numpy as np
class Catalog(object):
def __init__(self):
self.stars = []
def add_star(self, star):
self.stars.append(star)
@property
def fluxes(self):
return np.array([[s.ra, s.flux] for s in self.stars])
@fluxes.setter
def fluxes(self, fluxes):
for i, s in enumerate(self.stars):
s.flux = fluxes[i]
def __getitem__(self, ind):
return self.stars[ind]
class Star(object):
def __init__(self, ra, dec, flux):
self.ra = ra
self.dec = dec
self.flux = flux
class RRLyrae(Star):
def __init__(self, period, *args, **kwargs):
super(RRLyrae, self).__init__(*args, **kwargs)
self.period = period
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment