From d24b96b9a8a9ae3ff89c6d9853376d2e3c59191a Mon Sep 17 00:00:00 2001 From: Carter Francis Date: Mon, 29 Jan 2024 10:26:32 -0600 Subject: [PATCH] Refactor: Applied changes from @pc494 --- pyxem/signals/diffraction2d.py | 10 ++++++---- .../utils/{azimuthal_utils.py => _azimuthal_utils.py} | 2 +- pyxem/utils/calibration_utils.py | 2 +- setup.py | 2 +- 4 files changed, 9 insertions(+), 7 deletions(-) rename pyxem/utils/{azimuthal_utils.py => _azimuthal_utils.py} (98%) diff --git a/pyxem/signals/diffraction2d.py b/pyxem/signals/diffraction2d.py index 7dac5d2db..70f473578 100644 --- a/pyxem/signals/diffraction2d.py +++ b/pyxem/signals/diffraction2d.py @@ -62,7 +62,7 @@ medfilt_1d, sigma_clip, ) -from pyxem.utils.azimuthal_utils import slice_radial_integrate +from pyxem.utils._azimuthal_utils import _slice_radial_integrate from pyxem.utils.dask_tools import ( _get_dask_array, get_signal_dimension_host_chunk_slice, @@ -2145,7 +2145,8 @@ def get_azimuthal_integral2d( method: str Can be “numpy”, “cython”, “BBox” or “splitpixel”, “lut”, “csr”, “nosplit_csr”, “full_csr”, “lut_ocl” and “csr_ocl” if you want - to go on GPU. To Specify the device: “csr_ocl_1,2” + to go on GPU. To Specify the device: “csr_ocl_1,2”. For pure + pyxem based methods use "splitpixel_pyxem". sum: bool If true the radial integration is returned rather then the Azimuthal Integration. correctSolidAngle: bool @@ -2190,14 +2191,15 @@ def get_azimuthal_integral2d( >>> ds.get_azimuthal_integral2d(npt_rad=100) """ - if method == "splitpixel_pyxem": + usepyfai = method not in ["splitpixel_pyxem"] + if not usepyfai: # get_slices2d should be sped up in the future by # getting rid of shapely and using numba on the for loop slices, factors, factors_slice, radial_range = self.calibrate.get_slices2d( npt, npt_azim, radial_range=radial_range ) integration = self.map( - slice_radial_integrate, + _slice_radial_integrate, slices=slices, factors=factors, factors_slice=factors_slice, diff --git a/pyxem/utils/azimuthal_utils.py b/pyxem/utils/_azimuthal_utils.py similarity index 98% rename from pyxem/utils/azimuthal_utils.py rename to pyxem/utils/_azimuthal_utils.py index e426d7216..d20ad33e0 100644 --- a/pyxem/utils/azimuthal_utils.py +++ b/pyxem/utils/_azimuthal_utils.py @@ -25,7 +25,7 @@ @numba.njit -def slice_radial_integrate(img, factors, factors_slice, slices, npt_rad, npt_azim): +def _slice_radial_integrate(img, factors, factors_slice, slices, npt_rad, npt_azim): """Slice the image into small chunks and multiply by the factors. Parameters diff --git a/pyxem/utils/calibration_utils.py b/pyxem/utils/calibration_utils.py index fe5475e63..837bcb23a 100644 --- a/pyxem/utils/calibration_utils.py +++ b/pyxem/utils/calibration_utils.py @@ -25,7 +25,7 @@ from hyperspy.axes import UniformDataAxis from pyxem.utils.indexation_utils import index_dataset_with_template_rotation -from pyxem.utils.azimuthal_utils import _get_control_points, _get_factors +from pyxem.utils._azimuthal_utils import _get_control_points, _get_factors class Calibration: diff --git a/setup.py b/setup.py index 643216511..2d3ab83ca 100644 --- a/setup.py +++ b/setup.py @@ -101,7 +101,7 @@ "pyfai <= 2023.9.0", # breaking changes "scikit-image >= 0.19.0, !=0.21.0", # regression in ellipse fitting" "scikit-learn >= 1.0", - "shapely", + "shapely > 2.0.0", # major changes "scipy", "tqdm", "traits",