Coverage for src/lccalib/survey.py: 0%

15 statements  

« prev     ^ index     » next       coverage.py v7.6.9, created at 2024-12-23 12:30 +0000

1""" 

2Interface to various survey inputs. 

3""" 

4 

5from abc import ABC, abstractmethod 

6 

7# pylint:disable=W0221 

8 

9class Survey(ABC): 

10 """Abstract class defining the minimum required inputs for any survey.""" 

11 

12 def __init__(self, *args, **kwargs): 

13 pass 

14 

15 @abstractmethod 

16 def get_secondary_star_catalog(self, **kwargs): 

17 """Return the calibrated secondary stars catalog.""" 

18 

19 @abstractmethod 

20 def get_secondary_star_lc(self, **kwargs): 

21 """Return the secondary stars light curves.""" 

22 

23 @abstractmethod 

24 def get_sne_lc(self, **kwargs): 

25 """Return the supernovae light curves.""" 

26 

27 @abstractmethod 

28 def get_secondary_labels(self, band, **kwargs): 

29 """Return a dictionary giving the column names in secondary catalog. 

30 

31 The dictionary should looks like: 

32 >>> dict( { 

33 >>> "mag": str, 

34 >>> "emag": str, 

35 >>> "color": (str, str) , 

36 >>> "goods": dict({str: float}), #name and threshold 

37 >>> "mag_cut": (float, float) }) 

38 """ 

39 

40 @abstractmethod 

41 @property 

42 def bands(self): 

43 """Return list of bands"""