{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Fillrandom\n",
    "FillRandom example\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "**Author:** Wim Lavrijsen  \n",
    "<i><small>This notebook tutorial was automatically generated with <a href= \"https://github.com/root-project/root/blob/master/documentation/doxygen/converttonotebook.py\">ROOTBOOK-izer</a> from the macro found in the ROOT repository  on Wednesday, March 03, 2021 at 09:39 AM.</small></i>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Welcome to JupyROOT 6.23/01\n"
     ]
    }
   ],
   "source": [
    "from ROOT import TCanvas, TPad, TFormula, TF1, TPaveLabel, TH1F, TFile\n",
    "from ROOT import gROOT, gBenchmark\n",
    "\n",
    "\n",
    "\n",
    "c1 = TCanvas( 'c1', 'The FillRandom example', 200, 10, 700, 900 )\n",
    "c1.SetFillColor( 18 )\n",
    "\n",
    "pad1 = TPad( 'pad1', 'The pad with the function',  0.05, 0.50, 0.95, 0.95, 21 )\n",
    "pad2 = TPad( 'pad2', 'The pad with the histogram', 0.05, 0.05, 0.95, 0.45, 21 )\n",
    "pad1.Draw()\n",
    "pad2.Draw()\n",
    "pad1.cd()\n",
    "\n",
    "gBenchmark.Start( 'fillrandom' )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A function (any dimension) or a formula may reference\n",
    "an already defined formula"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "form1 = TFormula( 'form1', 'abs(sin(x)/x)' )\n",
    "sqroot = TF1( 'sqroot', 'x*gaus(0) + [3]*form1', 0, 10 )\n",
    "sqroot.SetParameters( 10, 4, 1, 20 )\n",
    "pad1.SetGridx()\n",
    "pad1.SetGridy()\n",
    "pad1.GetFrame().SetFillColor( 42 )\n",
    "pad1.GetFrame().SetBorderMode( -1 )\n",
    "pad1.GetFrame().SetBorderSize( 5 )\n",
    "sqroot.SetLineColor( 4 )\n",
    "sqroot.SetLineWidth( 6 )\n",
    "sqroot.Draw()\n",
    "lfunction = TPaveLabel( 5, 39, 9.8, 46, 'The sqroot function' )\n",
    "lfunction.SetFillColor( 41 )\n",
    "lfunction.Draw()\n",
    "c1.Update()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Create a one dimensional histogram (one float per bin)\n",
    "and fill it following the distribution in function sqroot."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "pad2.cd();\n",
    "pad2.GetFrame().SetFillColor( 42 )\n",
    "pad2.GetFrame().SetBorderMode( -1 )\n",
    "pad2.GetFrame().SetBorderSize( 5 )\n",
    "h1f = TH1F( 'h1f', 'Test random numbers', 200, 0, 10 )\n",
    "h1f.SetFillColor( 45 )\n",
    "h1f.FillRandom( 'sqroot', 10000 )\n",
    "h1f.Draw()\n",
    "c1.Update()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Open a ROOT file and save the formula, function and histogram"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "fillrandom: Real Time =   0.65 seconds Cpu Time =   0.44 seconds\n"
     ]
    }
   ],
   "source": [
    "myfile = TFile( 'py-fillrandom.root', 'RECREATE' )\n",
    "form1.Write()\n",
    "sqroot.Write()\n",
    "h1f.Write()\n",
    "myfile.Close()\n",
    "gBenchmark.Show( 'fillrandom' )"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Draw all canvases "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<IPython.core.display.Image object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from ROOT import gROOT \n",
    "gROOT.GetListOfCanvases().Draw()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
