{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "13fbd680",
   "metadata": {},
   "source": [
    "# Legendre\n",
    "Example of first few Legendre Polynomials. Inspired by work of Lorenzo Moneta.\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "**Author:** Alberto Ferro, Massimiliano Galli  \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 Tuesday, May 19, 2026 at 08:25 PM.</small></i>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "33ef2ebf",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:25:36.842147Z",
     "iopub.status.busy": "2026-05-19T20:25:36.842019Z",
     "iopub.status.idle": "2026-05-19T20:25:37.926802Z",
     "shell.execute_reply": "2026-05-19T20:25:37.926045Z"
    }
   },
   "outputs": [],
   "source": [
    "import ROOT\n",
    "\n",
    "ROOT.gSystem.Load(\"libMathMore\")\n",
    "Canvas = ROOT.TCanvas(\"DistCanvas\", \"Legendre polynomials example\", 10, 10, 750, 600)\n",
    "Canvas.SetGrid()\n",
    "leg = ROOT.TLegend(0.5, 0.7, 0.4, 0.89)\n",
    "\n",
    "L = []\n",
    "for nu in range(5):\n",
    "    f = ROOT.TF1(\"L_0\", \"ROOT::Math::legendre([0],x)\", -1, 1)\n",
    "    f.SetParameters(nu, 0.0)\n",
    "    f.SetLineStyle(ROOT.kSolid)\n",
    "    f.SetLineWidth(2)\n",
    "    f.SetLineColor(nu+1)\n",
    "    L.append(f)\n",
    "\n",
    "L[0].SetMaximum(1)\n",
    "L[0].SetMinimum(-1)\n",
    "L[0].SetTitle(\"Legendre polynomials\")\n",
    "\n",
    "for idx, val in enumerate(L):\n",
    "    leg.AddEntry(val, \" L_{}(x)\".format(idx), \"l\")\n",
    "    if idx == 0:\n",
    "        val.Draw()\n",
    "    else:\n",
    "        val.Draw(\"same\")\n",
    "\n",
    "leg.Draw(\"same\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a9ae790d",
   "metadata": {},
   "source": [
    "Draw all canvases "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "1c15283d",
   "metadata": {
    "collapsed": false,
    "execution": {
     "iopub.execute_input": "2026-05-19T20:25:37.929676Z",
     "iopub.status.busy": "2026-05-19T20:25:37.929517Z",
     "iopub.status.idle": "2026-05-19T20:25:38.163296Z",
     "shell.execute_reply": "2026-05-19T20:25:38.162477Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "\n",
       "<div id=\"root_plot_1779222338152\" style=\"width: 750px; height: 600px; position: relative\">\n",
       "</div>\n",
       "\n",
       "</div>\n",
       "<script>\n",
       "   function process_root_plot_1779222338152() {\n",
       "      function execCode(Core) {\n",
       "         Core.settings.HandleKeys = false;\n",
       "         \n",
       "Core.unzipJSON(30432,'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').then(json => {\n",
       "   const obj = Core.parse(json);\n",
       "   Core.draw('root_plot_1779222338152', obj, '');\n",
       "});\n",
       "\n",
       "      }\n",
       "      const servers = ['/static/', 'https://root.cern/js/7.11.0/', 'https://jsroot.gsi.de/7.11.0/'],\n",
       "            path = 'build/jsroot';\n",
       "      if (typeof JSROOT !== 'undefined')\n",
       "         execCode(JSROOT);\n",
       "      else if (typeof requirejs !== 'undefined') {\n",
       "         servers.forEach((s,i) => { servers[i] = s + path; });\n",
       "         requirejs.config({ paths: { 'jsroot' : servers } })(['jsroot'],  execCode);\n",
       "      } else {\n",
       "         const config = document.getElementById('jupyter-config-data');\n",
       "         if (config)\n",
       "            servers[0] = (JSON.parse(config.innerHTML || '{}')?.baseUrl || '/') + 'static/';\n",
       "         else\n",
       "            servers.shift();\n",
       "         function loadJsroot() {\n",
       "            return !servers.length ? 0 : import(servers.shift() + path + '.js').catch(loadJsroot).then(() => execCode(JSROOT));\n",
       "         }\n",
       "         loadJsroot();\n",
       "      }\n",
       "   }\n",
       "   process_root_plot_1779222338152();\n",
       "</script>\n"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from ROOT import gROOT \n",
    "gROOT.GetListOfCanvases().Draw()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "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.12.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
