From 2ce14695787fc16da90c82a3bbbe58256c0791ff Mon Sep 17 00:00:00 2001
From: Brendan Sullivan <sullivanbt@ornl.gov>
Date: Tue, 31 Jul 2018 11:23:57 -0400
Subject: [PATCH] Re #22811 remove instrumentName parameter

---
 .../IntegratePeaksProfileFitting.py           |  2 --
 scripts/SCD_Reduction/BVGFitTools.py          | 28 +++++++++----------
 scripts/SCD_Reduction/ICCFitTools.py          | 28 ++++++++-----------
 3 files changed, 26 insertions(+), 32 deletions(-)

diff --git a/Framework/PythonInterface/plugins/algorithms/IntegratePeaksProfileFitting.py b/Framework/PythonInterface/plugins/algorithms/IntegratePeaksProfileFitting.py
index a42fe352bda..111b06c4dc3 100644
--- a/Framework/PythonInterface/plugins/algorithms/IntegratePeaksProfileFitting.py
+++ b/Framework/PythonInterface/plugins/algorithms/IntegratePeaksProfileFitting.py
@@ -115,7 +115,6 @@ class IntegratePeaksProfileFitting(PythonAlgorithm):
         # The default values are good for MaNDi - new instruments can be added by adding a different elif
         # statement.
         # If you change these values or add an instrument, documentation should also be changed.
-        instrumentName = peaks_ws.getInstrument().getFullName()
         try:
             nTheta = peaks_ws.getInstrument().getIntParameter("numBinsTheta")[0]
             nPhi = peaks_ws.getInstrument().getIntParameter("numBinsPhi")[0]
@@ -173,7 +172,6 @@ class IntegratePeaksProfileFitting(PythonAlgorithm):
                                                                       maxdtBinWidth=maxdtBinWidth,
                                                                       pplmin_frac=pplmin_frac, pplmax_frac=pplmax_frac,
                                                                       forceCutoff=forceCutoff, edgeCutoff=edgeCutoff,
-                                                                      instrumentName=instrumentName,
                                                                       peakMaskSize=peakMaskSize,
                                                                       iccFitDict=iccFitDict)
 
diff --git a/scripts/SCD_Reduction/BVGFitTools.py b/scripts/SCD_Reduction/BVGFitTools.py
index 7bceca943bd..7fbf60c1295 100644
--- a/scripts/SCD_Reduction/BVGFitTools.py
+++ b/scripts/SCD_Reduction/BVGFitTools.py
@@ -15,7 +15,7 @@ def get3DPeak(peak, peaks_ws, box, padeCoefficients, qMask, nTheta=150, nPhi=150
               plotResults=False, zBG=1.96, bgPolyOrder=1, fICCParams=None, oldICCFit=None,
               strongPeakParams=None, forceCutoff=250, edgeCutoff=15,
               neigh_length_m=3, q_frame='sample', dtSpread=0.03, pplmin_frac=0.8, pplmax_frac=1.5, mindtBinWidth=1,
-              maxdtBinWidth=50, figureNumber=2, instrumentName=None, peakMaskSize=5, iccFitDict=None):
+              maxdtBinWidth=50, figureNumber=2, peakMaskSize=5, iccFitDict=None):
     n_events = box.getNumEventsArray()
 
     if q_frame == 'lab':
@@ -31,12 +31,12 @@ def get3DPeak(peak, peaks_ws, box, padeCoefficients, qMask, nTheta=150, nPhi=150
                     n_events, peak=peak, box=box, qMask=qMask, calc_pp_lambda=True, padeCoefficients=padeCoefficients,
                     neigh_length_m=neigh_length_m, pp_lambda=None, pplmin_frac=pplmin_frac,
                     pplmax_frac=pplmax_frac, mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
-                    instrumentName=instrumentName, peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
+                    peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
         YTOF, fICC, x_lims = fitTOFCoordinate(
                     box, peak, padeCoefficients, dtSpread=dtSpread, qMask=qMask, bgPolyOrder=bgPolyOrder, zBG=zBG,
                     plotResults=plotResults, pp_lambda=pp_lambda, neigh_length_m=neigh_length_m, pplmin_frac=pplmin_frac,
                     pplmax_frac=pplmax_frac, mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
-                    instrumentName=instrumentName, peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
+                    peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
         chiSqTOF = mtd['fit_Parameters'].column(1)[-1]
     else:  # we already did I-C profile, so we'll just read the parameters
         pp_lambda = fICCParams[-1]
@@ -50,7 +50,7 @@ def get3DPeak(peak, peaks_ws, box, padeCoefficients, qMask, nTheta=150, nPhi=150
         fICC['HatWidth'] = fICCParams[10]
         fICC['KConv'] = fICCParams[11]
         goodIDX, _ = ICCFT.getBGRemovedIndices(
-            n_events, pp_lambda=pp_lambda, qMask=qMask, instrumentName=instrumentName, peakMaskSize=peakMaskSize,
+            n_events, pp_lambda=pp_lambda, qMask=qMask, peakMaskSize=peakMaskSize,
             iccFitDict=iccFitDict)
         chiSqTOF = fICCParams[4] #Last entry
 
@@ -82,7 +82,7 @@ def get3DPeak(peak, peaks_ws, box, padeCoefficients, qMask, nTheta=150, nPhi=150
         numDetCols = peaks_ws.getInstrument().getIntParameter("numDetCols")[0]
         nPixels = [numDetRows, numDetCols]
     except:
-        UserWarning('Instrument name {} not found. Assuming a 255*255 detector!'.format(instrumentName))
+        UserWarning('Detector size not found in instrument parameters file. Assuming a 255*255 detector!')
         nPixels = [255,255]
 
     useForceParams = peak.getIntensity() < forceCutoff or peak.getRow() <= dEdge or peak.getRow(
@@ -114,11 +114,11 @@ def get3DPeak(peak, peaks_ws, box, padeCoefficients, qMask, nTheta=150, nPhi=150
                                                                                              phthPeak[0],
                                                                                              phthPeak[1]))
         params, h, t, p = doBVGFit(box, nTheta=nTheta, nPhi=nPhi, fracBoxToHistogram=fracBoxToHistogram,
-                                   goodIDX=goodIDX, forceParams=strongPeakParams[nnIDX], instrumentName=instrumentName,
+                                   goodIDX=goodIDX, forceParams=strongPeakParams[nnIDX],
                                    doPeakConvolution=doPeakConvolution, sigX0Scale=sigX0Scale, sigY0Scale=sigY0Scale)
     else:  # Just do the fit - no nearest neighbor assumptions
         params, h, t, p = doBVGFit(
-            box, nTheta=nTheta, nPhi=nPhi, fracBoxToHistogram=fracBoxToHistogram, goodIDX=goodIDX, instrumentName=instrumentName,
+            box, nTheta=nTheta, nPhi=nPhi, fracBoxToHistogram=fracBoxToHistogram, goodIDX=goodIDX,
             doPeakConvolution=doPeakConvolution, sigX0Scale=sigX0Scale, sigY0Scale=sigY0Scale)
 
     if plotResults:
@@ -145,9 +145,9 @@ def get3DPeak(peak, peaks_ws, box, padeCoefficients, qMask, nTheta=150, nPhi=150
 
     # Do scaling to the data
     if doPeakConvolution: #This means peaks will have gaps, so we only use good data to scale
-        Y, redChiSq, scaleFactor = fitScaling(n_events, box, YTOF, YBVG, goodIDX=goodIDX, instrumentName=instrumentName)
+        Y, redChiSq, scaleFactor = fitScaling(n_events, box, YTOF, YBVG, goodIDX=goodIDX)
     else:
-        Y, redChiSq, scaleFactor = fitScaling(n_events, box, YTOF, YBVG, instrumentName=instrumentName)
+        Y, redChiSq, scaleFactor = fitScaling(n_events, box, YTOF, YBVG)
     YBVG2 = bvg(1.0, mu, sigma, XTHETA, XPHI, 0)
     YTOF2 = getYTOF(fICC, XTOF, x_lims)
     Y2 = YTOF2 * YBVG2
@@ -193,7 +193,7 @@ def boxToTOFThetaPhi(box, peak):
     return X
 
 
-def fitScaling(n_events, box, YTOF, YBVG, goodIDX=None, neigh_length_m=3, instrumentName=None):
+def fitScaling(n_events, box, YTOF, YBVG, goodIDX=None, neigh_length_m=3):
     YJOINT = 1.0 * YTOF * YBVG
     YJOINT /= 1.0 * YJOINT.max()
 
@@ -252,7 +252,7 @@ def getXTOF(box, peak):
 def fitTOFCoordinate(box, peak, padeCoefficients, dtSpread=0.03, minFracPixels=0.01,
                      neigh_length_m=3, zBG=1.96, bgPolyOrder=1, qMask=None, plotResults=False,
                      fracStop=0.01, pp_lambda=None, pplmin_frac=0.8, pplmax_frac=1.5, mindtBinWidth=1,
-                     maxdtBinWidth=50, instrumentName=None, peakMaskSize=5, iccFitDict=None):
+                     maxdtBinWidth=50, peakMaskSize=5, iccFitDict=None):
 
     # Get info from the peak
     tof = peak.getTOF()  # in us
@@ -271,12 +271,12 @@ def fitTOFCoordinate(box, peak, padeCoefficients, dtSpread=0.03, minFracPixels=0
                                 neigh_length_m=neigh_length_m, zBG=zBG, pp_lambda=pp_lambda,
                                 pplmin_frac=pplmin_frac, pplmax_frac=pplmax_frac,
                                 mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
-                                instrumentName=instrumentName, peakMaskSize=peakMaskSize,
+                                peakMaskSize=peakMaskSize,
                                 iccFitDict=iccFitDict)
 
     fitResults, fICC = ICCFT.doICCFit(tofWS, energy, flightPath,
                                       padeCoefficients, fitOrder=bgPolyOrder, constraintScheme=1,
-                                      instrumentName=instrumentName, iccFitDict=iccFitDict)
+                                      iccFitDict=iccFitDict)
 
     for i, param in enumerate(['A', 'B', 'R', 'T0', 'Scale', 'HatWidth', 'KConv']):
         fICC[param] = mtd['fit_Parameters'].row(i)['Value']
@@ -429,7 +429,7 @@ def compareBVGFitData(box, params, nTheta=200, nPhi=200, figNumber=2, fracBoxToH
 
 
 def doBVGFit(box, nTheta=200, nPhi=200, zBG=1.96, fracBoxToHistogram=1.0, goodIDX=None,
-             forceParams=None, forceTolerance=0.1, dth=10, dph=10, instrumentName=None,
+             forceParams=None, forceTolerance=0.1, dth=10, dph=10,
              doPeakConvolution=False, sigX0Scale=1., sigY0Scale=1.):
     """
     doBVGFit takes a binned MDbox and returns the fit of the peak shape along the non-TOF direction.  This is done in one of two ways:
diff --git a/scripts/SCD_Reduction/ICCFitTools.py b/scripts/SCD_Reduction/ICCFitTools.py
index bc9a6eb6956..d4cc146458b 100644
--- a/scripts/SCD_Reduction/ICCFitTools.py
+++ b/scripts/SCD_Reduction/ICCFitTools.py
@@ -107,7 +107,7 @@ def getQXQYQZ(box):
 
 def getQuickTOFWS(box, peak, padeCoefficients, goodIDX=None, dtSpread=0.03, qMask=None,
                   pp_lambda=None, minppl_frac=0.8, maxppl_frac=1.5, mindtBinWidth=1, maxdtBinWidth=50,
-                  constraintScheme=1, instrumentName=None, peakMaskSize=5, iccFitDict=None):
+                  constraintScheme=1, peakMaskSize=5, iccFitDict=None):
     """
     getQuickTOFWS - generates a quick-and-dirty TOFWS.  Useful for determining the background.
     Input:
@@ -145,11 +145,11 @@ def getQuickTOFWS(box, peak, padeCoefficients, goodIDX=None, dtSpread=0.03, qMas
     tofWS, ppl = getTOFWS(box, flightPath, scatteringHalfAngle, tof, peak, qMask, dtSpread=dtSpread,
                           minFracPixels=0.01, neigh_length_m=3, zBG=1.96, pp_lambda=pp_lambda,
                           calc_pp_lambda=calc_pp_lambda, pplmin_frac=minppl_frac, pplmax_frac=minppl_frac,
-                          mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth, instrumentName=instrumentName,
+                          mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
                           peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
     fitResults, fICC = doICCFit(
         tofWS, energy, flightPath, padeCoefficients, fitOrder=1, constraintScheme=constraintScheme,
-        instrumentName=instrumentName, iccFitDict=iccFitDict)
+        iccFitDict=iccFitDict)
     h = [tofWS.readY(0), tofWS.readX(0)]
     chiSq = fitResults.OutputChi2overDoF
 
@@ -213,7 +213,7 @@ def getPoissionGoodIDX(n_events, zBG=1.96, neigh_length_m=3):
 def getOptimizedGoodIDX(n_events, padeCoefficients, zBG=1.96, neigh_length_m=3, qMask=None,
                         peak=None, box=None, pp_lambda=None, peakNumber=-1, minppl_frac=0.8,
                         maxppl_frac=1.5, mindtBinWidth=1, maxdtBinWidth=50,
-                        constraintScheme=1, instrumentName=None, peakMaskSize=5, iccFitDict=None):
+                        constraintScheme=1, peakMaskSize=5, iccFitDict=None):
     """
     getOptimizedGoodIDX - returns a numpy arrays which is true if the voxel contains events at
             the zBG z level (1.96=95%CI).  Rather than using Poission statistics, this function
@@ -235,7 +235,6 @@ def getOptimizedGoodIDX(n_events, padeCoefficients, zBG=1.96, neigh_length_m=3,
         mindtBinWidth - the largest dt (in us) allowed for constructing the TOF profile.
         constraintScheme - sets the constraints for TOF profile fitting.  Leave as 1 if you're
                 not sure how to modify this.
-        instrumentName - string containing the instrument name
         iccFitDict - a dictionary containing ICC fit constraints and possibly initial guesses
 
     Output:
@@ -299,7 +298,7 @@ def getOptimizedGoodIDX(n_events, padeCoefficients, zBG=1.96, neigh_length_m=3,
                 chiSq, h, intens, sigma = getQuickTOFWS(box, peak, padeCoefficients, goodIDX=goodIDX, qMask=qMask, pp_lambda=pp_lambda,
                                                         minppl_frac=minppl_frac, maxppl_frac=maxppl_frac, mindtBinWidth=mindtBinWidth,
                                                         maxdtBinWidth=maxdtBinWidth, constraintScheme=constraintScheme,
-                                                        instrumentName=instrumentName, peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
+                                                        peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
             except:
                 #raise
                 break
@@ -323,7 +322,7 @@ def getOptimizedGoodIDX(n_events, padeCoefficients, zBG=1.96, neigh_length_m=3,
     chiSq, h, intens, sigma = getQuickTOFWS(box, peak, padeCoefficients, goodIDX=goodIDX, qMask=qMask,
                                             pp_lambda=pp_lambda, minppl_frac=minppl_frac, maxppl_frac=maxppl_frac,
                                             mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
-                                            instrumentName=instrumentName, peakMaskSize=peakMaskSize,
+                                            peakMaskSize=peakMaskSize,
                                             iccFitDict=iccFitDict)
     if qMask is not None:
         return goodIDX*qMask, pp_lambda
@@ -333,7 +332,7 @@ def getOptimizedGoodIDX(n_events, padeCoefficients, zBG=1.96, neigh_length_m=3,
 def getBGRemovedIndices(n_events, zBG=1.96, calc_pp_lambda=False, neigh_length_m=3, qMask=None,
                         peak=None, box=None, pp_lambda=None, peakNumber=-1, padeCoefficients=None,
                         pplmin_frac=0.8, pplmax_frac=1.5, mindtBinWidth=1, maxdtBinWidth=50,
-                        constraintScheme=1, instrumentName=None, peakMaskSize=5, iccFitDict=None):
+                        constraintScheme=1, peakMaskSize=5, iccFitDict=None):
     """
     getBGRemovedIndices - A wrapper for getOptimizedGoodIDX
     Input:
@@ -391,7 +390,7 @@ def getBGRemovedIndices(n_events, zBG=1.96, calc_pp_lambda=False, neigh_length_m
                                            minppl_frac=pplmin_frac, maxppl_frac=pplmax_frac, qMask=qMask, peak=peak,
                                            box=box, pp_lambda=pp_lambda, peakNumber=peakNumber,
                                            mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
-                                           constraintScheme=constraintScheme, instrumentName=instrumentName,
+                                           constraintScheme=constraintScheme, 
                                            peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
             except KeyboardInterrupt:
                 sys.exit()
@@ -553,7 +552,7 @@ def get_pp_lambda(n_events, hasEventsIDX):
 def getTOFWS(box, flightPath, scatteringHalfAngle, tofPeak, peak, qMask, zBG=-1.0, dtSpread=0.02,
              minFracPixels=0.005, workspaceNumber=None, neigh_length_m=0, pp_lambda=None, calc_pp_lambda=False,
              padeCoefficients=None, pplmin_frac=0.8, pplmax_frac=1.5, peakMaskSize=5,
-             mindtBinWidth=1, maxdtBinWidth=50, constraintScheme=1, instrumentName=None, iccFitDict=None):
+             mindtBinWidth=1, maxdtBinWidth=50, constraintScheme=1, iccFitDict=None):
     """
     Builds a TOF profile from the data in box which is nominally centered around a peak.
     Input:
@@ -579,7 +578,6 @@ def getTOFWS(box, flightPath, scatteringHalfAngle, tofPeak, peak, qMask, zBG=-1.
         maxdtBinWidth - the largest dt (in us) allowed for constructing the TOF profile.
         constraintScheme - sets the constraints for TOF profile fitting.  Leave as 1 if you're
                 not sure how to modify this.
-        instrumentName = string containing instrument name
         iccFitDict - a dictionary containing ICC fit constraints and possibly initial guesses
 
     Output:
@@ -598,7 +596,7 @@ def getTOFWS(box, flightPath, scatteringHalfAngle, tofPeak, peak, qMask, zBG=-1.
                                                  calc_pp_lambda=calc_pp_lambda, padeCoefficients=padeCoefficients,
                                                  pplmin_frac=pplmin_frac, pplmax_frac=pplmax_frac,
                                                  mindtBinWidth=mindtBinWidth, maxdtBinWidth=maxdtBinWidth,
-                                                 constraintScheme=constraintScheme, instrumentName=instrumentName,
+                                                 constraintScheme=constraintScheme,
                                                  peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
         hasEventsIDX = np.logical_and(goodIDX, qMask)
         boxMeanIDX = np.where(hasEventsIDX)
@@ -828,7 +826,7 @@ def getBoxFracHKL(peak, peaks_ws, MDdata, UBMatrix, peakNumber, dQ, dQPixel=0.00
 
 
 def doICCFit(tofWS, energy, flightPath, padeCoefficients, constraintScheme=None, outputWSName='fit', fitOrder=1,
-             instrumentName=None, iccFitDict=None):
+             iccFitDict=None):
     """
     doICCFit - Carries out the actual least squares fit for the TOF workspace.
     Intput:
@@ -894,7 +892,6 @@ def doICCFit(tofWS, energy, flightPath, padeCoefficients, constraintScheme=None,
             fICC.setPenalizedConstraints(A0=A0, B0=B0, R0=R0, T00=T00, KConv0=KConv0, penalty=1.0e10)
         except:
             fICC.setPenalizedConstraints(A0=A0, B0=B0, R0=R0, T00=T00, KConv0=KConv0, penalty=None)
-        print(fICC)
     if constraintScheme == 2:
         try:
             fICC.setPenalizedConstraints(A0=[0.0001, 1.0], B0=[0.005, 1.5], R0=[0.00, 1.], Scale0=[
@@ -964,7 +961,6 @@ def integrateSample(run, MDdata, peaks_ws, paramList, UBMatrix, dQ, qMask, padeC
         fitDict - if keepFitDict is False, an empty dictionary.  If keepFitDict is true, a dictionary (integer peak number as key)
             containing the x, yData, yFit for each peak.
     """
-    instrumentName = peaks_ws.getInstrument().getFullName()
     if p is None:
         p = range(peaks_ws.getNumberPeaks())
     fitDict = {}
@@ -996,7 +992,7 @@ def integrateSample(run, MDdata, peaks_ws, paramList, UBMatrix, dQ, qMask, padeC
                                                          mindtBinWidth=mindtBinWidth,
                                                          maxdtBinWidth=maxdtBinWidth,
                                                          pplmin_frac=minpplfrac, pplmax_frac=maxpplfrac,
-                                                         constraintScheme=constraintScheme, instrumentName=instrumentName,
+                                                         constraintScheme=constraintScheme,
                                                          peakMaskSize=peakMaskSize, iccFitDict=iccFitDict)
                 # --IN PRINCIPLE!!! WE CALCULATE THIS BEFORE GETTING HERE
                 tofWS = mtd['tofWS']
-- 
GitLab