def get_variable(self, kics, lc_file): """ gets if star is variable or not with Chi-squared values from our database """ t = table_api(lc_file, delimiter=",", skip_rows=1, kic_col_no=0) arrs = t.parse_table_arrs(range(1, 7), kics=kics, types=[str, float, float, str, float, str]) reses = [] for i, kic in enumerate(kics): curr_params = {} arr = arrs[i] if len(arr) == 0: curr_params["variable"], curr_params["var_bic_flat"], \ curr_params["var_bic_var"], \ curr_params["var_label_var"], \ curr_params["var_prob"], \ curr_params["var_res"] = (np.nan for _ in range(6)) logger.error("couldn't parse table for this kic: %s" % kic) else: curr_params["variable"] = 1 if arr[0] == "True" else 0 curr_params["var_bic_flat"] = arr[1] curr_params["var_bic_var"] = arr[2] curr_params["var_label_var"] = arr[3] curr_params["var_prob"] = arr[4] curr_params["var_res"] = self._parse_var_params(arr[5]) reses.append(curr_params) return reses
def get_kic10_params(self, kics, params): col_name_arr, type_arr = self._format_params(settings.kic10_dic, params) t = table_api(self.kic10_dir, "|", 1, 15, "\n") col_nos = t.get_col_nos(col_name_arr, settings.kic10_dic_keys) param_res = t.parse_table_dicts(col_nos, kics, type_arr, params) return param_res
def get_nonperiodic_params(self, kics, params): """ gets parameters for non-periodic stars from McQuillian [3] """ col_name_arr, type_arr = self._format_params(settings.nonperiodic_dic, params) t = table_api(self.nonperiodic_dir, ",", 1, 0) col_nos = t.get_col_nos(col_name_arr, settings.nonperiodic_dic_keys) param_res = t.parse_table_dicts(col_nos, kics, type_arr, params) return param_res
def get_gaia_params(self, kics, params): """ gets new parameters from Gaia mission from [1] data preceeds all other data from other databases """ col_name_arr, type_arr = self._format_params(settings.gaia_dic, params) t = table_api(self.gaia_dir, "&", 1, 0, "\\") col_nos = t.get_col_nos(col_name_arr, settings.gaia_dic_keys) param_res = t.parse_table_dicts(col_nos, kics, type_arr, params) return param_res
def get_updated_params(self, kics, params): """ gets new parameters from Mathur table [2] """ col_name_arr, type_arr = self._format_params(settings.updated_dic, params) t = table_api(self.updated_dir, " ", 0, 0) col_nos = t.get_col_nos(col_name_arr, settings.updated_dic_keys) param_res = t.parse_table_dicts(col_nos, kics, type_arr, params) param_res = self._check_params_dic(param_res, params) return param_res
def get_lcs_qs(self, kics, lc_file): """ gets list of kepler quarters """ t = table_api(lc_file, delimiter=" ", skip_rows=0, kic_col_no=None) times = t.get_nth_col(0, float) qs = t.get_nth_col(1, int) years = t.get_nth_col(2, int) curr_params = { "qs": qs, "years": years } # same pointer, unchanged data reses = [curr_params] * len(kics) return reses
def get_lcs_imgs(self, kics, lc_file): """ gets star aperture from our database """ t = table_api(lc_file, delimiter=",", skip_rows=1, kic_col_no=0) arrs = t.parse_table_arrs(range(1, 905), kics=kics, types=[str] * 2 + [float] * 902) reses = [] for i, kic in enumerate(kics): curr_params = {} arr = arrs[i] if len(arr) == 0: curr_params["aperture"] = None logger.error("couldn't parse table for this kic: %s" % kic) else: curr_params["centers"] = arr[0:4] curr_params["aperture"] = arr[4:] reses.append(curr_params) return reses
def get_lcs_times_uncerts(self, kics, lc_file): """ gets calculated light curves, times, and uncertainties from our database """ t = table_api(lc_file, delimiter=",", skip_rows=1, kic_col_no=0) arrs = t.parse_table_arrs(range(1, 109), kics=kics, types=[float] * 108) reses = [] for i, kic in enumerate(kics): curr_params = {} arr = arrs[i] if len(arr) == 0: curr_params["lcs"], curr_params["flux_uncert"], \ curr_params["target_uncert"], curr_params["times"] = (np.nan for _ in range(4)) logger.error("couldn't parse table for this kic: %s" % kic) else: curr_params["lcs"] = arr[:52] curr_params["flux_uncert"] = arr[52:56] curr_params["target_uncert"] = arr[56:108] curr_params["times"] = map(float, t.get_nth_row(1)[1:53]) reses.append(curr_params) return reses