From 0e330426fe8cf94667bdaefcc76a1095010aae84 Mon Sep 17 00:00:00 2001 From: Philipp Schmidt <philipp.schmidt@xfel.eu> Date: Tue, 9 Apr 2024 15:31:56 +0200 Subject: [PATCH] Fix small issues and typos from testing --- .../Characterize_DynamicFF_NBC.ipynb | 27 ++++++++----------- .../DynamicFF/Correct_DynamicFF_NBC.ipynb | 13 ++++----- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/notebooks/DynamicFF/Characterize_DynamicFF_NBC.ipynb b/notebooks/DynamicFF/Characterize_DynamicFF_NBC.ipynb index dc41c2ed4..60b07daeb 100644 --- a/notebooks/DynamicFF/Characterize_DynamicFF_NBC.ipynb +++ b/notebooks/DynamicFF/Characterize_DynamicFF_NBC.ipynb @@ -22,15 +22,16 @@ "metadata_folder = \"\" # Directory containing calibration_metadata.yml when run by xfel-calibrate\n", "run_high = 1 # run number in which dark data was recorded, required\n", "run_low = 2 # run number in which flat-field data was recorded, required\n", - "operation_mode = \"TI_DynamicFF\" # Detector operation mode, optional (defaults to \"TI_DynamicFF\")\n", + "operation_mode = \"PCA_DynamicFF\" # Detector operation mode, optional (defaults to \"PCA_DynamicFF\")\n", "\n", "# Data files parameters.\n", "karabo_da = ['-1'] # data aggregators\n", "karabo_id = \"SPB_MIC_HPVX2\" # karabo prefix of Shimadzu HPV-X2 devices\n", "\n", "# Database access parameters.\n", - "cal_db_interface = \"tcp://max-exfl-cal001:8021\" # calibration DB interface to use\n", - "db_output = True # if True, the notebook sends dark constants to the calibration database\n", + "cal_db_interface = \"tcp://max-exfl-cal001:8021\" # Unused, calibration DB interface to use\n", + "cal_db_timeout = 30000 # Unused, calibration DB timeout\n", + "db_output = False # if True, the notebook sends dark constants to the calibration database\n", "local_output = True # if True, the notebook saves dark constants locally\n", "\n", "# Calibration constants parameters\n", @@ -63,10 +64,7 @@ "from cal_tools.step_timing import StepTimer\n", "from cal_tools.tools import (\n", " get_dir_creation_date,\n", - " get_random_db_interface,\n", - " get_report,\n", - " save_dict_to_hdf5,\n", - " run_prop_seq_from_path,\n", + " save_dict_to_hdf5\n", ")\n", "from cal_tools.restful_config import calibration_client\n", "from cal_tools.shimadzu import ShimadzuHPVX2\n", @@ -81,16 +79,12 @@ "metadata": {}, "outputs": [], "source": [ - "cal_db_interface = get_random_db_interface(cal_db_interface)\n", - "print(f'Calibration database interface: {cal_db_interface}')\n", - "print()\n", - "\n", "cc = calibration_client()\n", "pdus = cc.get_all_phy_det_units_from_detector(\n", - " {\"detector_identifier\": karabo_id})\n", + " {\"detector_identifier\": karabo_id}) # TODO: Use creation_time for snapshot_at\n", "\n", "if not pdus[\"success\"]:\n", - " raise ValueException(\"Failed to retrieve PDUs\")\n", + " raise ValueError(\"Failed to retrieve PDUs\")\n", "\n", "detector_info = pdus['data'][0]['detector']\n", "detector = ShimadzuHPVX2(detector_info[\"source_name_pattern\"])\n", @@ -117,6 +111,7 @@ " )\n", "\n", "constants = {}\n", + "\n", "step_timer = StepTimer()" ] }, @@ -165,7 +160,7 @@ "\n", " # process\n", " step_timer.start()\n", - " dark = dffc.process_dark(images_dark)\n", + " dark = dffc.process_dark(images_dark) # Amounts to a per-pixel mean right now.\n", "\n", " # put results in the dict\n", " module_constants = constants.setdefault(meta[\"db_module\"], {})\n", @@ -224,8 +219,8 @@ " dark_conditions = constants[meta[\"db_module\"]][\"Offset\"][\"conditions\"]\n", "\n", " if conditions != dark_conditions:\n", - " ValueError(\"The conditions for flat-field run does not match \"\n", - " \"the dark run conditions. Skip flat-field characterization.\")\n", + " raise ValueError(f\"The conditions for flat-field run {conditions}) do not match \"\n", + " f\"the dark run conditions ({dark_conditions}). Skip flat-field characterization.\")\n", "\n", " key_data = flat_dc[source_name][image_key]\n", " images_flat = key_data.ndarray()\n", diff --git a/notebooks/DynamicFF/Correct_DynamicFF_NBC.ipynb b/notebooks/DynamicFF/Correct_DynamicFF_NBC.ipynb index c3a875eca..e570cdf6d 100644 --- a/notebooks/DynamicFF/Correct_DynamicFF_NBC.ipynb +++ b/notebooks/DynamicFF/Correct_DynamicFF_NBC.ipynb @@ -27,7 +27,8 @@ "karabo_id = \"SPB_MIC_HPVX2\" # karabo prefix of Shimadzu HPV-X2 devices\n", "\n", "# Database access parameters.\n", - "cal_db_interface = \"tcp://max-exfl-cal001:8021\" # calibration DB interface to use\n", + "cal_db_interface = \"tcp://max-exfl-cal001:8021\" # Unused, calibration DB interface to use\n", + "cal_db_timeout = 30000 # Unused, calibration DB timeout\n", "\n", "# Correction parameters\n", "n_components = 20 # number of principal components of flat-field to use in correction\n", @@ -83,10 +84,10 @@ "\n", "cc = calibration_client()\n", "pdus = cc.get_all_phy_det_units_from_detector(\n", - " {\"detector_identifier\": karabo_id})\n", + " {\"detector_identifier\": karabo_id}) # TODO: Use creation_time for snapshot_at\n", "\n", "if not pdus[\"success\"]:\n", - " raise ValueException(\"Failed to retrieve PDUs\")\n", + " raise ValueError(\"Failed to retrieve PDUs\")\n", "\n", "detector_info = pdus['data'][0]['detector']\n", "detector = ShimadzuHPVX2(detector_info[\"source_name_pattern\"])\n", @@ -218,7 +219,7 @@ " # correct and write sequence files\n", " for seq_id, train_mask in sequence_trains(train_ids, 200):\n", " step_timer.start()\n", - " print('* sequience', seq_id)\n", + " print('* sequence', seq_id)\n", " seq_train_ids = train_ids[train_mask]\n", " seq_timestamps = ts[train_mask]\n", " dc_seq = dc.select_trains(by_id[seq_train_ids])\n", @@ -238,8 +239,8 @@ " for da in process_modules:\n", " instrument_source = modules[da][\"raw_source_name\"]\n", " keydata = dc_seq[instrument_source][image_key].drop_empty_trains()\n", - " count = keydata.data_counts()\n", - " i = np.flatnonzero(count.values)\n", + " count = keydata.data_counts(labelled=False)\n", + " i = np.flatnonzero(count)\n", " raw_images = keydata.select_trains(np.s_[i]).ndarray()\n", "\n", " # not pulse resolved\n", -- GitLab