diff --git a/gui/src/aaregui/panels/smart_rotation_panel.py b/gui/src/aaregui/panels/smart_rotation_panel.py
index f9f41be9..1963c37c 100644
--- a/gui/src/aaregui/panels/smart_rotation_panel.py
+++ b/gui/src/aaregui/panels/smart_rotation_panel.py
@@ -4,7 +4,7 @@ from PySide6.QtCore import Slot, Qt, Signal
from PySide6.QtWidgets import QWidget, QGridLayout, QLabel, QFrame, QPushButton, QSpacerItem, QSizePolicy
from aaredaqlib.logger_config import setup_logger
-from aaredaqlib.models import DAQStatusModel, SimpleScanParameters
+from aaredaqlib.models import DAQStatusModel, SimpleScanParameters, CrystalSize
from aaredaqlib.rotation_scan import RotationScanRequest
from aaregui.panels.rotation_data_collection import add_data_to_path
from aaregui.widgets.number_line_edit import NumberLineEdit
@@ -22,6 +22,7 @@ class SimpleRotationSettingsPanel(QWidget):
self.n_images = 1
self.xtal_size_dose_rate_MGy_s = None
+ self.xtal_size = CrystalSize(x=0,y=0,z=0)
self.xtal_x = None
self.xtal_y = None
self.xtal_z = None
@@ -34,6 +35,7 @@ class SimpleRotationSettingsPanel(QWidget):
self._temperature = 100
self.__omega = 0
self._wilson_b = None
+ self.flux_ph_s = None
self.parameters = SimpleScanParameters()
self._prev_params = SimpleScanParameters()
@@ -197,17 +199,18 @@ class SimpleRotationSettingsPanel(QWidget):
self.visible_res_enter.update_value(v)
self.set_visible_resolution(v)
+
self._wilson_b = s.last_best_b_factor
if self._wilson_b is not None:
self.wilson_b_label.setText(f"{self._wilson_b:.2f}")
- xtal_size = s.crystal_size
- if xtal_size is not None:
+ self.xtal_size = s.crystal_size
+ if self.xtal_size is not None:
# clamp to control limits and update field; this will also trigger recalculation
- self.xtal_x = xtal_size.x
- self.xtal_y = xtal_size.y
- self.xtal_z = xtal_size.z
+ self.xtal_x = self.xtal_size.x
+ self.xtal_y = self.xtal_size.y
+ self.xtal_z = self.xtal_size.z
self.xtal_x_label.setText(f"{self.xtal_x:.2f}")
self.xtal_y_label.setText(f"{self.xtal_y:.2f}")
self.xtal_z_label.setText(f"{self.xtal_z:.2f}")
@@ -216,12 +219,12 @@ class SimpleRotationSettingsPanel(QWidget):
self.beam_size_label.setText(
f"{s.geom.beam_size_mm.x * 1000.0} x {s.geom.beam_size_mm.y * 1000.0}"
)
+ self.flux_ph_s = s.bl.flux_ph_s
self.flux_label.setText(f"{(s.bl.flux_ph_s / 1e9):.2f}")
if s.diffraction.wavelength_angstrom is None:
self.wavelength_label.setText("N/A")
else:
self.wavelength_label.setText(f"{s.diffraction.wavelength_angstrom:.3f}")
-
self.update_calculated_labels()
@Slot(float)
@@ -322,11 +325,24 @@ class SimpleRotationSettingsPanel(QWidget):
start_omega_deg=self.start_angle_enter.value,
incr_omega_deg=image_angle,
steps=self.n_images,
- transmission=self.transmission
+ transmission=self.transmission,
+ last_best_b_factor = self._wilson_b,
+ crystal_size = self.xtal_size,
+ flux_ph_s = self.flux_ph_s,
+ calculated_dose_rate_MGy_s = self.dose_rate_MGy_s,
+ xtal_size_dose_rate_MGy_s = self.xtal_size_dose_rate_MGy_s,
+ target_dose_MGy = self.target_dose_MGy,
+ beam_size_x_um = beam_size_um_x,
+ beam_size_y_um = beam_size_um_y,
+ d_vis = d_vis,
+ d_tar = d_tar
)
+
+ #logger.debug("updated labels")
self._prev_params = self.parameters
if self._prev_params != self.parameters:
self.parameters_changed.emit(self.parameters)
+ logger.debug("emitted parameters")
@Slot()
def run_measurement(self):