diff --git a/Framework/Muon/src/CalculateMuonAsymmetry.cpp b/Framework/Muon/src/CalculateMuonAsymmetry.cpp index d33d3ba5b913a92c9e846f5fe5eb35a928dc8790..6ed69c03b1dc157735fd03bc3959125189353078 100644 --- a/Framework/Muon/src/CalculateMuonAsymmetry.cpp +++ b/Framework/Muon/src/CalculateMuonAsymmetry.cpp @@ -80,6 +80,7 @@ void CalculateMuonAsymmetry::init() { "MaxIterations", 500, mustBePositive->clone(), "Stop after this number of iterations if a good fit is not found"); declareProperty("OutputStatus", "", Kernel::Direction::Output); + declareProperty("ChiSquared", 0.0, Kernel::Direction::Output); declareProperty(make_unique<API::FunctionProperty>("OutputFunction", Kernel::Direction::Output), "The fitting function after fit."); @@ -251,7 +252,8 @@ std::vector<double> CalculateMuonAsymmetry::getNormConstants( fit->execute(); auto status = fit->getPropertyValue("OutputStatus"); setProperty("OutputStatus", status); - + double chi2 = std::stod(fit->getPropertyValue("OutputChi2overDoF")); + setProperty("ChiSquared", chi2); API::IFunction_sptr tmp = fit->getProperty("Function"); setProperty("OutputFunction", tmp); try { diff --git a/qt/widgets/common/src/MuonFitPropertyBrowser.cpp b/qt/widgets/common/src/MuonFitPropertyBrowser.cpp index 6646c9698f93e2d18c75e2d77fcc3e06e6724057..c11de651ebfd1c9cbf8eda11f1421ee24608615d 100644 --- a/qt/widgets/common/src/MuonFitPropertyBrowser.cpp +++ b/qt/widgets/common/src/MuonFitPropertyBrowser.cpp @@ -872,7 +872,6 @@ void MuonFitPropertyBrowser::showEvent(QShowEvent *e) { * @param ws :: The workspace */ bool MuonFitPropertyBrowser::isWorkspaceValid(Workspace_sptr ws) const { - auto fsad = ws->getName(); QString workspaceName(QString::fromStdString(ws->getName())); if ((workspaceName.contains("_Raw")) || @@ -944,6 +943,12 @@ void MuonFitPropertyBrowser::finishHandleTF(const IAlgorithm *alg) { std::vector<std::string> wsList = alg->getProperty("UnNormalizedWorkspaceList"); emit fittingDone(QString::fromStdString(wsList[0])); + double quality = alg->getProperty("ChiSquared"); + //std::string costFunction = + + emit changeWindowTitle(QString("Fit Function (") + + "Chi-sq " + " = " + + QString::number(quality) + ", " + status + ")"); if (nWorkspaces == 1) { emit algorithmFinished(QString::fromStdString(wsList[0] + "_workspace")); } @@ -1170,7 +1175,7 @@ void MuonFitPropertyBrowser::ConvertFitFunctionForMuonTFAsymmetry( boost::dynamic_pointer_cast<IFunction>(m_compositeFunction); QStringList globals; - if (enabled && m_isMultiFittingMode) { + if ( m_isMultiFittingMode) { // manually set the function values old = m_functionBrowser->getGlobalFunction(); globals = m_functionBrowser->getGlobalParameters(); @@ -1210,6 +1215,9 @@ void MuonFitPropertyBrowser::ConvertFitFunctionForMuonTFAsymmetry( } else { for (auto global : globals) { newGlobals << global.remove(0, 9); + auto fasfd = global.remove(0, 9); + auto ssss = fasfd.toStdString(); + auto fasdsdadfs = 1; } } m_functionBrowser->updateMultiDatasetParameters(*func);