diff --git a/notebooks/AGIPD/Characterize_AGIPD_Gain_Darks_NBC.ipynb b/notebooks/AGIPD/Characterize_AGIPD_Gain_Darks_NBC.ipynb index ada299a6fc235f7c7d976b112001ee72a57eeca7..c96767431c649a4f1a9caedcb257bc67cb764b11 100644 --- a/notebooks/AGIPD/Characterize_AGIPD_Gain_Darks_NBC.ipynb +++ b/notebooks/AGIPD/Characterize_AGIPD_Gain_Darks_NBC.ipynb @@ -654,29 +654,49 @@ "metadata": {}, "outputs": [], "source": [ - "md = None\n", - "\n", - "for qm in res:\n", - " db_module = qm_dict[qm][\"db_module\"]\n", - " for const in res[qm]:\n", - " dconst = getattr(iCalibrationDB.Constants.AGIPD, const)()\n", - " dconst.data = res[qm][const]\n", - "\n", - " if db_output:\n", - " md = send_to_db(db_module, karabo_id, dconst, condition, file_loc,\n", - " report, cal_db_interface, creation_time=creation_time,\n", - " timeout=cal_db_timeout)\n", - "\n", - " if local_output:\n", - " md = save_const_to_h5(db_module, karabo_id, dconst, condition, dconst.data,\n", - " file_loc, report, creation_time, out_folder)\n", - " print(f\"Calibration constant {const} for {qm} is stored locally in {file_loc}.\\n\")\n", - "\n", - " print(\"Constants parameter conditions are:\\n\")\n", - " print(f\"• memory_cells: {max_cells}\\n• bias_voltage: {bias_voltage}\\n\"\n", - " f\"• acquisition_rate: {acq_rate}\\n• gain_setting: {gain_setting}\\n\"\n", - " f\"• gain_mode: {fixed_gain_mode}\\n\"\n", - " f\"• creation_time: {md.calibration_constant_version.begin_at if md is not None else creation_time}\\n\")" + "# Retrieve existing constants for comparison\n", + "qm_x_const = [(qm, const) for const in res[qm] for qm in res]\n", + "print('Retrieve pre-existing constants for comparison.')\n", + "def boom(qm, const):\n", + " qm_db = qm_dict[qm]\n", + " this_karabo_da = qm_db[\"karabo_da\"]\n", + " dconst = getattr(iCalibrationDB.Constants.AGIPD, const)()\n", + "\n", + " # This should be used in case of running notebook\n", + " # by a different method other than myMDC which already\n", + " # sends CalCat info.\n", + " # TODO: Set db_module to \"\" by default in the first cell\n", + "\n", + " data, mdata = get_from_db(\n", + " karabo_id, \n", + " this_karabo_da,\n", + " constant=dconst,\n", + " condition=condition,\n", + " empty_constant=None,\n", + " cal_db_interface=cal_db_interface,\n", + " creation_time=creation_time,\n", + " verbosity=2,\n", + " timeout=cal_db_timeout\n", + " )\n", + "\n", + " if mdata is None or data is None:\n", + " timestamp = \"Not found\"\n", + " else:\n", + " timestamp = mdata.calibration_constant_version.begin_at.isoformat()\n", + " \n", + " return data, timestamp\n", + "\n", + "old_retrieval_pool = multiprocessing.Pool()\n", + "old_retrieval_res = old_retrieval_pool.starmap_async(boom, qm_x_const)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "old_retrieval_pool.close()" ] }, { @@ -926,6 +946,13 @@ " old_mdata.setdefault(qm, {})[const] = timestamp" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, { "cell_type": "code", "execution_count": null,