actsnclass.LightCurve¶
-
class
actsnclass.
LightCurve
¶ Light Curve object, holding meta and photometric data.
Variables: - bazin_features_names (list) – List of names of the Bazin function parameters.
- bazin_features (list) – List with the 5 best-fit Bazin parameters in all filters. Concatenated from blue to red.
- dataset_name (str) – Name of the survey or data set being analyzed.
- filters (list) – List of broad band filters.
- id (int) – SN identification number
- photometry (pd.DataFrame) – Photometry information. Keys –> [mjd, band, flux, fluxerr, SNR, MAG, MAGERR].
- redshift (float) – Redshift
- sample (str) – Original sample to which this light curve is assigned
- sim_peakmag (np.array) – Simulated peak magnitude in each filter
- sncode (int) – Number identifying the SN model used in the simulation
- sntype (str) – General classification, possibilities are: Ia, II or Ibc
-
check_queryable
(mjd: float, r_lim: float)¶ Check if this light can be queried in a given day.
-
load_snpcc_lc
(path_to_data: str)¶ Reads header and photometric information for 1 light curve
-
fit_bazin
(band: str) → list¶ Calculates best-fit parameters from the Bazin function in 1 filter
-
fit_bazin_all
()¶ Calculates best-fit parameters from the Bazin func for all filters
-
plot_bazin_fit
(save: bool, show: bool, output_file: srt)¶ Plot photometric points and Bazin fitted curve
Examples
>>> from actsnclass import LightCurve
define path to light curve file
>>> path_to_lc = 'data/SIMGEN_PUBLIC_DES/DES_SN431546.DAT'
>>> lc = LightCurve() # create light curve instance >>> lc.load_snpcc_lc(path_to_lc) # read data >>> lc.photometry # display photometry mjd band flux fluxerr SNR 0 56207.188 g 9.6560 4.369 2.21 1 56207.195 r 6.3370 3.461 1.83 ... ... ... ... ... ... 96 56336.043 r 14.4300 3.098 4.66 97 56336.055 i 18.9500 5.029 3.77 [98 rows x 5 columns]
>>> lc.fit_bazin_all() # perform Bazin fit in all filters >>> lc.bazin_features # display Bazin parameters [62.0677260096896, -7.959383808822104, 47.37511467606875, 37.4919069623379, ... ... ... 206.65806244385922, -4.777010246622081]
plot light curve fit
>>> lc.plot_bazin_fit(output_file=str(lc.id) + '.png')
for fitting the entire sample…
>>> path_to_data_dir = 'data/SIMGEN_PUBLIC_DES/' # raw data directory >>> output_file = 'results/Bazin.dat' # output file >>> fit_snpcc_bazin(path_to_data_dir=path_to_data_dir, features_file=output_file)
a file with all Bazin fits for this data set was produced
-
__init__
()¶ Initialize self. See help(type(self)) for accurate signature.
Methods
__init__
()Initialize self. check_queryable
(mjd, r_lim)Check if this light can be queried in a given day. fit_bazin
(band)Extract Bazin features for one filter. fit_bazin_all
()Perform Bazin fit for all filters independently and concatenate results. load_snpcc_lc
(path_to_data)Reads one LC from SNPCC data. plot_bazin_fit
([save, show, output_file])Plot data and Bazin fitted function.