MCPcopy Create free account
hub / github.com/NSLS2/PyXRF / get_selected_emission_line_data

Method get_selected_emission_line_data

pyxrf/model/parameters.py:1165–1194  ·  view source on GitHub ↗

Assembles the full emission line data for processing. Returns ------- list(dict) Each dictionary includes the following data: "name" (e.g. Ca_ka1 etc.), "area" (estimated peak area based on current fitting results), "ratio" (ratio

(self)

Source from the content-addressed store, hash-verified

1163 return K_LINE + L_LINE + M_LINE
1164
1165 def get_selected_emission_line_data(self):
1166 """
1167 Assembles the full emission line data for processing.
1168
1169 Returns
1170 -------
1171 list(dict)
1172 Each dictionary includes the following data: "name" (e.g. Ca_ka1 etc.),
1173 "area" (estimated peak area based on current fitting results), "ratio"
1174 (ratio such as Ca_ka2/Ca_ka1)
1175 """
1176 # Full list of supported emission lines (such as Ca_K)
1177 supported_elines = self.get_user_peak_list()
1178 # Parameter keys start with full emission line name (eg. Ca_ka1)
1179 param_keys = list(self.param_new.keys())
1180
1181 incident_energy = self.param_new["coherent_sct_energy"]["value"]
1182
1183 full_line_list = []
1184 for eline in self.EC.element_dict.keys():
1185 if eline not in supported_elines:
1186 continue
1187 area = self.EC.element_dict[eline].area
1188 lines = [_ for _ in param_keys if _.lower().startswith(eline.lower())]
1189 lines = set(["_".join(_.split("_")[:2]) for _ in lines])
1190 for ln in lines:
1191 eline_info = get_eline_parameters(ln, incident_energy)
1192 data = {"name": ln, "area": area, "ratio": eline_info["ratio"], "energy": eline_info["energy"]}
1193 full_line_list.append(data)
1194 return full_line_list
1195
1196 def guess_pileup_peak_components(self, energy, tolerance=0.05):
1197 """

Callers 1

Calls 3

get_user_peak_listMethod · 0.95
get_eline_parametersFunction · 0.85
keysMethod · 0.80

Tested by

no test coverage detected