def test_noFit(self): """Cases where fit is not possible. """ self._linearWorkspace(0) fitResult = FitGaussian(self.ws, 0) self.assertTupleEqual((0.0, 0.0), fitResult) self._veryNarrowPeakWorkspace() fitResult = FitGaussian(self.ws, 0) self.assertTupleEqual((0.0, 0.0), fitResult)
def test_errors(self): """Conditions that raise RuntimeError. """ self._linearWorkspace(0) with self.assertRaises(RuntimeError): # bad index fitResult = FitGaussian(self.ws, 1)
def _guessPeak(self, peakCentre, height, sigma): """Test-fitting one generated Gaussian peak. """ self._gaussianWorkspace(peakCentre, height, sigma) fitPeakCentre, fitSigma = FitGaussian(self.ws, 0) # require a close relative match between given and fitted values diffPeakCentre = abs((fitPeakCentre - peakCentre) / peakCentre) diffSigma = abs((fitSigma - sigma) / sigma) self.assertLess(diffPeakCentre, 0.03) self.assertLess(diffSigma, 1e-6)