-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathasteroid.py
More file actions
60 lines (45 loc) · 1.77 KB
/
asteroid.py
File metadata and controls
60 lines (45 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
"""Class to obtain, correct and analyze TESS asteroid data"""
import lightkurve as lk
import tess_ephem
import tess_locator
import tess_cloud
import tess_backdrop
class Asteroid(lk.TargetPixelFile):
"""Class to work with TESS asteroid data"""
def __init__(self, asteroid_name):
self.asteroid_name = asteroid_name
self._correct_sky_background()
self._correct_star_background()
@static_method
def from_MAST(self, asteroid_name):
"""Get object out of tesscut dataset"""
self.asteroid_name = asteroid_name
self._get_data()
self.__init__(**kwargs)
def _get_data(self):
"""Use tess_locator, tess_cloud"""
raise NotImplementedError
def _correct_sky_background(self):
"""Use tess_backdrop to correct scattered light"""
raise NotImplementedError
def _correct_star_background(self):
"""Use tess_backdrop, and new functionality, to remove stars from background"""
raise NotImplementedError
def create_aperture(self):
"""create_threshold_mask may work just as well here, but we might want to think about
special functions"""
raise NotImplementedError
def to_lightcurve(self):
"""makes special lk.LightCurve class?"""
raise NotImplementedError
class AsteroidLightCurve(lk.LightCurve):
"""I think we might need a special lk class...but maybe not?"""
def get_MPC_data(self):
# Get supplmental data from MPC?
raise NotImplementedError
def to_periodogram(self, type="GP"):
"""Special periodogram that uses GP kernels to estimate period?"""
raise NotImplementedError
def to_file(self):
"""Some sort of MPC viable file with relevant meta info..."""
raise NotImplementedError