Get in memory an histogram from a root file and fit a user defined function.
Note that a user defined function must always be defined as in this example:
- first parameter: array of variables (in this example only 1-dimension)
- second parameter: array of parameters Note also that in case of user defined functions, one must set an initial value for each parameter.
Processing /mnt/build/workspace/root-makedoc-v614/rootspi/rdoc/src/v6-14-00-patches/tutorials/fit/myfit.C...
FCN=36.7428 FROM MIGRAD STATUS=CONVERGED 91 CALLS 92 TOTAL
EDM=5.8659e-11 STRATEGY= 1 ERROR MATRIX UNCERTAINTY 2.1 per cent
EXT PARAMETER STEP FIRST
NO. NAME VALUE ERROR SIZE DERIVATIVE
1 Constant 7.97964e+02 6.80343e+00 -5.06883e-03 -2.15486e-06
2 Mean_value -8.07109e-05 7.34948e-03 -6.41911e-06 -1.19538e-03
3 Sigma 9.98753e-01 7.14444e-03 -1.19305e-06 -1.68591e-03
Integral of function = 1907.35
{
if (par[2] != 0) arg = (x[0] - par[1])/par[2];
return fitval;
}
void myfit()
{
if (!hsimpleFile) return;
TF1 *func =
new TF1(
"fitf",fitf,-2,2,3);
printf(
"Integral of function = %g\n",func->
Integral(-2,2));
}
- Author
- Rene Brun
Definition in file myfit.C.