Logo ROOT  
Reference Guide
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
fit1.py File Reference

Namespaces

namespace  fit1
 

Detailed Description

View in nbviewer Open in SWAN Fit example.

TFile** py-fillrandom.root
TFile* py-fillrandom.root
KEY: TFormula form1;1 abs(sin(x)/x)
KEY: TF1 sqroot;1 x*gaus(0) + [3]*form1
KEY: TH1F h1f;1 Test random numbers
Formula based function: sqroot
sqroot : x*gaus(0) + [3]*form1 Ndim= 1, Npar= 4, Number= 0
Formula expression:
x*[p0]*exp(-0.5*((x-[p1])/[p2])*((x-[p1])/[p2]))+[p3]*(abs(sin(x)/x))
FCN=198.935 FROM MIGRAD STATUS=CONVERGED 148 CALLS 149 TOTAL
EDM=2.98567e-07 STRATEGY= 1 ERROR MATRIX ACCURATE
EXT PARAMETER STEP FIRST
NO. NAME VALUE ERROR SIZE DERIVATIVE
1 p0 3.31658e+01 5.45703e-01 3.00376e-03 -1.11540e-03
2 p1 4.00667e+00 1.65304e-02 9.48491e-05 -3.06425e-02
3 p2 9.84663e-01 1.28238e-02 6.05976e-05 -3.04244e-02
4 p3 6.34464e+01 1.33233e+00 8.77483e-03 -3.96109e-04
fit1 : Real Time = 0.29 seconds Cpu Time = 0.29 seconds
from os import path
from ROOT import TCanvas, TFile, TPaveText
from ROOT import gROOT, gBenchmark
c1 = TCanvas( 'c1', 'The Fit Canvas', 200, 10, 700, 500 )
c1.SetGridx()
c1.SetGridy()
c1.GetFrame().SetFillColor( 21 )
c1.GetFrame().SetBorderMode(-1 )
c1.GetFrame().SetBorderSize( 5 )
gBenchmark.Start( 'fit1' )
#
# We connect the ROOT file generated in a previous tutorial
#
fill = TFile( 'py-fillrandom.root' )
#
# The function "ls()" lists the directory contents of this file
#
fill.ls()
#
# Get object "sqroot" from the file.
#
sqroot = gROOT.FindObject( 'sqroot' )
sqroot.Print()
#
# Now fit histogram h1f with the function sqroot
#
h1f = gROOT.FindObject( 'h1f' )
h1f.SetFillColor( 45 )
h1f.Fit( 'sqroot' )
# We now annotate the picture by creating a PaveText object
# and displaying the list of commands in this macro
#
fitlabel = TPaveText( 0.6, 0.3, 0.9, 0.80, 'NDC' )
fitlabel.SetTextAlign( 12 )
fitlabel.SetFillColor( 42 )
fitlabel.ReadFile(path.join(str(gROOT.GetTutorialDir()), 'pyroot', 'fit1_py.py'))
fitlabel.Draw()
c1.Update()
gBenchmark.Show( 'fit1' )
The Canvas class.
Definition: TCanvas.h:27
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
Definition: TFile.h:53
A Pave (see TPave) with text, lines or/and boxes inside.
Definition: TPaveText.h:21
c SetBorderSize(2)
h1 SetFillColor(kGreen)
Author
Wim Lavrijsen

Definition in file fit1.py.