removed the 10 character limitation of the parameter name of minuit2 since this is fixed now in minuit2
This commit is contained in:
parent
1bf4af1eee
commit
9571fae953
@ -79,14 +79,7 @@ short term:
|
|||||||
**DONE** 08-08-08
|
**DONE** 08-08-08
|
||||||
|
|
||||||
* Minuit2: name length is now unlimited and hence the 10 char restriction can be lifted.
|
* Minuit2: name length is now unlimited and hence the 10 char restriction can be lifted.
|
||||||
|
**DONE** 08-08-08
|
||||||
* nonMusr: check why in nonMusr view there is NO legend??
|
|
||||||
|
|
||||||
* musrparam should be extended that is also can produce a db-file output.
|
|
||||||
I would suggest two switches:
|
|
||||||
--db -> will produce db-files but still expecting the independent variables in the par-list-file
|
|
||||||
--db-lem -> will extract some default independent variables from the system (to be checked what and
|
|
||||||
from where the data shall be taken).
|
|
||||||
|
|
||||||
* implement FFT with msr-interface
|
* implement FFT with msr-interface
|
||||||
|
|
||||||
|
@ -220,7 +220,6 @@ int PMsrHandler::ReadMsrFile()
|
|||||||
unsigned int parX, parY;
|
unsigned int parX, parY;
|
||||||
if (!CheckUniquenessOfParamNames(parX, parY)) {
|
if (!CheckUniquenessOfParamNames(parX, parY)) {
|
||||||
cout << endl << "PMsrHandler::ReadMsrFile: **SEVERE ERROR** parameter name " << fParam[parX].fName.Data() << " is identical for parameter no " << fParam[parX].fNo << " and " << fParam[parY].fNo << "!";
|
cout << endl << "PMsrHandler::ReadMsrFile: **SEVERE ERROR** parameter name " << fParam[parX].fName.Data() << " is identical for parameter no " << fParam[parX].fNo << " and " << fParam[parY].fNo << "!";
|
||||||
cout << endl << "It might be that only the 10 first characters are identical. Due to a current MINUIT2 limitation, this means they are \"identical\", sorry.";
|
|
||||||
cout << endl << "Needs to be fixed first!";
|
cout << endl << "Needs to be fixed first!";
|
||||||
error = PMUSR_MSR_SYNTAX_ERROR;
|
error = PMUSR_MSR_SYNTAX_ERROR;
|
||||||
}
|
}
|
||||||
@ -2375,19 +2374,10 @@ void PMsrHandler::FillParameterInUse(PMsrLines &theory, PMsrLines &funcs, PMsrLi
|
|||||||
bool PMsrHandler::CheckUniquenessOfParamNames(unsigned int &parX, unsigned int &parY)
|
bool PMsrHandler::CheckUniquenessOfParamNames(unsigned int &parX, unsigned int &parY)
|
||||||
{
|
{
|
||||||
bool unique = true;
|
bool unique = true;
|
||||||
char name1[11], name2[11];
|
|
||||||
|
|
||||||
for (unsigned int i=0; i<fParam.size()-1; i++) {
|
for (unsigned int i=0; i<fParam.size()-1; i++) {
|
||||||
for (unsigned int j=i+1; j<fParam.size(); j++) {
|
for (unsigned int j=i+1; j<fParam.size(); j++) {
|
||||||
// due to the current minuit2 limitation of 10 characters for the parameter name
|
|
||||||
memset(name1, 0, sizeof(name1));
|
|
||||||
strncpy(name1, fParam[i].fName.Data(), 10);
|
|
||||||
memset(name2, 0, sizeof(name2));
|
|
||||||
strncpy(name2, fParam[j].fName.Data(), 10);
|
|
||||||
/* as soon as the minuit2 parameter name limit is lifted, the if should become this:
|
|
||||||
if (fParam[i].fName.CompareTo(fParam[j].fName) == 0) { // equal
|
if (fParam[i].fName.CompareTo(fParam[j].fName) == 0) { // equal
|
||||||
*/
|
|
||||||
if (!strcmp(name1, name2)) { // equal
|
|
||||||
unique = false;
|
unique = false;
|
||||||
parX = i;
|
parX = i;
|
||||||
parY = j;
|
parY = j;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user