diff --git a/pyrs/core/peak_fit_factory.py b/pyrs/core/peak_fit_factory.py index ba11bd861..2b239ca05 100644 --- a/pyrs/core/peak_fit_factory.py +++ b/pyrs/core/peak_fit_factory.py @@ -1,5 +1,5 @@ # Peak fitting engine -from pyrs.core import mantid_fit_peak +from pyrs.peaks.mantid_fit_peak import MantidPeakFitEngine from pyrs.utilities import checkdatatypes @@ -20,7 +20,7 @@ def getInstance(engine_name): checkdatatypes.check_string_variable('Peak fitting engine', engine_name, ['Mantid', 'PyRS']) if engine_name == 'Mantid': - engine_class = mantid_fit_peak.MantidPeakFitEngine + engine_class = MantidPeakFitEngine else: raise RuntimeError('Implement general scipy peak fitting engine') diff --git a/pyrs/core/mantid_fit_peak.py b/pyrs/peaks/mantid_fit_peak.py similarity index 99% rename from pyrs/core/mantid_fit_peak.py rename to pyrs/peaks/mantid_fit_peak.py index 447cbac9f..90c99e049 100644 --- a/pyrs/core/mantid_fit_peak.py +++ b/pyrs/peaks/mantid_fit_peak.py @@ -1,5 +1,6 @@ # Peak fitting engine by calling mantid from pyrs.core import mantid_helper +from pyrs.core.peak_profile_utility import Gaussian, PseudoVoigt from pyrs.utilities import checkdatatypes from pyrs.core import peak_fit_engine from pyrs.peaks import PeakCollection @@ -110,8 +111,6 @@ def _set_default_peak_params_value(self, peak_function_name, peak_range): parameter names (native), parameter values (as a list in str) """ - from peak_profile_utility import Gaussian, PseudoVoigt - # Specify instrument resolution for both Gaussian and FWHM hidra_fwhm = 0.5 diff --git a/tests/unit/test_peak_fit_engine.py b/tests/unit/test_peak_fit_engine.py index 5e2425d05..0fbb014b0 100644 --- a/tests/unit/test_peak_fit_engine.py +++ b/tests/unit/test_peak_fit_engine.py @@ -1,5 +1,5 @@ import numpy as np -from pyrs.core.mantid_fit_peak import MantidPeakFitEngine +from pyrs.core.peak_fit_factory import PeakFitEngineFactory from pyrs.core.workspaces import HidraWorkspace from pyrs.core.peak_profile_utility import pseudo_voigt, PeakShape, BackgroundFunction from pyrs.core.peak_profile_utility import Gaussian, PseudoVoigt @@ -230,7 +230,7 @@ def test_1_gaussian_1_subrun(): # Generate test workspace and initialize fit engine gaussian_workspace = generate_hydra_workspace_single_subrun('Gaussian', min_x, max_x, num_x, [peak_center], [peak_range], [10.]) - fit_engine = MantidPeakFitEngine(gaussian_workspace, mask_name=None) + fit_engine = PeakFitEngineFactory.getInstance('Mantid')(gaussian_workspace, mask_name=None) # Fit m_tag = 'UnitTestGaussian' @@ -292,7 +292,7 @@ def test_2_gaussian_1_subrun(): # Generate test workspace and initialize fit engine gaussian_workspace = generate_hydra_workspace_single_subrun('Gaussian', min_x, max_x, num_x, peak_centers, peak_ranges, peak_intensities) - fit_engine = MantidPeakFitEngine(gaussian_workspace, mask_name=None) + fit_engine = PeakFitEngineFactory.getInstance('Mantid')(gaussian_workspace, mask_name=None) # Fit fit_engine.fit_multiple_peaks(sub_run_range=(1, 1), @@ -390,7 +390,7 @@ def test_2_gaussian_3_subruns(): test_hd_ws = generate_hydra_workspace_multiple_sub_runs('3 G 3 S', test_2g_dict) # Fit - fit_engine = MantidPeakFitEngine(test_hd_ws, mask_name=None) + fit_engine = PeakFitEngineFactory.getInstance('Mantid')(test_hd_ws, mask_name=None) fit_engine.fit_multiple_peaks(sub_run_range=(1, 3), peak_function_name='Gaussian', background_function_name='Linear', @@ -500,7 +500,7 @@ def test_3_gaussian_3_subruns(): test_hd_ws = generate_hydra_workspace_multiple_sub_runs('3 G 3 S', test_2g_dict) # Fit - fit_engine = MantidPeakFitEngine(test_hd_ws, mask_name=None) + fit_engine = PeakFitEngineFactory.getInstance('Mantid')(test_hd_ws, mask_name=None) fit_engine.fit_multiple_peaks(sub_run_range=(1, 3), peak_function_name='Gaussian', background_function_name='Linear', @@ -550,7 +550,7 @@ def test_1_pv_1_subrun(): pv_workspace = generate_hydra_workspace_single_subrun('PseudoVoigt', min_x, max_x, num_x, [peak_center], [peak_range], [100.]) - fit_engine = MantidPeakFitEngine(pv_workspace, mask_name=None) + fit_engine = PeakFitEngineFactory.getInstance('Mantid')(pv_workspace, mask_name=None) # Fit peak_tag = 'UnitTestPseudoVoigt'