OK. In my case, evaluating FCN is much more expensive than the new, and
is done ~100 times more often. So the new is negligible.
Tom Roberts
Arthur E. Snyder wrote:
> You might want to make only one TMinuit for another reason, if you're
> using it a lot as would be indicated by your desire to reduce print.
> That is "new" is rather expensive in C++ and if your fit is pretty
> simple and you're just doing the fit many times, the "new" many times
> might be a big contributor to the CPU used. Using a single instance
> should not be a problem as long as you reset parameters to appropriate
> initial values before each fit.
>
> -Art S.
>
> A.E. Snyder, Group EC \!c*p?/
> SLAC Mail Stop #95 ((. .))
> Box 4349 |
> Stanford, Ca, USA, 94309 '\|/`
> e-mail:snyder_at_slac.stanford.edu o
> phone:650-926-2701 _
> http://www.slac.stanford.edu/~snyder BaBar
> FAX:650-926-2657 Collaboration
>
>
>
> On Fri, 1 May 2009, Tom Roberts wrote:
>
>> I am using TMinuit for a special fitting task, and am creating a
>> TMinuit object and calling Migrad() thousands of times. This
>> completely overwhelms the output, because it prints a page per call.
>> This is a large C++ simulation program linked with the Root libraries.
>>
>> How can I avoid ALL printout from TMinuit() and Migrad() ?
>>
>> I'm now doing this:
>> TMinuit *tm = new Tminuit();
>> tm->SetPrintLevel(0);
>> tm->Command("SET PRINTOUT -1");
>> ... use tm
>>
>> But I still get 3 lines per instance:
>> **********
>> ** 1 **SET PRINT 0
>> **********
>>
>> How can I avoid that? It seems to be using the global function
>> Printf(), which I could not find in the reference manual and there's
>> no source file Printf.cxx. I am willing to omit even warnings and
>> error messages, so how can I turn Printf() off?
>>
>> I tried:
>> stderr = stdout = fopen("/dev/null","w");
>> but that did not stop the output (!).
>>
>>
>> Perhaps I could just create a single TMinuit object and re-use it,
>> thus reducing this to 3 rather strange lines of output. But that
>> requires changing a lot of code, and I'd rather not do it (how much
>> state from the previous fit does TMinuit keep? -- I don't know, and
>> would rather not make my program depend on the answer).
>>
>>
>> Tom Roberts
>>
>>
Received on Fri May 01 2009 - 21:44:42 CEST
This archive was generated by hypermail 2.2.0 : Fri May 01 2009 - 23:50:01 CEST