From 37a6c75631961f0f9bbe57fcecdb9c4cb9462081 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 16:50:56 -0700 Subject: [PATCH 01/35] Add column_names module (iss #25) --- Metallicity_Stack_Commons/column_names.py | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 Metallicity_Stack_Commons/column_names.py diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py new file mode 100644 index 0000000..d84f1c7 --- /dev/null +++ b/Metallicity_Stack_Commons/column_names.py @@ -0,0 +1,4 @@ +# These are common/general column names + +bin_names0 = ['bin_ID', 'N_stack', 'Detection'] + From 064e69c99f0d135b70b75a859543c68227820814 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 16:53:19 -0700 Subject: [PATCH 02/35] column_names: Add indv_names0 list (issue #25) --- Metallicity_Stack_Commons/column_names.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index d84f1c7..2f5683f 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -2,3 +2,5 @@ bin_names0 = ['bin_ID', 'N_stack', 'Detection'] +indv_names0 = ['ID', 'R23', 'O32'] + From cde2a2074da0cd9fff76e3329c1436e78e515aa9 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 16:54:34 -0700 Subject: [PATCH 03/35] column_names: Add bin_mzevolve_names0 list (issue #25) --- Metallicity_Stack_Commons/column_names.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 2f5683f..6ef6681 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -4,3 +4,4 @@ indv_names0 = ['ID', 'R23', 'O32'] +bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logLHb', 'logLHb_min', 'logLHb_max'] From c174f21945b7a643637c5f03a5470f76cc134ccf Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 16:55:55 -0700 Subject: [PATCH 04/35] column_names: Add bin_zcalbase_names0 list (issue #25) --- Metallicity_Stack_Commons/column_names.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 6ef6681..7f4e720 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -5,3 +5,6 @@ indv_names0 = ['ID', 'R23', 'O32'] bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logLHb', 'logLHb_min', 'logLHb_max'] + +bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logO32_min', 'logO32_max', 'logO32_avg'] + From 16acb11aff1038ae1d951554afc128c3c64ee9fc Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 16:56:22 -0700 Subject: [PATCH 05/35] column_names: Fix typo in bin_mzevolve_names0 (issue #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 7f4e720..2c227e6 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -4,7 +4,7 @@ indv_names0 = ['ID', 'R23', 'O32'] -bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logLHb', 'logLHb_min', 'logLHb_max'] +bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logLHb_min', 'logLHb_max', 'logLHb_avg'] bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logO32_min', 'logO32_max', 'logO32_avg'] From e9af9d84ef3d6eb3804dfabe254283a87be201c5 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 21:53:58 -0700 Subject: [PATCH 06/35] column_names: Add merge_column_names function (iss #25) --- Metallicity_Stack_Commons/column_names.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 2c227e6..9cba85e 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -8,3 +8,24 @@ bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logO32_min', 'logO32_max', 'logO32_avg'] + +def merge_column_names(*args): + """ + Purpose: + Merges multiple lists containing column names. + + Usage: + column_names = merge_column_names(bin_names0, indv_names0) + + :param args: An undefined number of lists + :return merge_list: + """ + + merge_list = [] + + arg_count = len(args) + if arg_count > 0: + for elem in args: + merge_list += elem + + return merge_list From e3fa946be3f7f2525294d7799f778ca97d659c70 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 21:56:19 -0700 Subject: [PATCH 07/35] column_names: Additional minor documentation (iss #25) --- Metallicity_Stack_Commons/column_names.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 9cba85e..4e97707 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -1,11 +1,15 @@ # These are common/general column names +# Column names for bin information bin_names0 = ['bin_ID', 'N_stack', 'Detection'] +# Column names for individual galaxies/spectra indv_names0 = ['ID', 'R23', 'O32'] +# Column names for bin information in stellar mass and H-beta luminosity bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logLHb_min', 'logLHb_max', 'logLHb_avg'] +# Column names for bin information in R23 and O32 line ratios bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logO32_min', 'logO32_max', 'logO32_avg'] From 992a3f748b5bf9d75c98e52da8c30ed6ead88e55 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 22:05:21 -0700 Subject: [PATCH 08/35] column_names: Add gauss_lines_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 4e97707..61c670f 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -1,3 +1,5 @@ +from . import line_name + # These are common/general column names # Column names for bin information @@ -12,6 +14,11 @@ # Column names for bin information in R23 and O32 line ratios bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logO32_min', 'logO32_max', 'logO32_avg'] +# Column names for Gaussian fitting +gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Sigma', 'Norm'] # This is just the suffix +gauss_lines_names0 = [] +for line0 in line_name: + gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in gauss_names0] def merge_column_names(*args): """ From f473382d0fe0798d8516f8b29951b9c39dca4f60 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Wed, 19 Feb 2020 22:13:59 -0700 Subject: [PATCH 09/35] column_names: Add temp_metal_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 61c670f..f084878 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -20,6 +20,10 @@ for line0 in line_name: gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in gauss_names0] +# Temperature and metallicity properties +temp_metal_names0 = ['T_e', '12+log(O/H)', '12+log(O+/H)', '12+log(O++/H)', 'log(O+/H)', 'log(O++/H)'] + + def merge_column_names(*args): """ Purpose: From aced264eeeba8b8854d79d38292272d528c35bb7 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 20 Feb 2020 08:26:13 -0700 Subject: [PATCH 10/35] column_names: Change names to be consistent with definitions in temp_metal_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index f084878..a1eb66f 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -21,7 +21,7 @@ gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in gauss_names0] # Temperature and metallicity properties -temp_metal_names0 = ['T_e', '12+log(O/H)', '12+log(O+/H)', '12+log(O++/H)', 'log(O+/H)', 'log(O++/H)'] +temp_metal_names0 = ['T_e', '12+log(O/H)', 'log(O+/H)', 'log(O++/H)', 'O+/H', 'O++/H'] def merge_column_names(*args): From 311ab05bd14bd34252e7923ab90cedfcb1dd6d9a Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 20 Feb 2020 08:36:40 -0700 Subject: [PATCH 11/35] column_names: Add remove_from_list function (iss #25) --- Metallicity_Stack_Commons/column_names.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index a1eb66f..6b70ccc 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -44,3 +44,16 @@ def merge_column_names(*args): merge_list += elem return merge_list + + +def remove_from_list(list0, remove_entries): + """ + Purpose: + Remove entries from list + + :param list0: list of column names + :param remove_entries: list of column names to remove + """ + + for entry in remove_entries: + list0.remove(entry) From 14a79fd559d84f89207c83a143479522387ab5e4 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 20 Feb 2020 08:41:25 -0700 Subject: [PATCH 12/35] column_names.remove_from_list: Return a list (does not modify original) iss #25 --- Metallicity_Stack_Commons/column_names.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 6b70ccc..94a0d26 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -55,5 +55,9 @@ def remove_from_list(list0, remove_entries): :param remove_entries: list of column names to remove """ + dup_list0 = list0.copy() + for entry in remove_entries: - list0.remove(entry) + dup_list0.remove(entry) + + return dup_list0 \ No newline at end of file From 7330e45aa8585055f09b46ead9d5314e4611262d Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 20 Feb 2020 08:44:34 -0700 Subject: [PATCH 13/35] temp_metallicity_calc.metallicity_calculation: Use column_names module for [metal_dict] (iss #25) --- Metallicity_Stack_Commons/temp_metallicity_calc.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Metallicity_Stack_Commons/temp_metallicity_calc.py b/Metallicity_Stack_Commons/temp_metallicity_calc.py index 839cdb6..5c1af77 100644 --- a/Metallicity_Stack_Commons/temp_metallicity_calc.py +++ b/Metallicity_Stack_Commons/temp_metallicity_calc.py @@ -2,6 +2,8 @@ from . import k_dict +from .column_names import temp_metal_names0, remove_from_list + k_4363 = k_dict['OIII_4363'] k_5007 = k_dict['OIII_5007'] @@ -73,7 +75,8 @@ def metallicity_calculation(T_e, TWO_BETA, THREE_BETA): com_O = O_s_ion + O_d_ion com_O_log = np.log10(com_O) + 12 - metal_dict = dict(O_s_ion=O_s_ion, O_d_ion=O_d_ion, - O_s_ion_log=O_s_ion_log, O_d_ion_log=O_d_ion_log) + key_dict = remove_from_list(temp_metal_names0, ['T_e', '12+log(O/H)']) + key_values = [O_s_ion_log, O_d_ion_log, O_s_ion, O_d_ion] # Order matters here + metal_dict = dict(zip(key_dict, key_values)) return com_O_log, metal_dict From fcf3e0e02bd402725ba6cdd28ddd2fad1face604 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 20 Feb 2020 08:51:34 -0700 Subject: [PATCH 14/35] column_names: Minor fixes for clarity, PEP8 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 94a0d26..2fd6d7a 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -36,7 +36,7 @@ def merge_column_names(*args): :return merge_list: """ - merge_list = [] + merge_list = list() arg_count = len(args) if arg_count > 0: @@ -60,4 +60,4 @@ def remove_from_list(list0, remove_entries): for entry in remove_entries: dup_list0.remove(entry) - return dup_list0 \ No newline at end of file + return dup_list0 From 1ecaf7a43be2b614492918c1f727be60b2b0cdf1 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Fri, 21 Feb 2020 08:46:59 -0700 Subject: [PATCH 15/35] column_names: Define filename_dict dictionary (iss #25) --- Metallicity_Stack_Commons/column_names.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 2fd6d7a..d6480af 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -23,6 +23,11 @@ # Temperature and metallicity properties temp_metal_names0 = ['T_e', '12+log(O/H)', 'log(O+/H)', 'log(O++/H)', 'O+/H', 'O++/H'] +# Dictionary containing filenames +filename_dict = {} +filename_dict['bin_info'] = 'bin_info.tbl' +filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' + def merge_column_names(*args): """ From c4fc361ddd84f7f0d50764a9fa01daa38a2fe3aa Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:04:58 -0700 Subject: [PATCH 16/35] column_names: Add bin_fit_revised to filename_dict (iss #25) --- Metallicity_Stack_Commons/column_names.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index d6480af..099ffd5 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -27,6 +27,7 @@ filename_dict = {} filename_dict['bin_info'] = 'bin_info.tbl' filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' +filename_dict['bin_fit_revised'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') def merge_column_names(*args): From b0540bf822cc61de51c8cfeac2a7516d87056e2c Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:05:29 -0700 Subject: [PATCH 17/35] column_names: Use dict literal (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 099ffd5..54be5f8 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -24,7 +24,7 @@ temp_metal_names0 = ['T_e', '12+log(O/H)', 'log(O+/H)', 'log(O++/H)', 'O+/H', 'O++/H'] # Dictionary containing filenames -filename_dict = {} +filename_dict = dict() filename_dict['bin_info'] = 'bin_info.tbl' filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' filename_dict['bin_fit_revised'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') From 23fed9d65ca9d4da656c816a08058d7136bd68e1 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:21:23 -0700 Subject: [PATCH 18/35] column_names: Add bin_derived_prop and bin_derived_prop_rev in filename_dict (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 54be5f8..4ba4b5a 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -28,6 +28,8 @@ filename_dict['bin_info'] = 'bin_info.tbl' filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' filename_dict['bin_fit_revised'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') +filename_dict['bin_derived_prop'] = 'bin_derived_properties.tbl' +filename_dict['bin_derived_prop_rev'] = filename_dict['bin_derived_prop'].replace('.tbl', '.revised.tbl') def merge_column_names(*args): From ba79f4182103e4a8b6bd2dd36b742fb9cc7ba752 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:22:05 -0700 Subject: [PATCH 19/35] column_names: Shorten key name in filename_dict: bin_fit_revised -> bin_fit_rev (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 4ba4b5a..66a3d33 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -27,7 +27,7 @@ filename_dict = dict() filename_dict['bin_info'] = 'bin_info.tbl' filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' -filename_dict['bin_fit_revised'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') +filename_dict['bin_fit_rev'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') filename_dict['bin_derived_prop'] = 'bin_derived_properties.tbl' filename_dict['bin_derived_prop_rev'] = filename_dict['bin_derived_prop'].replace('.tbl', '.revised.tbl') From 8a3f8f54df21abf95d1db0cb88bd57f6098c2d1c Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:23:22 -0700 Subject: [PATCH 20/35] column_names: Add bin_valid in filename_dict (iss #25) --- Metallicity_Stack_Commons/column_names.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 66a3d33..e4e3d8b 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -26,6 +26,7 @@ # Dictionary containing filenames filename_dict = dict() filename_dict['bin_info'] = 'bin_info.tbl' +filename_dict['bin_valid'] = 'bin_validation.tbl' filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' filename_dict['bin_fit_rev'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') filename_dict['bin_derived_prop'] = 'bin_derived_properties.tbl' From 0320c9a671573cfa87f541b41711c33868922fe2 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:34:17 -0700 Subject: [PATCH 21/35] column_names: Add indv_derived_prop in filename_dict (iss #25) --- Metallicity_Stack_Commons/column_names.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index e4e3d8b..07a3b1b 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -31,6 +31,7 @@ filename_dict['bin_fit_rev'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') filename_dict['bin_derived_prop'] = 'bin_derived_properties.tbl' filename_dict['bin_derived_prop_rev'] = filename_dict['bin_derived_prop'].replace('.tbl', '.revised.tbl') +filename_dict['indv_derived_prop'] = 'indv_derived_properties.tbl' def merge_column_names(*args): From b04a93aa5d5e55898ececa5c91a96bb1174791f6 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 09:43:16 -0700 Subject: [PATCH 22/35] column_names: Add median column names in bin_mzevolve_names0 and bin_zcalbase_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 07a3b1b..b811a5f 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -9,10 +9,12 @@ indv_names0 = ['ID', 'R23', 'O32'] # Column names for bin information in stellar mass and H-beta luminosity -bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logLHb_min', 'logLHb_max', 'logLHb_avg'] +bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logM_median', + 'logLHb_min', 'logLHb_max', 'logLHb_avg', 'logLHb_median'] # Column names for bin information in R23 and O32 line ratios -bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logO32_min', 'logO32_max', 'logO32_avg'] +bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logR23_median', + 'logO32_min', 'logO32_max', 'logO32_avg', 'logO32_median'] # Column names for Gaussian fitting gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Sigma', 'Norm'] # This is just the suffix From 746f03703fc49bf17a3d00ee63cf749e20eda43e Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 10:05:05 -0700 Subject: [PATCH 23/35] column_names: Add individual filenames in filename_dict; additional comments for documentation (iss #25) --- Metallicity_Stack_Commons/column_names.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index b811a5f..6404549 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -27,13 +27,18 @@ # Dictionary containing filenames filename_dict = dict() + +# Bin-related files filename_dict['bin_info'] = 'bin_info.tbl' filename_dict['bin_valid'] = 'bin_validation.tbl' filename_dict['bin_fit'] = 'bin_emission_line_fit.tbl' filename_dict['bin_fit_rev'] = filename_dict['bin_fit'].replace('.tbl', '.revised.tbl') filename_dict['bin_derived_prop'] = 'bin_derived_properties.tbl' filename_dict['bin_derived_prop_rev'] = filename_dict['bin_derived_prop'].replace('.tbl', '.revised.tbl') -filename_dict['indv_derived_prop'] = 'indv_derived_properties.tbl' + +# Individual galaxy/spectra-related files +filename_dict['indv_prop'] = 'individual_properties.tbl' +filename_dict['indv_derived_prop'] = 'individual_derived_properties.tbl' def merge_column_names(*args): From b1c1b86aea7591255771dd97a827aded5617039b Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 12:14:00 -0700 Subject: [PATCH 24/35] column_names: Add indv_bin_info in filename_dict (iss #25) --- Metallicity_Stack_Commons/column_names.py | 1 + 1 file changed, 1 insertion(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 6404549..8fac86b 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -38,6 +38,7 @@ # Individual galaxy/spectra-related files filename_dict['indv_prop'] = 'individual_properties.tbl' +filename_dict['indv_bin_info'] = 'individual_bin_info.tbl' filename_dict['indv_derived_prop'] = 'individual_derived_properties.tbl' From e8b6c5c3bac3abb776bca25e2c02752879bfd0bb Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 12:34:19 -0700 Subject: [PATCH 25/35] column_names: Add Median and Center in gauss_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 8fac86b..3e1d6f7 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -17,7 +17,9 @@ 'logO32_min', 'logO32_max', 'logO32_avg', 'logO32_median'] # Column names for Gaussian fitting -gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Sigma', 'Norm'] # This is just the suffix +# This is just the suffix +gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Center', 'Norm', + 'Median', 'Sigma'] gauss_lines_names0 = [] for line0 in line_name: gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in gauss_names0] From ad0b5fd0e9e50364e123192718701ddf463cbbd7 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Sat, 22 Feb 2020 12:38:36 -0700 Subject: [PATCH 26/35] column_names: Define balmer_names0, pass into gauss_lines_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 3e1d6f7..0da51a3 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -1,4 +1,4 @@ -from . import line_name +from . import line_name, line_type # These are common/general column names @@ -20,9 +20,12 @@ # This is just the suffix gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Center', 'Norm', 'Median', 'Sigma'] +balmer_names0 = ['Abs_Norm', 'Abs_Sigma'] gauss_lines_names0 = [] -for line0 in line_name: +for line0, type0 in zip(line_name, line_type): gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in gauss_names0] + if type0 == 'Balmer': + gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in balmer_names0] # Temperature and metallicity properties temp_metal_names0 = ['T_e', '12+log(O/H)', 'log(O+/H)', 'log(O++/H)', 'O+/H', 'O++/H'] From b748136f5335f99773190f8b75acbd406da0164d Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Mon, 24 Feb 2020 19:33:19 -0700 Subject: [PATCH 27/35] column_names: Change R23 and O32 to log names (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 0da51a3..3bc1ed2 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -6,7 +6,7 @@ bin_names0 = ['bin_ID', 'N_stack', 'Detection'] # Column names for individual galaxies/spectra -indv_names0 = ['ID', 'R23', 'O32'] +indv_names0 = ['ID', 'logR23', 'logO32'] # Column names for bin information in stellar mass and H-beta luminosity bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logM_median', From b21b912ec724e1204d6e3ff44daaea6e2cec06be Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Mon, 24 Feb 2020 19:34:34 -0700 Subject: [PATCH 28/35] column_names: Add logM and logLHb in indv_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 3bc1ed2..4227014 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -6,7 +6,7 @@ bin_names0 = ['bin_ID', 'N_stack', 'Detection'] # Column names for individual galaxies/spectra -indv_names0 = ['ID', 'logR23', 'logO32'] +indv_names0 = ['ID', 'logR23', 'logO32', 'logM', 'logLHb'] # Column names for bin information in stellar mass and H-beta luminosity bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logM_median', From 96d73b4535b3cfe0799344593a601f578be89be9 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Mon, 24 Feb 2020 19:44:29 -0700 Subject: [PATCH 29/35] column_names: Add line_fit_suffix_add function (iss #25) --- Metallicity_Stack_Commons/column_names.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 4227014..af130cc 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -84,3 +84,21 @@ def remove_from_list(list0, remove_entries): dup_list0.remove(entry) return dup_list0 + + +def line_fit_suffix_add(line_name0, line_type0): + """ + Purpose: + Simple list comprehension combining emission line fit suffixes with + the emission line. This works for individual lines + + :param line_name0: str containing the line name + :param line_type0: str containing the emisison-line type (e.g., 'Balmer') + :return: gauss_lines_names: list with str formatted as [LINE]_[SUFFIX] + """ + + gauss_lines_names = ['{}_{}'.format(line_name0, suffix) for suffix in gauss_names0] + if line_type0 == 'Balmer': + gauss_lines_names += ['{}_{}'.format(line_name0, suffix) for suffix in balmer_names0] + + return gauss_lines_names From 718babdf52d707572ddcd68aa52ab145e9334588 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Mon, 24 Feb 2020 19:53:26 -0700 Subject: [PATCH 30/35] column_names: Use line_fit_suffix_add in gauss_lines_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 45 ++++++++++++----------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index af130cc..35a7829 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -1,5 +1,25 @@ from . import line_name, line_type + +# Need to define here +def line_fit_suffix_add(line_name0, line_type0): + """ + Purpose: + Simple list comprehension combining emission line fit suffixes with + the emission line. This works for individual lines + + :param line_name0: str containing the line name + :param line_type0: str containing the emisison-line type (e.g., 'Balmer') + :return: gauss_lines_names: list with str formatted as [LINE]_[SUFFIX] + """ + + gauss_lines_names = ['{}_{}'.format(line_name0, suffix) for suffix in gauss_names0] + if line_type0 == 'Balmer': + gauss_lines_names += ['{}_{}'.format(line_name0, suffix) for suffix in balmer_names0] + + return gauss_lines_names + + # These are common/general column names # Column names for bin information @@ -21,11 +41,12 @@ gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Center', 'Norm', 'Median', 'Sigma'] balmer_names0 = ['Abs_Norm', 'Abs_Sigma'] + +# Emission-line fit column names with [LINE] prefix gauss_lines_names0 = [] for line0, type0 in zip(line_name, line_type): - gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in gauss_names0] - if type0 == 'Balmer': - gauss_lines_names0 += ['{}_{}'.format(line0, suffix) for suffix in balmer_names0] + gauss_lines_names0 += line_fit_suffix_add(line0, type0) + # Temperature and metallicity properties temp_metal_names0 = ['T_e', '12+log(O/H)', 'log(O+/H)', 'log(O++/H)', 'O+/H', 'O++/H'] @@ -84,21 +105,3 @@ def remove_from_list(list0, remove_entries): dup_list0.remove(entry) return dup_list0 - - -def line_fit_suffix_add(line_name0, line_type0): - """ - Purpose: - Simple list comprehension combining emission line fit suffixes with - the emission line. This works for individual lines - - :param line_name0: str containing the line name - :param line_type0: str containing the emisison-line type (e.g., 'Balmer') - :return: gauss_lines_names: list with str formatted as [LINE]_[SUFFIX] - """ - - gauss_lines_names = ['{}_{}'.format(line_name0, suffix) for suffix in gauss_names0] - if line_type0 == 'Balmer': - gauss_lines_names += ['{}_{}'.format(line_name0, suffix) for suffix in balmer_names0] - - return gauss_lines_names From 888e0290980faaa3bd63543b606a5cac9e352a59 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Mon, 24 Feb 2020 19:58:18 -0700 Subject: [PATCH 31/35] column_names: Add indv_R23_O32 function (iss #25) --- Metallicity_Stack_Commons/column_names.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 35a7829..318e4f9 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -105,3 +105,14 @@ def remove_from_list(list0, remove_entries): dup_list0.remove(entry) return dup_list0 + + +def indv_R23_O32(): + """ + Purpose: + Use remove_from_list() to provide simplified list that contains ID, logR23 and logO32 + + :return: list containing just ID, logR23, logO32 + """ + + return remove_from_list(indv_names0, ['logM', 'logLHb']) From b17c34bcb5d49c67f7bbd33a7b76534e28e12c89 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Mon, 24 Feb 2020 19:59:27 -0700 Subject: [PATCH 32/35] column_names: Add indv_M_LHb function (iss #25) --- Metallicity_Stack_Commons/column_names.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 318e4f9..0cb5c2d 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -116,3 +116,14 @@ def indv_R23_O32(): """ return remove_from_list(indv_names0, ['logM', 'logLHb']) + + +def indv_M_LHb(): + """ + Purpose: + Use remove_from_list() to provide simplified list that contains ID, logM and logLHb + + :return: list containing just ID, logM, logLHb + """ + + return remove_from_list(indv_names0, ['logR23', 'logO32']) From 170ead888d3688d2128bba3c5e74322e6fb1e579 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 27 Feb 2020 08:21:23 -0700 Subject: [PATCH 33/35] column_names: Add bin_ratios0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index 0cb5c2d..b1b5216 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -36,6 +36,10 @@ def line_fit_suffix_add(line_name0, line_type0): bin_zcalbase_names0 = ['logR23_min', 'logR23_max', 'logR23_avg', 'logR23_median', 'logO32_min', 'logO32_max', 'logO32_avg', 'logO32_median'] +# Column names for composite line ratios +bin_ratios0 = ['logR23_composite', 'logO32_composite', + 'two_beta_composite', 'three_beta_composite'] + # Column names for Gaussian fitting # This is just the suffix gauss_names0 = ['Flux_Gaussian', 'Flux_Observed', 'S/N', 'Center', 'Norm', From 4c9e940e63ede1d48438abe0ccc5fc2afbf77033 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 27 Feb 2020 08:23:39 -0700 Subject: [PATCH 34/35] column_names: Add two_beta and three_beta to indv_names0 (iss #25) --- Metallicity_Stack_Commons/column_names.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index b1b5216..edf0f27 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -26,7 +26,7 @@ def line_fit_suffix_add(line_name0, line_type0): bin_names0 = ['bin_ID', 'N_stack', 'Detection'] # Column names for individual galaxies/spectra -indv_names0 = ['ID', 'logR23', 'logO32', 'logM', 'logLHb'] +indv_names0 = ['ID', 'logR23', 'logO32', 'logM', 'logLHb', 'two_beta', 'three_beta'] # Column names for bin information in stellar mass and H-beta luminosity bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logM_median', From 24003ea426543f940071876bb01a22f04bca3a54 Mon Sep 17 00:00:00 2001 From: Chun Ly Date: Thu, 27 Feb 2020 08:27:01 -0700 Subject: [PATCH 35/35] column_names: Add dust0 list (iss #25) --- Metallicity_Stack_Commons/column_names.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Metallicity_Stack_Commons/column_names.py b/Metallicity_Stack_Commons/column_names.py index edf0f27..3ad850f 100644 --- a/Metallicity_Stack_Commons/column_names.py +++ b/Metallicity_Stack_Commons/column_names.py @@ -28,6 +28,9 @@ def line_fit_suffix_add(line_name0, line_type0): # Column names for individual galaxies/spectra indv_names0 = ['ID', 'logR23', 'logO32', 'logM', 'logLHb', 'two_beta', 'three_beta'] +# Dust attenuation +dust0 = ['E(B-V)', 'HgHb', 'HdHb'] + # Column names for bin information in stellar mass and H-beta luminosity bin_mzevolve_names0 = ['logM_min', 'logM_max', 'logM_avg', 'logM_median', 'logLHb_min', 'logLHb_max', 'logLHb_avg', 'logLHb_median']