the formating of fixed parameters (step=0) where wrongly formatted (connected to MUSR-167). This should be done correctly now.

This commit is contained in:
nemu
2011-02-07 13:30:47 +00:00
parent 90ed9df1b6
commit 9e4f92173a
3 changed files with 19 additions and 12 deletions

View File

@ -498,8 +498,11 @@ Int_t PMsrHandler::WriteMsrLogFile(const Bool_t messages)
fout << left << fParam[number].fName.Data();
fout << " ";
// value of the parameter
neededPrec = NeededPrecision(fParam[number].fStep)+1;
if (fParam[number].fPosErrorPresent && (NeededPrecision(fParam[number].fPosError)+1 > neededPrec))
if (fParam[number].fStep == 0.0) // if fixed parameter take all significant digits
neededPrec = LastSignificant(fParam[number].fValue);
else // step/neg.error given hence they will limited the output precission of the value
neededPrec = NeededPrecision(fParam[number].fStep)+1;
if ((fParam[number].fStep != 0.0) && fParam[number].fPosErrorPresent && (NeededPrecision(fParam[number].fPosError)+1 > neededPrec))
neededPrec = NeededPrecision(fParam[number].fPosError)+1;
if (neededPrec < 6)
neededWidth = 9;
@ -513,6 +516,8 @@ Int_t PMsrHandler::WriteMsrLogFile(const Bool_t messages)
// value of step/error/neg.error
fout.width(11);
fout.setf(ios::fixed);
if (fParam[number].fStep == 0.0)
neededPrec = 0;
fout.precision(neededPrec);
fout << left << fParam[number].fStep;
fout << " ";