Merged muonspin/musrfit into master

This commit is contained in:
Zaher Salman 2015-09-17 16:35:17 +02:00
commit e9226158c3
2 changed files with 12 additions and 10 deletions

View File

@ -5,7 +5,10 @@
changes since 0.14.0 changes since 0.14.0
=================================== ===================================
NEW 2015-02-23 implemented an average-per-data-set option for musrFT. NEW 2015-02-23 implemented an average-per-data-set option for musrFT.
NEW 2015-02-21 add proper Mac icon to musredit NEW 2015-02-21 add proper Mac icon to musredit
FIXED 2015-09-17 in PMsr2Data::PrepareGlobalInputFile() there seem to be 'unmotivated'
break; commands in some loops. They prevent a proper map handling.
Since this is a real puzzle I contacted BMW for clarification.
FIXED 2015-09-14 any2many export of MusrRoot crashed when first histo group was != 0. FIXED 2015-09-14 any2many export of MusrRoot crashed when first histo group was != 0.
This happend when exporting to PSI-BIN or WKM. This is fixed now. This happend when exporting to PSI-BIN or WKM. This is fixed now.
FIXED 2015-09-08 fixed error in view_packing for single histo (wrong norm of the theory). FIXED 2015-09-08 fixed error in view_packing for single histo (wrong norm of the theory).

View File

@ -8,7 +8,7 @@
***************************************************************************/ ***************************************************************************/
/*************************************************************************** /***************************************************************************
* Copyright (C) 2009-2014 by Bastian M. Wojek / Andreas Suter * * Copyright (C) 2009-2015 by Bastian M. Wojek / Andreas Suter *
* andreas.suter@psi.ch * * andreas.suter@psi.ch *
* * * *
* This program is free software; you can redistribute it and/or modify * * This program is free software; you can redistribute it and/or modify *
@ -170,7 +170,7 @@ int PMsr2Data::DetermineRunNumberDigits(unsigned int runNo, bool normalMode) con
string::size_type loc = firstOnLine.rfind(tempRunNumber.str()); string::size_type loc = firstOnLine.rfind(tempRunNumber.str());
if ( loc != string::npos ) { if ( loc != string::npos ) {
while ( loc > 0 ) { while ( loc > 0 ) {
if(isdigit(firstOnLine.at(--loc))) { if (isdigit(firstOnLine.at(--loc))) {
++fRunNumberDigits; ++fRunNumberDigits;
} else { } else {
break; break;
@ -731,7 +731,7 @@ bool PMsr2Data::PrepareGlobalInputFile(unsigned int tempRun, const string &msrOu
msrParamList->at(i).fIsGlobal = true; msrParamList->at(i).fIsGlobal = true;
++fNumGlobalParam; ++fNumGlobalParam;
} }
//cout << msrParamList->at(i).fNo << " is global: " << msrParamList->at(i).fIsGlobal << endl; // cout << "debug> " << msrParamList->at(i).fNo << ": " << msrParamList->at(i).fName.Data() << " is global: " << msrParamList->at(i).fIsGlobal << endl;
} }
// check if parameters have been sorted correctly from the beginning // check if parameters have been sorted correctly from the beginning
@ -760,7 +760,7 @@ bool PMsr2Data::PrepareGlobalInputFile(unsigned int tempRun, const string &msrOu
bool mapExists(false); bool mapExists(false);
for (unsigned int i(0); i < tempLines->size(); ++i) { for (unsigned int i(0); i < tempLines->size(); ++i) {
line = (*tempLines)[i].fLine.Data(); line = (*tempLines)[i].fLine.Data();
split( tempVec, line, is_any_of(" \t") ); // split the theory line at spaces split( tempVec, line, is_any_of(" \t"), token_compress_on ); // split the theory line at spaces
for (unsigned int j(1); j < tempVec.size(); ++j) { for (unsigned int j(1); j < tempVec.size(); ++j) {
try { try {
tempPar = boost::lexical_cast<unsigned int>(tempVec[j]); tempPar = boost::lexical_cast<unsigned int>(tempVec[j]);
@ -813,7 +813,7 @@ bool PMsr2Data::PrepareGlobalInputFile(unsigned int tempRun, const string &msrOu
tempVec[j].append(boost::lexical_cast<string>(l + 1)); tempVec[j].append(boost::lexical_cast<string>(l + 1));
} }
} }
break; //as break;
} }
} }
} }
@ -902,7 +902,7 @@ bool PMsr2Data::PrepareGlobalInputFile(unsigned int tempRun, const string &msrOu
} }
mapExists = false; mapExists = false;
} }
break; //as break;
} }
} }
} }
@ -1060,12 +1060,11 @@ bool PMsr2Data::PrepareGlobalInputFile(unsigned int tempRun, const string &msrOu
tempLines = fMsrHandler->GetMsrTheory(); tempLines = fMsrHandler->GetMsrTheory();
for (unsigned int i(0); i < tempLines->size(); ++i) { for (unsigned int i(0); i < tempLines->size(); ++i) {
line = (*tempLines)[i].fLine.Data(); line = (*tempLines)[i].fLine.Data();
split( tempVec, line, is_any_of(" \t") ); // split the theory line at spaces split( tempVec, line, is_any_of(" \t"), token_compress_on ); // split the theory line at spaces
for (unsigned int j(1); j < tempVec.size(); ++j) { for (unsigned int j(1); j < tempVec.size(); ++j) {
try { try {
tempPar = boost::lexical_cast<unsigned int>(tempVec[j]); tempPar = boost::lexical_cast<unsigned int>(tempVec[j]);
if (!msrParamList->at(tempPar - 1).fIsGlobal) { if (!msrParamList->at(tempPar - 1).fIsGlobal) {
cerr << endl << ">> msr2data: **WARNING** The parameter " << msrParamList->at(tempPar - 1).fName.Data() \ cerr << endl << ">> msr2data: **WARNING** The parameter " << msrParamList->at(tempPar - 1).fName.Data() \
<< " is recognized as run specific!"; << " is recognized as run specific!";
@ -1112,7 +1111,7 @@ bool PMsr2Data::PrepareGlobalInputFile(unsigned int tempRun, const string &msrOu
lineChanged = true; lineChanged = true;
} }
} }
break; //as break;
} }
catch(boost::bad_lexical_cast &) { catch(boost::bad_lexical_cast &) {
// in case the cast does not work: do nothing - this means the entry is not a simple parameter // in case the cast does not work: do nothing - this means the entry is not a simple parameter