14 # pragma warning(disable:4231)
17 # pragma warning(disable:4251)
20 # pragma warning(disable:4275)
23 # pragma warning(disable:4800)
27 #include <boost/python.hpp>
34 using namespace boost::python;
42 class_ < Fitter, bases<>,
43 Fitter, boost::noncopyable >
45 "Provides an interface to objective function minimizers.",
48 .add_property (
"degreesOfFreedom",
49 &Fitter::calcDegreesOfFreedom )
51 .add_property (
"objectiveValue",
52 &Fitter::objectiveValue )
54 .def (
"name", &Fitter::name,
55 return_value_policy < copy_const_reference > (),
58 "Returns the minimizer name." )
60 .def (
"getFCN", &Fitter::getFCN,
61 return_value_policy < reference_existing_object > (),
62 "getFCN () -> FCNBase\n"
64 "Returns the objective function." )
66 .def (
"minimize", &Fitter::calcBestFit,
67 "minimize () -> Boolean\n"
69 "Attempts to do a minimization, returns True if successful." )
71 .def (
"setFixedFlags", &Fitter::setFixedFlags,
72 "setFixedFlags ( sequence ) -> None\n"
74 "Sets which parameters that should be fixed during a fit. A\n"
75 "`1' in the sequence indicates corresponding parameters is fixed." )
79 (
unsigned int,
double,
double ) )
84 (
const std::string &,
double,
double ) )
86 "setLimits ( name, low, high ) -> None\n"
87 "setLimits ( index, low, high ) -> None\n"
89 "Sets the limits on a model function parameter. Only minimizers\n"
90 "based on Minuit support this feature, others throw an exception." )
94 (
unsigned int,
double ) )
95 &Fitter::setStepSize )
99 (
const std::string &,
double ) )
100 &Fitter::setStepSize,
101 "setStepSize ( name, value ) -> None\n"
102 "setStepSize ( index, value ) -> None\n"
104 "Sets the step size for the model function parameter. Only\n"
105 "minimizers based on Minuit support this function, others\n"
106 "throw an exception." )