Logo ROOT   6.07/09
Reference Guide
Namespaces
fit1.py File Reference

Namespaces

 fit1
 

Detailed Description

View in nbviewer Open in SWAN Fit example.

pict1_fit1.py.png
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.27 seconds Cpu Time = 0.27 seconds
1 
2 from os import path
3 from ROOT import TCanvas, TFile, TPaveText
4 from ROOT import gROOT, gBenchmark
5 
6 c1 = TCanvas( 'c1', 'The Fit Canvas', 200, 10, 700, 500 )
7 c1.SetGridx()
8 c1.SetGridy()
9 c1.GetFrame().SetFillColor( 21 )
10 c1.GetFrame().SetBorderMode(-1 )
11 c1.GetFrame().SetBorderSize( 5 )
12 
13 gBenchmark.Start( 'fit1' )
14 #
15 # We connect the ROOT file generated in a previous tutorial
16 #
17 fill = TFile( 'py-fillrandom.root' )
18 
19 #
20 # The function "ls()" lists the directory contents of this file
21 #
22 fill.ls()
23 
24 #
25 # Get object "sqroot" from the file.
26 #
27 
28 sqroot = gROOT.FindObject( 'sqroot' )
29 sqroot.Print()
30 
31 #
32 # Now fit histogram h1f with the function sqroot
33 #
34 h1f = gROOT.FindObject( 'h1f' )
35 h1f.SetFillColor( 45 )
36 h1f.Fit( 'sqroot' )
37 
38 # We now annotate the picture by creating a PaveText object
39 # and displaying the list of commands in this macro
40 #
41 fitlabel = TPaveText( 0.6, 0.3, 0.9, 0.80, 'NDC' )
42 fitlabel.SetTextAlign( 12 )
43 fitlabel.SetFillColor( 42 )
44 fitlabel.ReadFile(path.join(gROOT.GetTutorialsDir(), 'pyroot', 'fit1_py.py'))
45 fitlabel.Draw()
46 c1.Update()
47 gBenchmark.Show( 'fit1' )
Author
Wim Lavrijsen

Definition in file fit1.py.