00001 // @(#)root/minuit2:$Id: MnFcn.cxx 20880 2007-11-19 11:23:41Z rdm $ 00002 // Authors: M. Winkler, F. James, L. Moneta, A. Zsenei 2003-2005 00003 00004 /********************************************************************** 00005 * * 00006 * Copyright (c) 2005 LCG ROOT Math team, CERN/PH-SFT * 00007 * * 00008 **********************************************************************/ 00009 00010 #include "Minuit2/MnFcn.h" 00011 #include "Minuit2/FCNBase.h" 00012 #include "Minuit2/MnVectorTransform.h" 00013 00014 namespace ROOT { 00015 00016 namespace Minuit2 { 00017 00018 00019 MnFcn::~MnFcn() { 00020 // std::cout<<"Total number of calls to FCN: "<<fNumCall<<std::endl; 00021 } 00022 00023 double MnFcn::operator()(const MnAlgebraicVector& v) const { 00024 // evaluate FCN converting from from MnAlgebraicVector to std::vector 00025 fNumCall++; 00026 return fFCN(MnVectorTransform()(v)); 00027 } 00028 00029 // double MnFcn::operator()(const std::vector<double>& par) const { 00030 // return fFCN(par); 00031 // } 00032 00033 double MnFcn::ErrorDef() const {return fFCN.Up();} 00034 00035 double MnFcn::Up() const {return fFCN.Up();} 00036 00037 } // namespace Minuit2 00038 00039 } // namespace ROOT