Skip to content

Commit

Permalink
Re #9445. Corrected the multi-domain Fit call.
Browse files Browse the repository at this point in the history
  • Loading branch information
mantid-roman committed May 19, 2014
1 parent 82623d2 commit ac83d92
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 4 deletions.
1 change: 1 addition & 0 deletions Code/Mantid/Framework/SINQ/CMakeLists.txt
Expand Up @@ -26,6 +26,7 @@ set ( SRC_FILES
src/PoldiUtilities/PoldiPeak.cpp
src/PoldiUtilities/PoldiPeakCollection.cpp
src/PoldiUtilities/PoldiSpectrumDomainFunction.cpp
src/PoldiUtilities/PoldiSourceSpectrum.cpp
src/PoldiUtilities/UncertainValue.cpp
src/ProjectMD.cpp
src/SINQHMListener.cpp
Expand Down
9 changes: 5 additions & 4 deletions Code/Mantid/Framework/SINQ/src/PoldiCalculateSpectrum2D.cpp
Expand Up @@ -76,21 +76,22 @@ namespace Poldi

MatrixWorkspace_sptr ws = getProperty("InputWorkspace");

std::vector<size_t> wsi(400);
size_t nspec = ws->getNumberHistograms();
std::vector<size_t> wsi(nspec);
for(size_t w = 0; w < wsi.size(); ++w) {
wsi[w] = w;
}

mdFunction->setDomainIndices(0, wsi);
mdFunction->setLocalAttribute(0, "domains", API::IFunction::Attribute("All"));

IAlgorithm_sptr fit = createChildAlgorithm("Fit", -1, -1, true);
fit->setProperty("Function", boost::dynamic_pointer_cast<IFunction>(mdFunction));
fit->setProperty("InputWorkspace", ws);
fit->setProperty("WorkspaceIndex", 0);

for(size_t i = 1; i < 400; ++i) {
for(size_t i = 1; i < nspec; ++i) {
fit->setProperty("InputWorkspace_" + boost::lexical_cast<std::string>(i), ws);
//fit->setProperty("WorkspaceIndex_" + boost::lexical_cast<std::string>(i + 1), i);
fit->setProperty("WorkspaceIndex_" + boost::lexical_cast<std::string>(i), static_cast<int>(i));
}

fit->setProperty("CreateOutput", true);
Expand Down
Expand Up @@ -29,6 +29,7 @@ void PoldiSpectrumDomainFunction::initializeParametersFromWorkspace(Workspace2D_
initializeFromInstrument(adapter.detector(), adapter.chopper());

m_spectrum = boost::const_pointer_cast<const PoldiSourceSpectrum>(adapter.spectrum());
// TODO: this is always 0
m_deltaT = workspace2D->readX(0)[1] - workspace2D->readX(0)[1];
}

Expand Down

0 comments on commit ac83d92

Please sign in to comment.