Skip to content

Commit 3fc0c87

Browse files
committed
Merge branch 'develop' into 16-investigate-if-calculate_pattern-returning-y_calc_total-is-redundant
2 parents 8b30619 + 48538a3 commit 3fc0c87

21 files changed

+970
-816
lines changed

pixi.lock

Lines changed: 362 additions & 284 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/easydiffraction/analysis/calculators/calculator_base.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ def calculate_pattern(
5858
Returns:
5959
None.
6060
"""
61-
x_data = experiment.datastore.pattern.x
61+
x_data = experiment.datastore.x
6262
y_calc_zeros = np.zeros_like(x_data)
6363

6464
valid_linked_phases = self._get_valid_linked_phases(sample_models, experiment)
@@ -90,11 +90,11 @@ def calculate_pattern(
9090
y_bkg = np.zeros_like(x_data)
9191
if hasattr(experiment, 'background'):
9292
y_bkg = experiment.background.calculate(x_data)
93-
experiment.datastore.pattern.bkg = y_bkg
93+
experiment.datastore.bkg = y_bkg
9494

9595
# Calculate total pattern
9696
y_calc_total = y_calc_scaled + y_bkg
97-
experiment.datastore.pattern.calc = y_calc_total
97+
experiment.datastore.calc = y_calc_total
9898

9999
@abstractmethod
100100
def _calculate_single_model_pattern(

src/easydiffraction/analysis/calculators/calculator_crysfml.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ def _calculate_single_model_pattern(
7171
crysfml_dict = self._crysfml_dict(sample_model, experiment)
7272
try:
7373
_, y = cfml_py_utilities.cw_powder_pattern_from_dict(crysfml_dict)
74-
y = self._adjust_pattern_length(y, len(experiment.datastore.pattern.x))
74+
y = self._adjust_pattern_length(y, len(experiment.datastore.x))
7575
except KeyError:
7676
print('[CrysfmlCalculator] Error: No calculated data')
7777
y = []
@@ -177,7 +177,7 @@ def _convert_experiment_to_dict(
177177
instrument = getattr(experiment, 'instrument', None)
178178
peak = getattr(experiment, 'peak', None)
179179

180-
x_data = experiment.datastore.pattern.x
180+
x_data = experiment.datastore.x
181181
twotheta_min = float(x_data.min())
182182
twotheta_max = float(x_data.max())
183183

src/easydiffraction/analysis/calculators/calculator_cryspy.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ def _convert_experiment_to_cryspy_cif(
328328
attr_value = getattr(peak, local_attr_name).value
329329
cif_lines.append(f'{engine_key_name} {attr_value}')
330330

331-
x_data = experiment.datastore.pattern.x
331+
x_data = experiment.datastore.x
332332
twotheta_min = float(x_data.min())
333333
twotheta_max = float(x_data.max())
334334
cif_lines.append('')
@@ -373,8 +373,8 @@ def _convert_experiment_to_cryspy_cif(
373373
cif_lines.append('_tof_meas_intensity')
374374
cif_lines.append('_tof_meas_intensity_sigma')
375375

376-
y_data = experiment.datastore.pattern.meas
377-
sy_data = experiment.datastore.pattern.meas_su
376+
y_data = experiment.datastore.meas
377+
sy_data = experiment.datastore.meas_su
378378
for x_val, y_val, sy_val in zip(x_data, y_data, sy_data):
379379
cif_lines.append(f' {x_val:.5f} {y_val:.5f} {sy_val:.5f}')
380380

src/easydiffraction/analysis/calculators/calculator_pdffit.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,8 @@ def _calculate_single_model_pattern(
8181
calculator.setvar('spdiameter', experiment.peak.damp_particle_diameter.value)
8282

8383
# Data
84-
pattern = experiment.datastore.pattern
85-
x = list(pattern.x)
86-
y_noise = list(np.zeros_like(pattern.x))
84+
x = list(experiment.datastore.x)
85+
y_noise = list(np.zeros_like(x))
8786

8887
# Assign the data to the PDFfit calculator
8988
calculator.read_data_lists(

src/easydiffraction/analysis/minimization.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,9 +173,9 @@ def _residual_function(
173173
experiment,
174174
called_by_minimizer=True,
175175
)
176-
y_calc: np.ndarray = experiment.datastore.pattern.calc
177-
y_meas: np.ndarray = experiment.datastore.pattern.meas
178-
y_meas_su: np.ndarray = experiment.datastore.pattern.meas_su
176+
y_calc: np.ndarray = experiment.datastore.calc
177+
y_meas: np.ndarray = experiment.datastore.meas
178+
y_meas_su: np.ndarray = experiment.datastore.meas_su
179179
diff = (y_meas - y_calc) / y_meas_su
180180

181181
# Residuals are squared before going into reduced chi-squared

src/easydiffraction/analysis/reliability_factors.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -143,9 +143,9 @@ def get_reliability_inputs(
143143
y_err_all = []
144144
for expt_name, experiment in experiments._items.items():
145145
calculator.calculate_pattern(sample_models, experiment)
146-
y_calc = experiment.datastore.pattern.calc
147-
y_meas = experiment.datastore.pattern.meas
148-
y_meas_su = experiment.datastore.pattern.meas_su
146+
y_calc = experiment.datastore.calc
147+
y_meas = experiment.datastore.meas
148+
y_meas_su = experiment.datastore.meas_su
149149

150150
if y_meas is not None and y_calc is not None:
151151
# If standard uncertainty is not provided, use ones

src/easydiffraction/experiments/collections/datastore.py

Lines changed: 0 additions & 126 deletions
This file was deleted.

src/easydiffraction/experiments/collections/excluded_regions.py

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,19 +61,18 @@ def on_item_added(self, item: ExcludedRegion) -> None:
6161
"""
6262
Mark excluded points in the experiment pattern when a new region is added.
6363
"""
64-
experiment = self._parent
65-
pattern = experiment.datastore.pattern
64+
datastore = self._parent.datastore
6665

6766
# Boolean mask for points within the new excluded region
68-
in_region = (pattern.full_x >= item.start.value) & (pattern.full_x <= item.end.value)
67+
in_region = (datastore.full_x >= item.start.value) & (datastore.full_x <= item.end.value)
6968

7069
# Update the exclusion mask
71-
pattern.excluded[in_region] = True
70+
datastore.excluded[in_region] = True
7271

7372
# Update the excluded points in the datastore
74-
pattern.x = pattern.full_x[~pattern.excluded]
75-
pattern.meas = pattern.full_meas[~pattern.excluded]
76-
pattern.meas_su = pattern.full_meas_su[~pattern.excluded]
73+
datastore.x = datastore.full_x[~datastore.excluded]
74+
datastore.meas = datastore.full_meas[~datastore.excluded]
75+
datastore.meas_su = datastore.full_meas_su[~datastore.excluded]
7776

7877
def show(self) -> None:
7978
# TODO: Consider moving this to the base class

0 commit comments

Comments
 (0)