From e6c3be09ada638d8ed155d3367fcf174b0861ac7 Mon Sep 17 00:00:00 2001
From: Jose Borreguero <borreguerojm@ornl.gov>
Date: Fri, 2 Mar 2012 11:14:53 -0500
Subject: [PATCH] Refs #4925 Convolution with deltaDirac containing
 HeightPrefactor

---
 Code/Mantid/Framework/CurveFitting/src/Convolution.cpp | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/Code/Mantid/Framework/CurveFitting/src/Convolution.cpp b/Code/Mantid/Framework/CurveFitting/src/Convolution.cpp
index a77a54fe98f..e33aa48c2ff 100644
--- a/Code/Mantid/Framework/CurveFitting/src/Convolution.cpp
+++ b/Code/Mantid/Framework/CurveFitting/src/Convolution.cpp
@@ -137,7 +137,7 @@ void Convolution::functionMW(double* out, const double* xValues, const size_t nD
       if (df)
       {
         dltFuns.push_back(df);
-        dltF += df->getParameter("Height");
+        dltF += df->getParameter("Height") * df->HeightPrefactor();
       }
     }
     if (dltFuns.size() == cf->nFunctions())
@@ -149,8 +149,9 @@ void Convolution::functionMW(double* out, const double* xValues, const size_t nD
   }
   else if (dynamic_cast<DeltaFunction*>(getFunction(1)))
   {// single delta function - return scaled reslution
+    DeltaFunction* df = dynamic_cast<DeltaFunction*>(cf->getFunction(1));
     resolution->functionMW(out,xValues,nData);
-    std::transform(out,out+nData,out,std::bind2nd(std::multiplies<double>(),getFunction(1)->getParameter("Height")));
+    std::transform(out,out+nData,out,std::bind2nd(std::multiplies<double>(),df->getParameter("Height")*df->HeightPrefactor()));
     return;
   }
 
-- 
GitLab