diff --git a/Generation_data.ipynb b/Generation_data.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..08b71c03d5cf8e9ba496afd8b9dfc54e723fe12e --- /dev/null +++ b/Generation_data.ipynb @@ -0,0 +1,173 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defaulting to user installation because normal site-packages is not writeable\n", + "Collecting MDAnalysis\n", + " Downloading MDAnalysis-1.0.1.tar.gz (3.8 MB)\n", + "\u001b[K |████████████████████████████████| 3.8 MB 1.8 MB/s eta 0:00:01 |█████████████████████ | 2.5 MB 724 kB/s eta 0:00:02\n", + "\u001b[?25hCollecting numpy<1.17,>=1.13.3\n", + " Using cached numpy-1.16.6-cp36-cp36m-manylinux1_x86_64.whl (17.4 MB)\n", + "Collecting biopython<1.77,>=1.71\n", + " Downloading biopython-1.76-cp36-cp36m-manylinux1_x86_64.whl (2.3 MB)\n", + "\u001b[K |████████████████████████████████| 2.3 MB 149 kB/s eta 0:00:01\n", + "\u001b[?25hCollecting networkx>=1.0\n", + " Downloading networkx-2.5-py3-none-any.whl (1.6 MB)\n", + "\u001b[K |████████████████████████████████| 1.6 MB 4.2 MB/s eta 0:00:01\n", + "\u001b[?25hCollecting GridDataFormats>=0.4.0\n", + " Downloading GridDataFormats-0.5.0-py2.py3-none-any.whl (2.0 MB)\n", + "\u001b[K |████████████████████████████████| 2.0 MB 3.1 MB/s eta 0:00:01 |███████████████████████■| 1.4 MB 3.1 MB/s eta 0:00:01 |█████████████████████████████▊ | 1.8 MB 3.1 MB/s eta 0:00:01\n", + "\u001b[?25hRequirement already satisfied: six>=1.4.0 in /home/student/.local/lib/python3.6/site-packages (from MDAnalysis) (1.13.0)\n", + "Collecting mmtf-python>=1.0.0\n", + " Downloading mmtf_python-1.1.2-py2.py3-none-any.whl (21 kB)\n", + "Requirement already satisfied: joblib<0.15.0,>=0.12 in /home/student/.local/lib/python3.6/site-packages (from MDAnalysis) (0.14.1)\n", + "Requirement already satisfied: scipy>=1.0.0 in /home/student/.local/lib/python3.6/site-packages (from MDAnalysis) (1.4.1)\n", + "Requirement already satisfied: matplotlib>=1.5.1 in /home/student/.local/lib/python3.6/site-packages (from MDAnalysis) (3.1.3)\n", + "Collecting mock\n", + " Downloading mock-4.0.3-py3-none-any.whl (28 kB)\n", + "Collecting tqdm>=4.43.0\n", + " Downloading tqdm-4.57.0-py2.py3-none-any.whl (72 kB)\n", + "\u001b[K |████████████████████████████████| 72 kB 760 kB/s eta 0:00:01\n", + "\u001b[?25hCollecting funcsigs\n", + " Downloading funcsigs-1.0.2-py2.py3-none-any.whl (17 kB)\n", + "Collecting gsd>=1.4.0\n", + " Downloading gsd-2.4.0-cp36-cp36m-manylinux2010_x86_64.whl (335 kB)\n", + "\u001b[K |████████████████████████████████| 335 kB 5.6 MB/s eta 0:00:01\n", + "\u001b[?25hRequirement already satisfied: decorator>=4.3.0 in /home/student/.local/lib/python3.6/site-packages (from networkx>=1.0->MDAnalysis) (4.4.1)\n", + "Collecting msgpack>=0.5.6\n", + " Downloading msgpack-1.0.2-cp36-cp36m-manylinux1_x86_64.whl (272 kB)\n", + "\u001b[K |████████████████████████████████| 272 kB 4.6 MB/s eta 0:00:01 |████████████████████████ | 204 kB 4.6 MB/s eta 0:00:01\n", + "\u001b[?25hRequirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /home/student/.local/lib/python3.6/site-packages (from matplotlib>=1.5.1->MDAnalysis) (2.4.6)\n", + "Requirement already satisfied: python-dateutil>=2.1 in /home/student/.local/lib/python3.6/site-packages (from matplotlib>=1.5.1->MDAnalysis) (2.8.1)\n", + "Requirement already satisfied: cycler>=0.10 in /home/student/.local/lib/python3.6/site-packages (from matplotlib>=1.5.1->MDAnalysis) (0.10.0)\n", + "Requirement already satisfied: kiwisolver>=1.0.1 in /home/student/.local/lib/python3.6/site-packages (from matplotlib>=1.5.1->MDAnalysis) (1.1.0)\n", + "Collecting cython<1,>=0.29.0\n", + " Downloading Cython-0.29.22-cp36-cp36m-manylinux1_x86_64.whl (2.0 MB)\n", + "\u001b[K |████████████████████████████████| 2.0 MB 3.7 MB/s eta 0:00:01 |█████████████ | 808 kB 3.7 MB/s eta 0:00:01\n", + "\u001b[?25hRequirement already satisfied: setuptools in /home/student/.local/lib/python3.6/site-packages (from kiwisolver>=1.0.1->matplotlib>=1.5.1->MDAnalysis) (44.0.0)\n", + "Building wheels for collected packages: MDAnalysis\n", + " Building wheel for MDAnalysis (setup.py) ... \u001b[?25ldone\n", + "\u001b[?25h Created wheel for MDAnalysis: filename=MDAnalysis-1.0.1-cp36-cp36m-linux_x86_64.whl size=4557115 sha256=96fabcf47cf3f37f5210309816197df2ed60c64efc2f49715e996951d7086ad9\n", + " Stored in directory: /home/student/.cache/pip/wheels/72/9f/3c/74fd17ef7a672583d77de485472b12634c5ac3476e4b50b478\n", + "Successfully built MDAnalysis\n", + "Installing collected packages: numpy, biopython, networkx, GridDataFormats, msgpack, mmtf-python, mock, tqdm, funcsigs, cython, gsd, MDAnalysis\n", + " Attempting uninstall: numpy\n", + " Found existing installation: numpy 1.18.1\n", + " Uninstalling numpy-1.18.1:\n", + " Successfully uninstalled numpy-1.18.1\n", + "\u001b[33m WARNING: The scripts f2py, f2py3 and f2py3.6 are installed in '/home/student/.local/bin' which is not on PATH.\n", + " Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.\u001b[0m\n", + "\u001b[33m WARNING: The script tqdm is installed in '/home/student/.local/bin' which is not on PATH.\n", + " Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.\u001b[0m\n", + "\u001b[33m WARNING: The scripts cygdb, cython and cythonize are installed in '/home/student/.local/bin' which is not on PATH.\n", + " Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.\u001b[0m\n", + "\u001b[33m WARNING: The script gsd is installed in '/home/student/.local/bin' which is not on PATH.\n", + " Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.\u001b[0m\n", + "Successfully installed GridDataFormats-0.5.0 MDAnalysis-1.0.1 biopython-1.76 cython-0.29.22 funcsigs-1.0.2 gsd-2.4.0 mmtf-python-1.1.2 mock-4.0.3 msgpack-1.0.2 networkx-2.5 numpy-1.16.6 tqdm-4.57.0\n", + "\u001b[33mWARNING: You are using pip version 20.0.2; however, version 21.0.1 is available.\n", + "You should consider upgrading via the '/usr/bin/python3 -m pip install --upgrade pip' command.\u001b[0m\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "!pip install MDAnalysis" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "ename": "FileNotFoundError", + "evalue": "[Errno 2] No such file or directory: 'topol.tpr'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-2-d70c889857b9>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;31m# Load simulation results with a single line\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mu\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmda\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mUniverse\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'topol.tpr'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m'traj.trr'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;31m# Select atoms\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/core/universe.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, *args, **kwargs)\u001b[0m\n\u001b[1;32m 372\u001b[0m topology = _topology_from_file_like(self.filename,\n\u001b[1;32m 373\u001b[0m \u001b[0mtopology_format\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mtopology_format\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 374\u001b[0;31m **kwargs)\n\u001b[0m\u001b[1;32m 375\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 376\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mtopology\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/core/universe.py\u001b[0m in \u001b[0;36m_topology_from_file_like\u001b[0;34m(topology_file, topology_format, **kwargs)\u001b[0m\n\u001b[1;32m 132\u001b[0m errno.errorcode[err.errno] in ['ENOENT', 'EACCES']):\n\u001b[1;32m 133\u001b[0m \u001b[0;31m# Runs if the error is propagated due to no permission / file not found\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 134\u001b[0;31m \u001b[0msix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreraise\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0msys\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexc_info\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 135\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 136\u001b[0m \u001b[0;31m# Runs when the parser fails\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/six.py\u001b[0m in \u001b[0;36mreraise\u001b[0;34m(tp, value, tb)\u001b[0m\n\u001b[1;32m 694\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__traceback__\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mtb\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 695\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwith_traceback\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtb\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 696\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 697\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 698\u001b[0m \u001b[0mvalue\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/core/universe.py\u001b[0m in \u001b[0;36m_topology_from_file_like\u001b[0;34m(topology_file, topology_format, **kwargs)\u001b[0m\n\u001b[1;32m 124\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 125\u001b[0m \u001b[0;32mwith\u001b[0m \u001b[0mparser\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtopology_file\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mp\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 126\u001b[0;31m \u001b[0mtopology\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mparse\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 127\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mIOError\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mOSError\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 128\u001b[0m \u001b[0;31m# There are 2 kinds of errors that might be raised here:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/topology/TPRParser.py\u001b[0m in \u001b[0;36mparse\u001b[0;34m(self, **kwargs)\u001b[0m\n\u001b[1;32m 179\u001b[0m \u001b[0mstructure\u001b[0m \u001b[0;34m:\u001b[0m \u001b[0mdict\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 180\u001b[0m \"\"\"\n\u001b[0;32m--> 181\u001b[0;31m \u001b[0;32mwith\u001b[0m \u001b[0mopenany\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'rb'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0minfile\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 182\u001b[0m \u001b[0mtprf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0minfile\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 183\u001b[0m \u001b[0mdata\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtpr_utils\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTPXUnpacker\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtprf\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/lib/python3.6/contextlib.py\u001b[0m in \u001b[0;36m__enter__\u001b[0;34m(self)\u001b[0m\n\u001b[1;32m 79\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m__enter__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 80\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 81\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mnext\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgen\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 82\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0mStopIteration\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 83\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mRuntimeError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"generator didn't yield\"\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/lib/util.py\u001b[0m in \u001b[0;36mopenany\u001b[0;34m(datasource, mode, reset)\u001b[0m\n\u001b[1;32m 310\u001b[0m \u001b[0;34m:\u001b[0m\u001b[0mfunc\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;31m`\u001b[0m\u001b[0manyopen\u001b[0m\u001b[0;31m`\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 311\u001b[0m \"\"\"\n\u001b[0;32m--> 312\u001b[0;31m \u001b[0mstream\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0manyopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdatasource\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mreset\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mreset\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 313\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 314\u001b[0m \u001b[0;32myield\u001b[0m \u001b[0mstream\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/lib/util.py\u001b[0m in \u001b[0;36manyopen\u001b[0;34m(datasource, mode, reset)\u001b[0m\n\u001b[1;32m 397\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mext\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0;34m'bz2'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'gz'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m''\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m \u001b[0;31m# file == '' should be last\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 398\u001b[0m \u001b[0mopenfunc\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mhandlers\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mext\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 399\u001b[0;31m \u001b[0mstream\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_get_stream\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mdatasource\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mopenfunc\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 400\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mstream\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 401\u001b[0m \u001b[0;32mbreak\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/lib/util.py\u001b[0m in \u001b[0;36m_get_stream\u001b[0;34m(filename, openfunction, mode)\u001b[0m\n\u001b[1;32m 439\u001b[0m \u001b[0;31m# either the file isn't there or the permissions don't allow access.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 440\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0merrno\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0merrorcode\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0merr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0merrno\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32min\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0;34m'ENOENT'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'EACCES'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 441\u001b[0;31m \u001b[0msix\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreraise\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0msys\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexc_info\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 442\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 443\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstartswith\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'r'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/six.py\u001b[0m in \u001b[0;36mreraise\u001b[0;34m(tp, value, tb)\u001b[0m\n\u001b[1;32m 694\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__traceback__\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mtb\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 695\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwith_traceback\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtb\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 696\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 697\u001b[0m \u001b[0;32mfinally\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 698\u001b[0m \u001b[0mvalue\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mNone\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m~/.local/lib/python3.6/site-packages/MDAnalysis/lib/util.py\u001b[0m in \u001b[0;36m_get_stream\u001b[0;34m(filename, openfunction, mode)\u001b[0m\n\u001b[1;32m 433\u001b[0m \u001b[0;34m\"\"\"Return open stream if *filename* can be opened with *openfunction* or else ``None``.\"\"\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 434\u001b[0m \u001b[0;32mtry\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 435\u001b[0;31m \u001b[0mstream\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mopenfunction\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mmode\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 436\u001b[0m \u001b[0;32mexcept\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mIOError\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mOSError\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0merr\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 437\u001b[0m \u001b[0;31m# An exception might be raised due to two reasons, first the openfunction is unable to open the file, in this\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/lib/python3.6/bz2.py\u001b[0m in \u001b[0;36mopen\u001b[0;34m(filename, mode, compresslevel, encoding, errors, newline)\u001b[0m\n\u001b[1;32m 320\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 321\u001b[0m \u001b[0mbz_mode\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreplace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"t\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 322\u001b[0;31m \u001b[0mbinary_file\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mBZ2File\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbz_mode\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mcompresslevel\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mcompresslevel\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 323\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 324\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m\"t\"\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;32m/usr/lib/python3.6/bz2.py\u001b[0m in \u001b[0;36m__init__\u001b[0;34m(self, filename, mode, buffering, compresslevel)\u001b[0m\n\u001b[1;32m 94\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 95\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mstr\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbytes\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mPathLike\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 96\u001b[0;31m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_fp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0m_builtin_open\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mmode\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 97\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_closefp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 98\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_mode\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmode_code\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'topol.tpr'" + ] + } + ], + "source": [ + "import MDAnalysis as mda\n", + "\n", + "# Load simulation results with a single line\n", + "u = mda.Universe('topol.tpr','traj.trr')\n", + "\n", + "#u = mda.Universe('something.parm7', trj, topology_format='PRMTOP')\n", + "\n", + "# Select atoms\n", + "ag = u.select_atoms('name OH')\n", + "\n", + "# Atom data made available as Numpy arrays\n", + "ag.positions\n", + "ag.velocities\n", + "ag.forces\n", + "\n", + "# Iterate through trajectories\n", + "for ts in u.trajectory:\n", + " print(ag.center_of_mass())" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "mda?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "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.6.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/codigo/.ipynb_checkpoints/Models_regulation-MT-01-checkpoint.ipynb b/codigo/.ipynb_checkpoints/Models_regulation-MT-01-checkpoint.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..2fd64429bf421126b7000c94ce0f6fd186fbd01f --- /dev/null +++ b/codigo/.ipynb_checkpoints/Models_regulation-MT-01-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/codigo/.ipynb_checkpoints/Ploting_data_through_ROOT-checkpoint.ipynb b/codigo/.ipynb_checkpoints/Ploting_data_through_ROOT-checkpoint.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..2fd64429bf421126b7000c94ce0f6fd186fbd01f --- /dev/null +++ b/codigo/.ipynb_checkpoints/Ploting_data_through_ROOT-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/codigo/Data-regulationMT-01.csv b/codigo/Data-regulationMT-01.csv new file mode 100644 index 0000000000000000000000000000000000000000..1a069dc9e5d162d63ff0b641ae8257586aa2d7d9 --- /dev/null +++ b/codigo/Data-regulationMT-01.csv @@ -0,0 +1,100 @@ +0,2,0 +0.121212121,1.772295826,0.113616417 +0.242424242,1.570540007,0.214777427 +0.363636364,1.391848714,0.30437381 +0.484848485,1.233606744,0.383716838 +0.606060606,1.09344035,0.453996714 +0.727272727,0.969200724,0.516290858 +0.848484848,0.859037206,0.571527196 +0.96969697,0.761474352,0.620445522 +1.090909091,0.675145829,0.663730918 +1.212121212,0.598775091,0.702023449 +1.333333333,0.531175376,0.735918161 +1.454545455,0.471249708,0.765965082 +1.575757576,0.41802983,0.792649698 +1.696969697,0.370821182,0.816320264 +1.818181818,0.329019155,0.837279934 +1.939393939,0.292049731,0.855816521 +2.060606061,0.259370225,0.872202129 +2.181818182,0.230469286,0.886693152 +2.303030303,0.20486689,0.899530275 +2.424242424,0.182117246,0.910937019 +2.545454545,0.161901883,0.921073066 +2.666666667,0.143984087,0.930057106 +2.787878788,0.128129348,0.938006723 +2.909090909,0.114114813,0.945033655 +3.03030303,0.101729288,0.951243797 +3.151515152,0.090773234,0.956737197 +3.272727273,0.081058773,0.961608059 +3.393939394,0.072416467,0.965941339 +3.515151515,0.064741776,0.969789453 +3.636363636,0.057942655,0.973198554 +3.757575758,0.051928666,0.976213987 +3.878787879,0.046613836,0.97887886 +4,0.041916658,0.98123404 +4.121212121,0.037760088,0.983318157 +4.242424242,0.034071548,0.985167603 +4.363636364,0.030788845,0.986813561 +4.484848485,0.027875432,0.988274356 +4.606060606,0.025295331,0.989568026 +4.727272727,0.023013847,0.990711969 +4.848484848,0.020997964,0.99172274 +4.96969697,0.019216345,0.992616049 +5.090909091,0.017639335,0.993406767 +5.212121212,0.01623896,0.994108919 +5.333333333,0.014992391,0.994733953 +5.454545455,0.013886276,0.995288563 +5.575757576,0.0129069,0.995779625 +5.696969697,0.012041104,0.996213738 +5.818181818,0.011276324,0.996597201 +5.939393939,0.010600594,0.996936014 +6.060606061,0.010002542,0.997235879 +6.181818182,0.009471392,0.997502199 +6.303030303,0.008998198,0.997739461 +6.424242424,0.008578046,0.997950126 +6.545454545,0.008205944,0.998136699 +6.666666667,0.007877047,0.998301609 +6.787878788,0.007586688,0.998447196 +6.909090909,0.007330383,0.998575708 +7.03030303,0.007103824,0.998689306 +7.151515152,0.006902887,0.998790056 +7.272727273,0.006723708,0.998879897 +7.393939394,0.006564062,0.998959944 +7.515151515,0.006422396,0.999030976 +7.636363636,0.006297068,0.999093816 +7.757575758,0.006186466,0.999149272 +7.878787879,0.006089008,0.999198138 +8,0.006003146,0.999241189 +8.121212121,0.00592736,0.999279189 +8.242424242,0.005860163,0.999312881 +8.363636364,0.005800101,0.999342996 +8.484848485,0.005746256,0.999369994 +8.606060606,0.005698295,0.999394042 +8.727272727,0.005655779,0.99941536 +8.848484848,0.005618257,0.999434173 +8.96969697,0.005585271,0.999450713 +9.090909091,0.005556349,0.999465214 +9.212121212,0.005531011,0.999477919 +9.333333333,0.005508765,0.999489073 +9.454545455,0.005489111,0.999498928 +9.575757576,0.005471535,0.99950774 +9.696969697,0.005455548,0.999515757 +9.818181818,0.005441076,0.999523013 +9.939393939,0.005428115,0.999529512 +10.06060606,0.005416599,0.999535286 +10.18181818,0.005406451,0.999540374 +10.3030303,0.005397583,0.99954482 +10.42424242,0.005389889,0.999548678 +10.54545455,0.005383255,0.999552005 +10.66666667,0.005377549,0.999554865 +10.78787879,0.005372629,0.999557332 +10.90909091,0.00536834,0.999559483 +11.03030303,0.005364512,0.999561402 +11.15151515,0.005360963,0.999563182 +11.27272727,0.005357561,0.999564888 +11.39393939,0.005354503,0.999566421 +11.51515152,0.005351796,0.999567778 +11.63636364,0.005349399,0.99956898 +11.75757576,0.005347279,0.999570043 +11.87878788,0.005345402,0.999570984 +12,0.005343737,0.999571819 diff --git a/codigo/Data-regulationMT-Hill-n-1.csv b/codigo/Data-regulationMT-Hill-n-1.csv new file mode 100644 index 0000000000000000000000000000000000000000..3b122882b69d513a13a5ad84a093d7e1c03fae6d --- /dev/null +++ b/codigo/Data-regulationMT-Hill-n-1.csv @@ -0,0 +1,40 @@ +0.0,0.5003725093208784,0.5002635336298441 +0.1,0.5003725093208784,0.5002635336298441 +0.2,0.5003725093208784,0.5002635336298441 +0.30000000000000004,0.5003725093208784,0.5002635336298441 +0.4,0.5003725093208784,0.5002635336298441 +0.5,0.5000000324226912,0.499987738980873 +0.6000000000000001,0.3684505730728897,0.7999413049999861 +0.7000000000000001,0.3333862233694828,0.8234527164457729 +0.8,0.30440261380722156,0.8420304603050057 +0.9,0.2800203800029453,0.8571206563902791 +1.0,0.25929073966939437,0.8695359220568302 +1.1,0.24141842034528357,0.8799639119357057 +1.2000000000000002,0.22585016491392831,0.8888548256660618 +1.3,0.21214188985964097,0.8965365099397375 +1.4000000000000001,0.20001881560523313,0.9032127440210819 +1.5,0.18920914903197483,0.9090777432982226 +1.6,0.17952030460244375,0.9142657163021467 +1.7000000000000002,0.1707670090011002,0.9188984792938077 +1.8,0.16281831339115352,0.923062102616862 +1.9000000000000001,0.1555812281382025,0.9268154927144648 +2.0,0.14895363229742112,0.9302237803574641 +2.1,0.14287994992023972,0.933321871322136 +2.2,0.13727656868905427,0.9361593235972592 +2.3000000000000003,0.13209617641562135,0.9387651044936539 +2.4000000000000004,0.12729261459273095,0.941166475818616 +2.5,0.1228262062691887,0.9433865829893867 +2.6,0.11866265675413773,0.9454452037802301 +2.7,0.11477217076886612,0.9473593393573387 +2.8000000000000003,0.11112873788964207,0.949143685048475 +2.9000000000000004,0.10770954999735455,0.9508110084646106 +3.0,0.10449452312610805,0.9523724555721843 +3.1,0.1014659025120566,0.9538378002411535 +3.2,0.09860793442568008,0.955215649084545 +3.3000000000000003,0.09590659197205274,0.9565136106640236 +3.4000000000000004,0.09334934477970327,0.9577384360901717 +3.5,0.09092496459451374,0.9588961365050388 +3.6,0.08862336041300971,0.9599920817634262 +3.7,0.08643543804747876,0.961031083732167 +3.8000000000000003,0.08435298000043374,0.9620174669339435 +3.9000000000000004,0.08236854230226946,0.9629551287234683 diff --git a/codigo/Data-regulationMT-Hill-n-2.csv b/codigo/Data-regulationMT-Hill-n-2.csv new file mode 100644 index 0000000000000000000000000000000000000000..7272819027a4d14f311cf37c8398378353b29b47 --- /dev/null +++ b/codigo/Data-regulationMT-Hill-n-2.csv @@ -0,0 +1,40 @@ +0.0,0.5000895212785803,0.5000701568813557 +0.1,0.5000895212785803,0.5000701568813557 +0.2,0.5000895212785803,0.5000701568813557 +0.30000000000000004,0.5000895212785803,0.5000701568813557 +0.4,0.5000895212785803,0.5000701568813557 +0.5,0.5000000001130316,0.49998771083776167 +0.6000000000000001,0.25392425955165593,0.9410955711999415 +0.7000000000000001,0.2000190636237749,0.9560670201955442 +0.8,0.16068803592846057,0.9659945395676608 +0.9,0.13138679647841006,0.9729501314825678 +1.0,0.10914868184539059,0.9779772633716188 +1.1,0.0919592666601406,0.9817200241743527 +1.2000000000000002,0.0784176371563117,0.9846005683435494 +1.3,0.06760714999461692,0.9868450582019983 +1.4000000000000001,0.05884543839306049,0.9886349682575395 +1.5,0.05164891667743163,0.990088491946264 +1.6,0.045686087622408555,0.9912752991988226 +1.7000000000000002,0.04068121234243594,0.9922645927920827 +1.8,0.03644951414708938,0.9930932209382096 +1.9000000000000001,0.03283407507452361,0.9937982738207196 +2.0,0.029728817825163418,0.9943994762137497 +2.1,0.027041285700103387,0.9949166675546103 +2.2,0.02469908903788355,0.9953657209044404 +2.3000000000000003,0.022646515703774815,0.9957577961222704 +2.4000000000000004,0.02083803435286969,0.9961021272716363 +2.5,0.01923666614072363,0.9964061519562049 +2.6,0.017812138730916346,0.9966759146097902 +2.7,0.01653948617044195,0.9969163680773826 +2.8000000000000003,0.015397976394178003,0.9971316017594329 +2.9000000000000004,0.014370282058514455,0.9973250160519018 +3.0,0.013441833914965623,0.9974994570470348 +3.1,0.012600312416912953,0.99765732150579 +3.2,0.01183524493872282,0.9978006393643014 +3.3000000000000003,0.011137684360839544,0.9979311391014777 +3.4000000000000004,0.010499950836432653,0.9980502999158104 +3.5,0.009915313348187366,0.9981594486560699 +3.6,0.009377783339314898,0.9982598120151169 +3.7,0.008882741119497568,0.99835216033984 +3.8000000000000003,0.008425835545679855,0.9984373247991912 +3.9000000000000004,0.008003257202939136,0.9985160315433619 diff --git a/codigo/Data-regulationMT-Hill-n-3.csv b/codigo/Data-regulationMT-Hill-n-3.csv new file mode 100644 index 0000000000000000000000000000000000000000..a09c4823dbaf81950fba40d718307f6e20511b8b --- /dev/null +++ b/codigo/Data-regulationMT-Hill-n-3.csv @@ -0,0 +1,40 @@ +0.0,0.5001914166554114,0.5001781291250254 +0.1,0.5001914166554114,0.5001781291250254 +0.2,0.5001914166554114,0.5001781291250254 +0.30000000000000004,0.5001914166554114,0.5001781291250254 +0.4,0.5001914166554114,0.5001781291250254 +0.5,0.5000000000004217,0.4999877111895546 +0.6000000000000001,0.16564566088989277,0.9845670390480075 +0.7000000000000001,0.11112771013491148,0.9902307754026871 +0.8,0.07728628461836429,0.993430248314297 +0.9,0.055561733377895633,0.9953745433000848 +1.0,0.04112715046066399,0.9966210058717909 +1.1,0.031224815986355972,0.9974547931026279 +1.2000000000000002,0.02422711236013803,0.9980375961883003 +1.3,0.019155812042515933,0.9984554840039376 +1.4000000000000001,0.015398089944471196,0.998761715582496 +1.5,0.012557565775132923,0.9989923864913078 +1.6,0.010372785854511126,0.9991682462909814 +1.7000000000000002,0.008665311036088627,0.9993052220375263 +1.8,0.00731145905332177,0.9994143136176943 +1.9000000000000001,0.006224994687322042,0.9995013203329515 +2.0,0.005343737352315769,0.9995718186890494 +2.1,0.004621221309995101,0.9996292255189204 +2.2,0.004023260996353654,0.999676712876247 +2.3000000000000003,0.0035242636609718924,0.999716296962609 +2.4000000000000004,0.003104610810138855,0.9997495556050164 +2.5,0.0027491634795576026,0.9997777031292361 +2.6,0.0024461151808497137,0.9998016844685569 +2.7,0.0021861679582715504,0.9998222424166194 +2.8000000000000003,0.00196193287389142,0.9998399663494969 +2.9000000000000004,0.0017674885514200101,0.9998553279700871 +3.0,0.0015980524783116646,0.9998687078386617 +3.1,0.001449733719507738,0.9998804152785247 +3.2,0.0013193450723339908,0.9998907034619784 +3.3000000000000003,0.0012042590782278396,0.9998997809513012 +3.4000000000000004,0.0011022967121616888,0.9999078206054962 +3.5,0.0010116406457208826,0.9999149665107396 +3.6,0.0009307671505377769,0.9999213394147407 +3.7,0.0008583922573683177,0.9999270410189333 +3.8000000000000003,0.0007934289018617424,0.9999321573917304 +3.9000000000000004,0.0007349525995715279,0.999936761700317 diff --git a/codigo/Data-regulationMT-Hill-n-3.root b/codigo/Data-regulationMT-Hill-n-3.root new file mode 100644 index 0000000000000000000000000000000000000000..fe547d52ba09f92ae6c2b49e2824ffe31c027e66 Binary files /dev/null and b/codigo/Data-regulationMT-Hill-n-3.root differ diff --git a/codigo/Data-regulationMT-Hill-n-4.csv b/codigo/Data-regulationMT-Hill-n-4.csv new file mode 100644 index 0000000000000000000000000000000000000000..8c16e36a4cccdb4ed4362740ee2655ddc8ed234e --- /dev/null +++ b/codigo/Data-regulationMT-Hill-n-4.csv @@ -0,0 +1,40 @@ +0.0,0.5001399976399904,0.5001274226425318 +0.1,0.5001399976399904,0.5001274226425318 +0.2,0.5001399976399904,0.5001274226425318 +0.30000000000000004,0.5001399976399904,0.5001274226425318 +0.4,0.5001399976399904,0.5001274226425318 +0.5,0.5000000000000017,0.4999877113602935 +0.6000000000000001,0.10379553428739466,0.9960686116097028 +0.7000000000000001,0.05884135413615143,0.9978696667905183 +0.8,0.035356695841928173,0.9987462437548277 +0.9,0.022374369101203297,0.9992137192962437 +1.0,0.014798491988860657,0.9994799785528041 +1.1,0.010158783430178137,0.999642088274069 +1.2000000000000002,0.007197842179718742,0.9997450200897022 +1.3,0.005239485805655263,0.9998129682326721 +1.4000000000000001,0.003903997870508615,0.9998590720834647 +1.5,0.0029681928131459795,0.9998916570739744 +1.6,0.002297189380575519,0.9999148967040359 +1.7000000000000002,0.0018061411848876708,0.9999319919371408 +1.8,0.0014401186850826332,0.9999448243584752 +1.9000000000000001,0.001162900228268184,0.999954467523104 +2.0,0.000949732147954342,0.999961992742792 +2.1,0.0007836870909605201,0.999967629043757 +2.2,0.0006528898932550337,0.9999720335612408 +2.3000000000000003,0.0005486586034167644,0.9999755561115529 +2.4000000000000004,0.00046477374321072834,0.9999784013183276 +2.5,0.00039666947856229065,0.9999807105342488 +2.6,0.0003409145065916174,0.9999826005290514 +2.7,0.0002949170445249394,0.9999841594296848 +2.8000000000000003,0.00025669814618902175,0.9999854544798693 +2.9000000000000004,0.000224731589622024,0.9999865375114078 +3.0,0.00019782931245738777,0.9999874488535841 +3.1,0.00017505844699556113,0.9999882201610214 +3.2,0.00015568056320278356,0.9999888764826311 +3.3000000000000003,0.00013910670821655073,0.9999894377914438 +3.4000000000000004,0.00012486380897101858,0.9999899201270439 +3.5,0.00011256933531598097,0.9999903364566396 +3.6,0.00010191202775376489,0.9999906973297151 +3.7,9.263711916981682e-05,0.999991011379828 +3.8000000000000003,8.453491593355563e-05,0.9999912857122019 +3.9000000000000004,7.74319110054064e-05,0.9999915262052852 diff --git a/codigo/Modelo_regulacion-00.jpg b/codigo/Modelo_regulacion-00.jpg new file mode 100644 index 0000000000000000000000000000000000000000..abf255ea853e11b76b04cbc66ff7ff3ef60cc752 Binary files /dev/null and b/codigo/Modelo_regulacion-00.jpg differ diff --git a/codigo/Modelo_regulacion-01.jpg b/codigo/Modelo_regulacion-01.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bb978bcd64b38020ced84631ac023ce296939a4f Binary files /dev/null and b/codigo/Modelo_regulacion-01.jpg differ diff --git a/codigo/Modelo_regulacion-02.jpg b/codigo/Modelo_regulacion-02.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5270536b54e4f2b05dc977c7abe157dec7c64c67 Binary files /dev/null and b/codigo/Modelo_regulacion-02.jpg differ diff --git a/codigo/Modelo_regulacion-03.jpg b/codigo/Modelo_regulacion-03.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8b26cbeed8d6f43563ba9eb11fd5573d4423edfd Binary files /dev/null and b/codigo/Modelo_regulacion-03.jpg differ diff --git a/codigo/Models_regulation-MT-01.ipynb b/codigo/Models_regulation-MT-01.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..e7583c756547298334a3059edf9e36438df5219c --- /dev/null +++ b/codigo/Models_regulation-MT-01.ipynb @@ -0,0 +1,411 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<img src=\"Modelo_regulacion-02.jpg\">\n", + "\n", + "# <div align=\"center\">Alumno: Christian Solis Calero\n", + "## <div align=\"center\">Institución: Universidad Nacional Mayor de San Marcos\n", + "<img src=\"Modelo_regulacion-02.jpg\">" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# <div align=\"center\">Modelado de la dinámica del control de la expresión génica del ciclo de glioxilato en Mycobacterium tuberculosis mediante factores transcripcionales RamB y PrpR\n", + "Mycobacterium tuberculosis (MT es el agente causal de la tuberculosis (TB) y la principal causa de casi dos millones de muertes cada año y aproximadamente un tercio de la población mundial alberga una infección latente. Esta latencia se debe a la capacidad de este patógeno para persistir dentro de un huésped durante décadas dentro de las células como macrófagos. Una de las vÃas metabólicas crÃticas para este propósito es el ciclo del glioxilato (GC). \n", + "<img src=\"Modelo_regulacion-00.jpg\">\n", + " \n", + "Los estudios experimentales sobre los mecanismos reguladores que controlan la expresión de las enzimas del GC han identificado dos reguladores transcripcionales como RamB y PrpR. RamB es un regulador negátivo de la expresión de componentes del GC como el gen icl que codifica la enzima isocitrato liasa, solo durante el crecimiento en glucosa, y también es capaz de regular negativamente su propia expresión. Por otro lado, el factor de transcripción PrpR es capaz de inducir la expresión de genes relacionados con GC, y reprime la actividad de RamB. En este trabajo, proponemos un modelo matemático que representa un circuito regulatotio para el control del GC considerando como factores transcripcionales RamB y PrpR como un ciclo de retroalimentación coherente. El modelo se implementó a través de ecuaciones diferenciales ordinarias (ODEs) teniendo en cuenta la evidencia experimental, y las simulaciones con estas ODEs se realizaron mediante el método explÃcito Runge-Kutta RK45, en entorno Python. El análisis de estas simulaciones verifica que este circuito regulador de genes de factores de transcripción RamB y PrpR, es capaz de controlar la expresión génica de componentes del GC según la disponibilidad de diferentes fuentes de carbono.\n", + "\n", + "<img src=\"Modelo_regulacion-01.jpg\">" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<img src=\"Modelo_regulacion-02.jpg\">" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 1. Simulaciones númericas del modelo bajo diferentes concentraciones de [PrpR]" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "from scipy.integrate import odeint\n", + "import matplotlib.pyplot as plt\n", + "from matplotlib.ticker import FormatStrFormatter\n", + "from scipy.integrate import solve_ivp\n", + "\n", + "# Planteamiento del modelo: \n", + "#B: RamB (MT)\n", + "#A: PrpR\n", + "#C: operon Prp\n", + "\n", + "# A ---| B ---| C\n", + "# | ^\n", + "# |______________|\n", + "\n", + "#[Glucose]signal\n", + "# |\n", + "# V\n", + "# A(active)\n", + "# | |\n", + "# _ |\n", + "# --|---gene B ------\n", + "# - | | \n", + "# | | v\n", + "# | | B(inactive)\n", + "# | | | (join CoA [propionate] signal)\n", + "# | | V\n", + "# --|----- B ---k1--->\n", + "# | | \n", + "# V _\n", + "# ---------------gene C ------\n", + "# | \n", + "# v\n", + "# C ---K2--->\n", + "\n", + "# [A] = cte\n", + "# dB/dt = (ka^n)/(([A]^n)+ka^n)+(kb^n)/(([A]^n)+Kb^n) - k1*[B]\n", + "# dC/dt = (kb^n)/(([B]^n)+Kb^n) + ([A]^n)/(([A]^n)+Ka^n) - k2*[C]\n", + "\n", + "# P[0] = B, P[1] = C,\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Declarando los parámetros del modelo A es equivalente a [PrpR], k1,k2, ka1,ka2, son las constantes cinéticas para la formación y degradación de RamB (1) e Icl1 (2), Kb es la constante de regulación y n es el coeficiente de Hill" + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "metadata": {}, + "outputs": [], + "source": [ + "k1 = 1.0\n", + "k2= 1.0\n", + "ka1= 0.35\n", + "ka2= 0.15\n", + "kb= 0.50\n", + "A= 2\n", + "Bact=2\n", + "n= 3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Este es el sistema de ecuaciones diferenciales usados u[0] = [RamB] y u[1] = [Icl1]" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "metadata": {}, + "outputs": [], + "source": [ + "def model(t, u):\n", + " du = [0,0]\n", + " if u[0] < A: #Checking if the threshold has been reached\n", + " du[0] = ((ka1**n)/((A**n)+(ka1**n))) - k1*u[0] \n", + " du[1] = ((A**n)/((A**n)+(ka2**n))) - k2*u[1]\n", + " else:\n", + " du[0] = (kb**n)/(((u[0])**n)+(kb**n))- k1*u[0] \n", + " du[1] = (kb**n)/(((u[0])**n)+(kb**n)) - k2*u[1] \n", + "\n", + " return du\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Se procedio con las simulaciones, dadas las condiciones iniciales (yinit) y en el intervalo de tiempo (ts)\n", + "Los vectores B y C contienen los resultados de las simulaciones para [RamB] e [Icl1]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "yinit = [2,0]\n", + "ts = np.linspace(0, 12, 100) # de 0 a 12 con 100 puntos para t\n", + "sol = solve_ivp(lambda t, y: model(t, y),\n", + " [ts[0], ts[-1]], yinit, t_eval=ts)#Orden para integrar las ecuaciones diferenciales\n", + "B= sol.y[0,:]\n", + "C= sol.y[1,:]\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "Plot de los resultados de las simulaciones" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[Text(0, 0.5, 'Icl1'), Text(0.5, 0, 'RamB'), Text(0.5, 1.0, 'RamB vs Icl1')]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 2 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig, axs = plt.subplots(2, gridspec_kw={'hspace': 0.75})\n", + "fig.suptitle('Dinámica de la regulación del circuito PrpR/RamB/Icl1 de Mycobacterium tuberculosis')\n", + "axs[0].plot(sol.t, B, label=\"B\")\n", + "axs[0].plot(sol.t, C, label=\"C\")\n", + "axs[0].set(title='Concentracion versus tiempo' , xlabel='tiempo', ylabel='Concentracion')\n", + "\n", + "axs[1].plot(B, C, \"-\")\n", + "axs[1].set(title='RamB vs Icl1' , xlabel='RamB', ylabel='Icl1')\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#Generación de la data de las simulaciones para guardarla\n", + "#Saving as columns\n", + "DAT = np.column_stack((ts, B, C))\n", + "VA = np.savetxt('Data-regulationMT-01.txt', DAT, delimiter=\" \", fmt=\"%s\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 2. Simulaciones númericas del modelo bajo diferentes concentraciones de [PrpR] de modo sistématico\n", + "Como queremos saber cual es la relación entre las tres variables [Prpr], [RamB] e [Icl1]. Obtendremos las concentraciones de [RamB] e [Icl1]. en el estado estacionario (cuando la concentración de los componentes del sistema ya no varÃa y se mantienen estables] para diferentes concentraciones de [Prpr]" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [], + "source": [ + "from mpl_toolkits import mplot3d\n", + "from mpl_toolkits.mplot3d import Axes3D" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Realizando las simulaciones en este caso asumiendo un coeficiente de Hill (n) igual a 3 y obteniendo valores en el estado estacionario para [RamB] e [Icl1] en el rango de valores de [Prpr] que van de 0 a 4 con intervalos de 0.1" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.0, 0.1, 0.2, 0.30000000000000004, 0.4, 0.5, 0.6000000000000001, 0.7000000000000001, 0.8, 0.9, 1.0, 1.1, 1.2000000000000002, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7000000000000002, 1.8, 1.9000000000000001, 2.0, 2.1, 2.2, 2.3000000000000003, 2.4000000000000004, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9000000000000004, 3.0, 3.1, 3.2, 3.3000000000000003, 3.4000000000000004, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9000000000000004]\n", + "[0.5001914166554114, 0.5001914166554114, 0.5001914166554114, 0.5001914166554114, 0.5001914166554114, 0.5000000000004217, 0.16564566088989277, 0.11112771013491148, 0.07728628461836429, 0.055561733377895633, 0.04112715046066399, 0.031224815986355972, 0.02422711236013803, 0.019155812042515933, 0.015398089944471196, 0.012557565775132923, 0.010372785854511126, 0.008665311036088627, 0.00731145905332177, 0.006224994687322042, 0.005343737352315769, 0.004621221309995101, 0.004023260996353654, 0.0035242636609718924, 0.003104610810138855, 0.0027491634795576026, 0.0024461151808497137, 0.0021861679582715504, 0.00196193287389142, 0.0017674885514200101, 0.0015980524783116646, 0.001449733719507738, 0.0013193450723339908, 0.0012042590782278396, 0.0011022967121616888, 0.0010116406457208826, 0.0009307671505377769, 0.0008583922573683177, 0.0007934289018617424, 0.0007349525995715279]\n", + "[0.5001781291250254, 0.5001781291250254, 0.5001781291250254, 0.5001781291250254, 0.5001781291250254, 0.4999877111895546, 0.9845670390480075, 0.9902307754026871, 0.993430248314297, 0.9953745433000848, 0.9966210058717909, 0.9974547931026279, 0.9980375961883003, 0.9984554840039376, 0.998761715582496, 0.9989923864913078, 0.9991682462909814, 0.9993052220375263, 0.9994143136176943, 0.9995013203329515, 0.9995718186890494, 0.9996292255189204, 0.999676712876247, 0.999716296962609, 0.9997495556050164, 0.9997777031292361, 0.9998016844685569, 0.9998222424166194, 0.9998399663494969, 0.9998553279700871, 0.9998687078386617, 0.9998804152785247, 0.9998907034619784, 0.9998997809513012, 0.9999078206054962, 0.9999149665107396, 0.9999213394147407, 0.9999270410189333, 0.9999321573917304, 0.999936761700317]\n" + ] + } + ], + "source": [ + "\n", + "Bes = []\n", + "Ces = []\n", + "Aes = []\n", + "\n", + "for A in np.arange(0,4,0.1):\n", + " yinit = [2,0]\n", + " ts = np.linspace(0, 12, 100) # de 0 a 12 con 100 puntos para t\n", + " sol = solve_ivp(lambda t, y: model(t, y),\n", + " [ts[0], ts[-1]], yinit, t_eval=ts)#Orden para integrar las ecuaciones diferenciales\n", + " Aes.append(A)\n", + " Bes.append(sol.y[0,99])\n", + " Ces.append(sol.y[1,99])\n", + " \n", + "print(Aes)\n", + "print(Bes)\n", + "print(Ces)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Guardando la Información de la simulación para luego gráficarla con ROOT" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "metadata": {}, + "outputs": [], + "source": [ + "#Generación de la data de las simulaciones para guardarla\n", + "#Saving as columns\n", + "DAT = np.column_stack((Aes, Bes, Ces))\n", + "VA = np.savetxt('../data-used/Data-regulationMT-Hill-n-3.csv', DAT, delimiter=\",\", fmt=\"%s\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Realizando el plot en 3D en python" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure()\n", + "\n", + "ax = fig.add_subplot(111, projection='3d')\n", + "ax.scatter(Bes, Aes, Ces, c='r', marker='o')\n", + "ax.set_xlabel('[RamB]')\n", + "ax.set_ylabel('[Prpr]')\n", + "ax.set_zlabel('[Icl1]')\n", + "ax = fig.gca(projection='3d')\n", + "ax.plot(Bes, Aes, Ces, label='.')\n", + "ax.legend()\n", + "plt.savefig('../data-used/Data-regulationMT-Hill-n-3.png')\n", + "plt.show()\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Repetiremos el mismo análisis para diferentes valores de n, coeficiente de Hill. \n", + "El coeficiente de Hill (n) es una medida de la cooperatividad en un proceso de unión. Los componentes reguladores del sistema se unen a un sitio adyacente al gen que regulan, y lo pueden hacer de una vez (n=1) o de dos, tres y asà sucesivamente\n", + "<img src=\"Modelo_regulacion-03.jpg\">\n", + "\n", + "Como los datos experimentales no nos dicen como es la unión de los componentes reguladores al sitio de regulación adyacente, relalizaremos la simulación usando valores de coeficiente de Hill igual a n=1,2,3,4 y determinaremos cual se ajusta mejor a lo que se evidencia experimentalmente." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Los resultados lo mostramos a continuación\n", + "\n", + "# n=1 <img src=\"../data-used/Data-regulationMT-Hill-n-1.png\">\n", + "# n=2 <img src=\"../data-used/Data-regulationMT-Hill-n-2.png\">\n", + "# n=3 <img src=\"../data-used/Data-regulationMT-Hill-n-3.png\">\n", + "# n=4 <img src=\"../data-used/Data-regulationMT-Hill-n-4.png\">" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Discusión:\n", + "El análisis de la variación global de las concentraciones en estado estacionario a diferentes valores iniciales para los factores de transcripción PrpR y RamB, ha demostrado que este circuito genético es muy sensible a la señalización a través de PrpR. Esta caracterÃstica se mejora cuando el coeficiente de Hill (n) es superior a 1, lo que promueve la biestabilidad del sistema.\n", + "En estos modelos el sistema es más sensible a la variación de la concentración de [PrpR], pequeños cambios en la concentración del mismo, hacen que el sistema pase de un estado en el que predominaba [RamB] indicador de metabolismo de carbohidratos a otro donde [Ramb] decrece hasta casi 0, e [Icl] crece aun máximo, lo que significa que predomina el catabolismo de ácidos grasos" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "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.6.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/codigo/Ploting_data_through_ROOT.ipynb b/codigo/Ploting_data_through_ROOT.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..111bfab8cfcc5050d499cb50aeff5f217c0c461d --- /dev/null +++ b/codigo/Ploting_data_through_ROOT.ipynb @@ -0,0 +1,293 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "<img src=\"Modelo_regulacion-02.jpg\">\n", + "\n", + "# <div align=\"center\">Alumno: Christian Solis Calero\n", + "## <div align=\"center\">Institución: Universidad Nacional Mayor de San Marcos\n", + "<img src=\"Modelo_regulacion-02.jpg\">" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%jsroot on" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "#include \"Riostream.h\"\n", + "#include \"TString.h\"\n", + "#include \"TFile.h\"\n", + "#include \"TTree.h\"\n", + "#include \"TSystem.h\"\n", + "#include <stdio.h>\n", + "#include <stdlib.h>" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Data-regulationMT-01.csv\n", + "Data-regulationMT-Hill-n-1.csv\n", + "Data-regulationMT-Hill-n-2.csv\n", + "Data-regulationMT-Hill-n-3.csv\n", + "Data-regulationMT-Hill-n-4.csv\n", + "Generating_Plot-Root.ipynb\n", + "Modelo_regulacion-00.jpg\n", + "Modelo_regulacion-01.jpg\n", + "Modelo_regulacion-02.jpg\n", + "Modelo_regulacion-03.jpg\n", + "Models_regulation-MT-01.ipynb\n", + "ode-fit.png\n", + "Ploting_data_through_ROOT.ipynb\n" + ] + } + ], + "source": [ + "system(\"ls\");" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Data-regulationMT-01.csv\n", + "Data-regulationMT-Hill-n-1.csv\n", + "Data-regulationMT-Hill-n-2.csv\n", + "Data-regulationMT-Hill-n-3.csv\n", + "Data-regulationMT-Hill-n-4.csv\n", + "Generating_Plot-Root.ipynb\n", + "Modelo_regulacion-00.jpg\n", + "Modelo_regulacion-01.jpg\n", + "Modelo_regulacion-02.jpg\n", + "Modelo_regulacion-03.jpg\n", + "Models_regulation-MT-01.ipynb\n", + "ode-fit.png\n", + "Ploting_data_through_ROOT.ipynb\n" + ] + } + ], + "source": [ + "//This two lines can be commented out. You just need it once, and in case the CVS file was not provided already\n", + "system(\"cp ../data-used/Data-regulationMT-Hill-n-1.csv ./\");\n", + "system(\"cp ../data-used/Data-regulationMT-Hill-n-2.csv ./\");\n", + "system(\"cp ../data-used/Data-regulationMT-Hill-n-3.csv ./\");\n", + "system(\"cp ../data-used/Data-regulationMT-Hill-n-4.csv ./\");\n", + "system(\"ls\");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Diciendole al sistema que hay comas como separador" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "TString dir = gSystem->UnixPathName(__FILE__);\n", + "dir.ReplaceAll(\"Data-regulationMT-Hill-n-3.C\",\"\");\n", + "dir.ReplaceAll(\"/./\",\"/\");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Se define el nuevo archivo ROOT file donde se colocara la información" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "TFile *f = new TFile(\"Data-regulationMT-Hill-n-3.root\",\"RECREATE\");" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "TTree *tree = new TTree(\"ntuple\",\"data from csv file\");\n", + "// The file inside has ----> PrpR, RamB, Icl\n", + "tree->ReadFile(\"Data-regulationMT-Hill-n-3.csv\",\"PrpR/F:RamB/F:Icl/F\",',');\n", + "f->Write();" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "-rw-r--r-- 1 student student 2.0K Feb 27 19:18 Data-regulationMT-Hill-n-3.csv\n", + "-rw-r--r-- 1 student student 5.9K Feb 27 19:18 Data-regulationMT-Hill-n-3.root\n" + ] + } + ], + "source": [ + "system(\"ls -lhrt Data-regulationMT-Hill-n-3.*\");" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "TFile *_file0 = TFile::Open(\"Data-regulationMT-Hill-n-3.root\");" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Realizando el Plot 3D con los valores de PrpR, RamB e Icl provenientes de la simulaciones con python" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "<div id=\"root_plot_1\"\n", + " style=\"width: 396px; height: 372px\">\n", + "</div>\n", + "\n", + "<script>\n", + " requirejs.config({\n", + " paths: {\n", + " 'JSRootCore' : 'https://root.cern.ch/js/notebook//scripts/JSRootCore',\n", + " }\n", + " });\n", + " require(['JSRootCore'],\n", + " function(Core) {\n", + " var obj = Core.JSONR_unref({\"_typename\":\"TCanvas\",\"fUniqueID\":0,\"fBits\":53673992,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fLeftMargin\":0.1,\"fRightMargin\":0.1,\"fBottomMargin\":0.1,\"fTopMargin\":0.1,\"fXfile\":2,\"fYfile\":2,\"fAfile\":1,\"fXstat\":0.99,\"fYstat\":0.99,\"fAstat\":2,\"fFrameFillColor\":0,\"fFrameLineColor\":1,\"fFrameFillStyle\":1001,\"fFrameLineStyle\":1,\"fFrameLineWidth\":1,\"fFrameBorderSize\":1,\"fFrameBorderMode\":0,\"fX1\":-0.985843932933736,\"fY1\":-1.11792197578009,\"fX2\":0.985843932933736,\"fY2\":1.11792197578009,\"fXtoAbsPixelk\":198.00005,\"fXtoPixelk\":198.00005,\"fXtoPixel\":200.843149088293,\"fYtoAbsPixelk\":186.00005,\"fYtoPixelk\":186.00005,\"fYtoPixel\":-166.380126725935,\"fUtoAbsPixelk\":5e-5,\"fUtoPixelk\":5e-5,\"fUtoPixel\":396,\"fVtoAbsPixelk\":372.00005,\"fVtoPixelk\":372,\"fVtoPixel\":-372,\"fAbsPixeltoXk\":-0.985843932933736,\"fPixeltoXk\":-0.985843932933736,\"fPixeltoX\":0.0049790097622916,\"fAbsPixeltoYk\":1.11792197578009,\"fPixeltoYk\":-1.11792197578009,\"fPixeltoY\":-0.00601033320311879,\"fXlowNDC\":0,\"fYlowNDC\":0,\"fXUpNDC\":0,\"fYUpNDC\":0,\"fWNDC\":1,\"fHNDC\":1,\"fAbsXlowNDC\":0,\"fAbsYlowNDC\":0,\"fAbsWNDC\":1,\"fAbsHNDC\":1,\"fUxmin\":-0.788675134594813,\"fUymin\":-0.894337567297407,\"fUxmax\":0.788675134594813,\"fUymax\":0.894337567297407,\"fTheta\":30,\"fPhi\":30,\"fAspectRatio\":0,\"fNumber\":0,\"fTickx\":0,\"fTicky\":0,\"fLogx\":0,\"fLogy\":0,\"fLogz\":0,\"fPadPaint\":0,\"fCrosshair\":0,\"fCrosshairPos\":0,\"fBorderSize\":2,\"fBorderMode\":0,\"fModified\":false,\"fGridx\":false,\"fGridy\":false,\"fAbsCoord\":false,\"fEditable\":true,\"fFixedAspectRatio\":false,\"fPrimitives\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[{\"_typename\":\"TH3F\",\"fUniqueID\":0,\"fBits\":50332169,\"fName\":\"htemp\",\"fTitle\":\"PrpR:RamB:Icl {PrpR>0.}\",\"fLineColor\":602,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fMarkerColor\":1,\"fMarkerStyle\":1,\"fMarkerSize\":1,\"fNcells\":10648,\"fXaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"xaxis\",\"fTitle\":\"Icl\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1.2,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":20,\"fXmin\":0.45,\"fXmax\":1,\"fXbins\":[],\"fFirst\":1,\"fLast\":20,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fYaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"yaxis\",\"fTitle\":\"RamB\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":0,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":20,\"fXmin\":0,\"fXmax\":0.55,\"fXbins\":[],\"fFirst\":1,\"fLast\":20,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fZaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"zaxis\",\"fTitle\":\"PrpR\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":20,\"fXmin\":0,\"fXmax\":4,\"fXbins\":[],\"fFirst\":1,\"fLast\":20,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fBarOffset\":0,\"fBarWidth\":1000,\"fEntries\":0,\"fTsumw\":0,\"fTsumw2\":0,\"fTsumwx\":0,\"fTsumwx2\":0,\"fMaximum\":-1111,\"fMinimum\":-1111,\"fNormFactor\":0,\"fContour\":[],\"fSumw2\":[],\"fOption\":\"\",\"fFunctions\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[],\"opt\":[]},\"fBufferSize\":4001,\"fBuffer\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"fBinStatErrOpt\":0,\"fStatOverflows\":2,\"fTsumwy\":0,\"fTsumwy2\":0,\"fTsumwxy\":0,\"fTsumwz\":0,\"fTsumwz2\":0,\"fTsumwxz\":0,\"fTsumwyz\":0,\"fArray\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{\"_typename\":\"TPaveText\",\"fUniqueID\":0,\"fBits\":50331657,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":0,\"fX1\":-0.582344981797625,\"fY1\":0.96970716965252,\"fX2\":0.582344981797625,\"fY2\":1.10674276668363,\"fX1NDC\":0.204646464646465,\"fY1NDC\":0.933709682187726,\"fX2NDC\":0.795353535353535,\"fY2NDC\":0.995000004768372,\"fBorderSize\":0,\"fInit\":1,\"fShadowColor\":1,\"fCornerRadius\":0,\"fOption\":\"blNDC\",\"fName\":\"title\",\"fTextAngle\":0,\"fTextSize\":0,\"fTextAlign\":22,\"fTextColor\":1,\"fTextFont\":42,\"fLabel\":\"\",\"fLongest\":23,\"fMargin\":0.05,\"fLines\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[{\"_typename\":\"TLatex\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"\",\"fTitle\":\"PrpR:RamB:Icl {PrpR>0.}\",\"fTextAngle\":0,\"fTextSize\":0,\"fTextAlign\":0,\"fTextColor\":0,\"fTextFont\":0,\"fX\":0,\"fY\":0,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":2,\"fLimitFactorSize\":3,\"fOriginSize\":0.0520967729389668}],\"opt\":[\"\"]}},{\"_typename\":\"TPolyMarker3D\",\"fUniqueID\":0,\"fBits\":50331657,\"fMarkerColor\":1,\"fMarkerStyle\":1,\"fMarkerSize\":1,\"fN\":39,\"fP\":[0.5001782,0.5001914,0.1,0.5001782,0.5001914,0.2,0.5001782,0.5001914,0.3,0.5001782,0.5001914,0.4,0.4999877,0.5,0.5,0.984567,0.1656457,0.6,0.9902308,0.1111277,0.7,0.9934303,0.07728629,0.8,0.9953746,0.05556173,0.9,0.996621,0.04112715,1,0.9974548,0.03122482,1.1,0.9980376,0.02422711,1.2,0.9984555,0.01915581,1.3,0.9987617,0.01539809,1.4,0.9989924,0.01255757,1.5,0.9991682,0.01037279,1.6,0.9993052,0.008665311,1.7,0.9994143,0.007311459,1.8,0.9995013,0.006224995,1.9,0.9995718,0.005343738,2,0.9996292,0.004621221,2.1,0.9996767,0.004023261,2.2,0.9997163,0.003524264,2.3,0.9997495,0.003104611,2.4,0.9997777,0.002749163,2.5,0.9998017,0.002446115,2.6,0.9998223,0.002186168,2.7,0.99984,0.001961933,2.8,0.9998553,0.001767489,2.9,0.9998687,0.001598052,3,0.9998804,0.001449734,3.1,0.9998907,0.001319345,3.2,0.9998998,0.001204259,3.3,0.9999078,0.001102297,3.4,0.9999149,0.001011641,3.5,0.9999213,9.307672e-4,3.6,0.999927,8.583923e-4,3.7,0.9999322,7.934289e-4,3.8,0.9999368,7.349526e-4,3.9],\"fOption\":\"\",\"fName\":\"TPolyMarker3D\"}],\"opt\":[\"\",\"blNDC\",\"\"]},\"fExecs\":null,\"fName\":\"c3D\",\"fTitle\":\"c3D\",\"fNumPaletteColor\":0,\"fNextPaletteColor\":0,\"fDISPLAY\":\"$DISPLAY\",\"fDoubleBuffer\":0,\"fRetained\":true,\"fXsizeUser\":0,\"fYsizeUser\":0,\"fXsizeReal\":20,\"fYsizeReal\":20,\"fWindowTopX\":0,\"fWindowTopY\":0,\"fWindowWidth\":0,\"fWindowHeight\":0,\"fCw\":396,\"fCh\":372,\"fCatt\":{\"_typename\":\"TAttCanvas\",\"fXBetween\":2,\"fYBetween\":2,\"fTitleFromTop\":1.2,\"fXdate\":0.2,\"fYdate\":0.3,\"fAdate\":1},\"kMoveOpaque\":true,\"kResizeOpaque\":true,\"fHighLightColor\":2,\"fBatch\":true,\"kShowEventStatus\":false,\"kAutoExec\":true,\"kMenuBar\":true});\n", + " Core.draw(\"root_plot_1\", obj, \"\");\n", + " }\n", + " );\n", + "</script>\n" + ], + "text/plain": [ + "<IPython.core.display.HTML object>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "TCanvas *c3D = new TCanvas(\"c3D\",\"c3D\",10,10,400,400);\n", + "ntuple->Draw(\"PrpR:RamB:Icl\",\"PrpR>0.\");\n", + "c3D->Draw();" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Realizando el Plot 2D con los valores de RamB e Icl provenientes de la simulaciones con python" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "<div id=\"root_plot_2\"\n", + " style=\"width: 396px; height: 372px\">\n", + "</div>\n", + "\n", + "<script>\n", + " requirejs.config({\n", + " paths: {\n", + " 'JSRootCore' : 'https://root.cern.ch/js/notebook//scripts/JSRootCore',\n", + " }\n", + " });\n", + " require(['JSRootCore'],\n", + " function(Core) {\n", + " var obj = Core.JSONR_unref({\"_typename\":\"TCanvas\",\"fUniqueID\":0,\"fBits\":53673992,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fLeftMargin\":0.1,\"fRightMargin\":0.1,\"fBottomMargin\":0.1,\"fTopMargin\":0.1,\"fXfile\":2,\"fYfile\":2,\"fAfile\":1,\"fXstat\":0.99,\"fYstat\":0.99,\"fAstat\":2,\"fFrameFillColor\":0,\"fFrameLineColor\":1,\"fFrameFillStyle\":1001,\"fFrameLineStyle\":1,\"fFrameLineWidth\":1,\"fFrameBorderSize\":1,\"fFrameBorderMode\":0,\"fX1\":0.387499994598329,\"fY1\":-0.0675000050291422,\"fX2\":1.11250000540167,\"fY2\":0.607500005029142,\"fXtoAbsPixelk\":-211.655116309455,\"fXtoPixelk\":-211.655116309455,\"fXtoPixel\":546.206888412607,\"fYtoAbsPixelk\":334.800047782707,\"fYtoPixelk\":334.800047782707,\"fYtoPixel\":-551.111102898915,\"fUtoAbsPixelk\":5e-5,\"fUtoPixelk\":5e-5,\"fUtoPixel\":396,\"fVtoAbsPixelk\":372.00005,\"fVtoPixelk\":372,\"fVtoPixel\":-372,\"fAbsPixeltoXk\":0.387499994598329,\"fPixeltoXk\":0.387499994598329,\"fPixeltoX\":0.00183080810808925,\"fAbsPixeltoYk\":0.607500005029142,\"fPixeltoYk\":-0.0675000050291422,\"fPixeltoY\":-0.00181451615607066,\"fXlowNDC\":0,\"fYlowNDC\":0,\"fXUpNDC\":0,\"fYUpNDC\":0,\"fWNDC\":1,\"fHNDC\":1,\"fAbsXlowNDC\":0,\"fAbsYlowNDC\":0,\"fAbsWNDC\":1,\"fAbsHNDC\":1,\"fUxmin\":0.46,\"fUymin\":0,\"fUxmax\":1.04,\"fUymax\":0.54,\"fTheta\":30,\"fPhi\":30,\"fAspectRatio\":0,\"fNumber\":0,\"fTickx\":0,\"fTicky\":0,\"fLogx\":0,\"fLogy\":0,\"fLogz\":0,\"fPadPaint\":0,\"fCrosshair\":0,\"fCrosshairPos\":0,\"fBorderSize\":2,\"fBorderMode\":0,\"fModified\":false,\"fGridx\":false,\"fGridy\":false,\"fAbsCoord\":false,\"fEditable\":true,\"fFixedAspectRatio\":false,\"fPrimitives\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[{\"_typename\":\"TFrame\",\"fUniqueID\":0,\"fBits\":50331656,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fX1\":0.46,\"fY1\":0,\"fX2\":1.04,\"fY2\":0.54,\"fBorderSize\":1,\"fBorderMode\":0},{\"_typename\":\"TH2F\",\"fUniqueID\":0,\"fBits\":50332169,\"fName\":\"htemp\",\"fTitle\":\"RamB:Icl {PrpR>0}\",\"fLineColor\":602,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":1001,\"fMarkerColor\":1,\"fMarkerStyle\":1,\"fMarkerSize\":1,\"fNcells\":1764,\"fXaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"xaxis\",\"fTitle\":\"Icl\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":40,\"fXmin\":0.46,\"fXmax\":1.04,\"fXbins\":[],\"fFirst\":1,\"fLast\":40,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fYaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"yaxis\",\"fTitle\":\"RamB\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":0,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":40,\"fXmin\":0,\"fXmax\":0.54,\"fXbins\":[],\"fFirst\":1,\"fLast\":40,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fZaxis\":{\"_typename\":\"TAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"zaxis\",\"fTitle\":\"\",\"fNdivisions\":510,\"fAxisColor\":1,\"fLabelColor\":1,\"fLabelFont\":42,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTickLength\":0.03,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fTitleColor\":1,\"fTitleFont\":42,\"fNbins\":1,\"fXmin\":0,\"fXmax\":1,\"fXbins\":[],\"fFirst\":0,\"fLast\":0,\"fBits2\":0,\"fTimeDisplay\":false,\"fTimeFormat\":\"\",\"fLabels\":null,\"fModLabs\":null},\"fBarOffset\":0,\"fBarWidth\":1000,\"fEntries\":39,\"fTsumw\":39,\"fTsumw2\":39,\"fTsumwx\":36.4465352296829,\"fTsumwx2\":35.1427976733687,\"fMaximum\":-1111,\"fMinimum\":-1111,\"fNormFactor\":0,\"fContour\":[0,1.25,2.5,3.75,5,6.25,7.5,8.75,10,11.25,12.5,13.75,15,16.25,17.5,18.75,20,21.25,22.5,23.75],\"fSumw2\":[],\"fOption\":\"\",\"fFunctions\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[{\"_typename\":\"TPaletteAxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":1178,\"fFillStyle\":1001,\"fX1\":1.04362500005402,\"fY1\":0,\"fX2\":1.07625000054017,\"fY2\":0.54,\"fX1NDC\":0.904999994039535,\"fY1NDC\":0.100000005960465,\"fX2NDC\":0.949999994039535,\"fY2NDC\":0.899999994039535,\"fBorderSize\":4,\"fInit\":1,\"fShadowColor\":1,\"fCornerRadius\":0,\"fOption\":\"br\",\"fName\":\"TPave\",\"fAxis\":{\"_typename\":\"TGaxis\",\"fUniqueID\":0,\"fBits\":50331648,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fX1\":0,\"fY1\":0,\"fX2\":0,\"fY2\":0,\"fTextAngle\":0,\"fTextSize\":0.04,\"fTextAlign\":11,\"fTextColor\":1,\"fTextFont\":42,\"fWmin\":0,\"fWmax\":0,\"fGridLength\":0,\"fTickSize\":0.03,\"fLabelOffset\":0.005,\"fLabelSize\":0.035,\"fTitleOffset\":1,\"fTitleSize\":0.035,\"fNdiv\":0,\"fLabelColor\":1,\"fLabelFont\":42,\"fNModLabs\":0,\"fChopt\":\"\",\"fName\":\"\",\"fTitle\":\"\",\"fTimeFormat\":\"\",\"fFunctionName\":\"\",\"fModLabs\":null},\"fName\":\"palette\"}],\"opt\":[\"br\"]},\"fBufferSize\":3001,\"fBuffer\":[-39,1,0.500178158283234,0.500191390514374,1,0.500178158283234,0.500191390514374,1,0.500178158283234,0.500191390514374,1,0.500178158283234,0.500191390514374,1,0.499987721443176,0.5,1,0.984567046165466,0.165645658969879,1,0.990230798721313,0.111127711832523,1,0.993430256843567,0.0772862881422043,1,0.99537456035614,0.0555617325007915,1,0.996621012687683,0.0411271490156651,1,0.997454822063446,0.0312248151749372,1,0.998037576675415,0.024227112531662,1,0.998455464839935,0.0191558115184307,1,0.998761713504791,0.015398089773953,1,0.998992383480072,0.0125575661659241,1,0.999168217182159,0.0103727858513594,1,0.999305248260498,0.00866531115025282,1,0.999414324760437,0.00731145916506648,1,0.999501347541809,0.00622499454766512,1,0.999571800231934,0.00534373754635453,1,0.999629199504852,0.00462122121825814,1,0.999676704406738,0.0040232609026134,1,0.999716281890869,0.00352426362223923,1,0.999749541282654,0.00310461083427072,1,0.999777674674988,0.00274916342459619,1,0.999801695346832,0.0024461152497679,1,0.99982225894928,0.00218616798520088,1,0.999839961528778,0.00196193298324943,1,0.99985533952713,0.00176748854573816,1,0.99986869096756,0.00159805244766176,1,0.999880433082581,0.00144973373971879,1,0.999890685081482,0.00131934508681297,1,0.999899804592133,0.00120425911154598,1,0.999907791614532,0.00110229675192386,1,0.999914944171906,0.00101164064835757,1,0.999921321868896,9.30767157115042e-4,1,0.999927043914795,8.58392275404185e-4,1,0.999932169914246,7.93428916949779e-4,1,0.999936759471893,7.34952627681196e-4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],\"fBinStatErrOpt\":0,\"fStatOverflows\":2,\"fScalefactor\":1,\"fTsumwy\":3.12938287947327,\"fTsumwy2\":1.30403015973227,\"fTsumwxy\":1.87458410012966,\"fArray\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{\"_typename\":\"TPaveText\",\"fUniqueID\":0,\"fBits\":50331657,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":1,\"fFillColor\":0,\"fFillStyle\":0,\"fX1\":0.588046714758425,\"fY1\":0.562754039839091,\"fX2\":0.911953285241575,\"fY2\":0.604125008197502,\"fX1NDC\":0.276616161616162,\"fY1NDC\":0.933709682187726,\"fX2NDC\":0.723383838383838,\"fY2NDC\":0.995000004768372,\"fBorderSize\":0,\"fInit\":1,\"fShadowColor\":1,\"fCornerRadius\":0,\"fOption\":\"blNDC\",\"fName\":\"title\",\"fTextAngle\":0,\"fTextSize\":0,\"fTextAlign\":22,\"fTextColor\":1,\"fTextFont\":42,\"fLabel\":\"\",\"fLongest\":17,\"fMargin\":0.05,\"fLines\":{\"_typename\":\"TList\",\"name\":\"TList\",\"arr\":[{\"_typename\":\"TLatex\",\"fUniqueID\":0,\"fBits\":50331648,\"fName\":\"\",\"fTitle\":\"RamB:Icl {PrpR>0}\",\"fTextAngle\":0,\"fTextSize\":0,\"fTextAlign\":0,\"fTextColor\":0,\"fTextFont\":0,\"fX\":0,\"fY\":0,\"fLineColor\":1,\"fLineStyle\":1,\"fLineWidth\":2,\"fLimitFactorSize\":3,\"fOriginSize\":0.0520967729389668}],\"opt\":[\"\"]}}],\"opt\":[\"\",\"colz\",\"blNDC\"]},\"fExecs\":null,\"fName\":\"cz\",\"fTitle\":\"cz\",\"fNumPaletteColor\":0,\"fNextPaletteColor\":0,\"fDISPLAY\":\"$DISPLAY\",\"fDoubleBuffer\":0,\"fRetained\":true,\"fXsizeUser\":0,\"fYsizeUser\":0,\"fXsizeReal\":20,\"fYsizeReal\":20,\"fWindowTopX\":0,\"fWindowTopY\":0,\"fWindowWidth\":0,\"fWindowHeight\":0,\"fCw\":396,\"fCh\":372,\"fCatt\":{\"_typename\":\"TAttCanvas\",\"fXBetween\":2,\"fYBetween\":2,\"fTitleFromTop\":1.2,\"fXdate\":0.2,\"fYdate\":0.3,\"fAdate\":1},\"kMoveOpaque\":true,\"kResizeOpaque\":true,\"fHighLightColor\":2,\"fBatch\":true,\"kShowEventStatus\":false,\"kAutoExec\":true,\"kMenuBar\":true});\n", + " Core.draw(\"root_plot_2\", obj, \"\");\n", + " }\n", + " );\n", + "</script>\n" + ], + "text/plain": [ + "<IPython.core.display.HTML object>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "TCanvas *cz = new TCanvas(\"cz\",\"cz\",10,10,400,400);\n", + "ntuple->Draw(\"RamB:Icl\",\"PrpR>0\",\"colz\");\n", + "cz->Draw();" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "ROOT C++", + "language": "c++", + "name": "root" + }, + "language_info": { + "codemirror_mode": "text/x-c++src", + "file_extension": ".C", + "mimetype": " text/x-c++src", + "name": "c++" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/codigo/ode-fit.png b/codigo/ode-fit.png new file mode 100644 index 0000000000000000000000000000000000000000..b3927d084529e76f33fa6fa2e13dd0ea70316ee5 Binary files /dev/null and b/codigo/ode-fit.png differ diff --git a/data-used/Data-regulationMT-Hill-n-1.csv b/data-used/Data-regulationMT-Hill-n-1.csv new file mode 100644 index 0000000000000000000000000000000000000000..3b122882b69d513a13a5ad84a093d7e1c03fae6d --- /dev/null +++ b/data-used/Data-regulationMT-Hill-n-1.csv @@ -0,0 +1,40 @@ +0.0,0.5003725093208784,0.5002635336298441 +0.1,0.5003725093208784,0.5002635336298441 +0.2,0.5003725093208784,0.5002635336298441 +0.30000000000000004,0.5003725093208784,0.5002635336298441 +0.4,0.5003725093208784,0.5002635336298441 +0.5,0.5000000324226912,0.499987738980873 +0.6000000000000001,0.3684505730728897,0.7999413049999861 +0.7000000000000001,0.3333862233694828,0.8234527164457729 +0.8,0.30440261380722156,0.8420304603050057 +0.9,0.2800203800029453,0.8571206563902791 +1.0,0.25929073966939437,0.8695359220568302 +1.1,0.24141842034528357,0.8799639119357057 +1.2000000000000002,0.22585016491392831,0.8888548256660618 +1.3,0.21214188985964097,0.8965365099397375 +1.4000000000000001,0.20001881560523313,0.9032127440210819 +1.5,0.18920914903197483,0.9090777432982226 +1.6,0.17952030460244375,0.9142657163021467 +1.7000000000000002,0.1707670090011002,0.9188984792938077 +1.8,0.16281831339115352,0.923062102616862 +1.9000000000000001,0.1555812281382025,0.9268154927144648 +2.0,0.14895363229742112,0.9302237803574641 +2.1,0.14287994992023972,0.933321871322136 +2.2,0.13727656868905427,0.9361593235972592 +2.3000000000000003,0.13209617641562135,0.9387651044936539 +2.4000000000000004,0.12729261459273095,0.941166475818616 +2.5,0.1228262062691887,0.9433865829893867 +2.6,0.11866265675413773,0.9454452037802301 +2.7,0.11477217076886612,0.9473593393573387 +2.8000000000000003,0.11112873788964207,0.949143685048475 +2.9000000000000004,0.10770954999735455,0.9508110084646106 +3.0,0.10449452312610805,0.9523724555721843 +3.1,0.1014659025120566,0.9538378002411535 +3.2,0.09860793442568008,0.955215649084545 +3.3000000000000003,0.09590659197205274,0.9565136106640236 +3.4000000000000004,0.09334934477970327,0.9577384360901717 +3.5,0.09092496459451374,0.9588961365050388 +3.6,0.08862336041300971,0.9599920817634262 +3.7,0.08643543804747876,0.961031083732167 +3.8000000000000003,0.08435298000043374,0.9620174669339435 +3.9000000000000004,0.08236854230226946,0.9629551287234683 diff --git a/data-used/Data-regulationMT-Hill-n-1.png b/data-used/Data-regulationMT-Hill-n-1.png new file mode 100644 index 0000000000000000000000000000000000000000..abe14415051159cef12a5515e7f23110c756eb31 Binary files /dev/null and b/data-used/Data-regulationMT-Hill-n-1.png differ diff --git a/data-used/Data-regulationMT-Hill-n-2.csv b/data-used/Data-regulationMT-Hill-n-2.csv new file mode 100644 index 0000000000000000000000000000000000000000..7272819027a4d14f311cf37c8398378353b29b47 --- /dev/null +++ b/data-used/Data-regulationMT-Hill-n-2.csv @@ -0,0 +1,40 @@ +0.0,0.5000895212785803,0.5000701568813557 +0.1,0.5000895212785803,0.5000701568813557 +0.2,0.5000895212785803,0.5000701568813557 +0.30000000000000004,0.5000895212785803,0.5000701568813557 +0.4,0.5000895212785803,0.5000701568813557 +0.5,0.5000000001130316,0.49998771083776167 +0.6000000000000001,0.25392425955165593,0.9410955711999415 +0.7000000000000001,0.2000190636237749,0.9560670201955442 +0.8,0.16068803592846057,0.9659945395676608 +0.9,0.13138679647841006,0.9729501314825678 +1.0,0.10914868184539059,0.9779772633716188 +1.1,0.0919592666601406,0.9817200241743527 +1.2000000000000002,0.0784176371563117,0.9846005683435494 +1.3,0.06760714999461692,0.9868450582019983 +1.4000000000000001,0.05884543839306049,0.9886349682575395 +1.5,0.05164891667743163,0.990088491946264 +1.6,0.045686087622408555,0.9912752991988226 +1.7000000000000002,0.04068121234243594,0.9922645927920827 +1.8,0.03644951414708938,0.9930932209382096 +1.9000000000000001,0.03283407507452361,0.9937982738207196 +2.0,0.029728817825163418,0.9943994762137497 +2.1,0.027041285700103387,0.9949166675546103 +2.2,0.02469908903788355,0.9953657209044404 +2.3000000000000003,0.022646515703774815,0.9957577961222704 +2.4000000000000004,0.02083803435286969,0.9961021272716363 +2.5,0.01923666614072363,0.9964061519562049 +2.6,0.017812138730916346,0.9966759146097902 +2.7,0.01653948617044195,0.9969163680773826 +2.8000000000000003,0.015397976394178003,0.9971316017594329 +2.9000000000000004,0.014370282058514455,0.9973250160519018 +3.0,0.013441833914965623,0.9974994570470348 +3.1,0.012600312416912953,0.99765732150579 +3.2,0.01183524493872282,0.9978006393643014 +3.3000000000000003,0.011137684360839544,0.9979311391014777 +3.4000000000000004,0.010499950836432653,0.9980502999158104 +3.5,0.009915313348187366,0.9981594486560699 +3.6,0.009377783339314898,0.9982598120151169 +3.7,0.008882741119497568,0.99835216033984 +3.8000000000000003,0.008425835545679855,0.9984373247991912 +3.9000000000000004,0.008003257202939136,0.9985160315433619 diff --git a/data-used/Data-regulationMT-Hill-n-2.png b/data-used/Data-regulationMT-Hill-n-2.png new file mode 100644 index 0000000000000000000000000000000000000000..c448e2cabb11fd0c57b55146d61e3f0ae071b179 Binary files /dev/null and b/data-used/Data-regulationMT-Hill-n-2.png differ diff --git a/data-used/Data-regulationMT-Hill-n-3.csv b/data-used/Data-regulationMT-Hill-n-3.csv new file mode 100644 index 0000000000000000000000000000000000000000..a09c4823dbaf81950fba40d718307f6e20511b8b --- /dev/null +++ b/data-used/Data-regulationMT-Hill-n-3.csv @@ -0,0 +1,40 @@ +0.0,0.5001914166554114,0.5001781291250254 +0.1,0.5001914166554114,0.5001781291250254 +0.2,0.5001914166554114,0.5001781291250254 +0.30000000000000004,0.5001914166554114,0.5001781291250254 +0.4,0.5001914166554114,0.5001781291250254 +0.5,0.5000000000004217,0.4999877111895546 +0.6000000000000001,0.16564566088989277,0.9845670390480075 +0.7000000000000001,0.11112771013491148,0.9902307754026871 +0.8,0.07728628461836429,0.993430248314297 +0.9,0.055561733377895633,0.9953745433000848 +1.0,0.04112715046066399,0.9966210058717909 +1.1,0.031224815986355972,0.9974547931026279 +1.2000000000000002,0.02422711236013803,0.9980375961883003 +1.3,0.019155812042515933,0.9984554840039376 +1.4000000000000001,0.015398089944471196,0.998761715582496 +1.5,0.012557565775132923,0.9989923864913078 +1.6,0.010372785854511126,0.9991682462909814 +1.7000000000000002,0.008665311036088627,0.9993052220375263 +1.8,0.00731145905332177,0.9994143136176943 +1.9000000000000001,0.006224994687322042,0.9995013203329515 +2.0,0.005343737352315769,0.9995718186890494 +2.1,0.004621221309995101,0.9996292255189204 +2.2,0.004023260996353654,0.999676712876247 +2.3000000000000003,0.0035242636609718924,0.999716296962609 +2.4000000000000004,0.003104610810138855,0.9997495556050164 +2.5,0.0027491634795576026,0.9997777031292361 +2.6,0.0024461151808497137,0.9998016844685569 +2.7,0.0021861679582715504,0.9998222424166194 +2.8000000000000003,0.00196193287389142,0.9998399663494969 +2.9000000000000004,0.0017674885514200101,0.9998553279700871 +3.0,0.0015980524783116646,0.9998687078386617 +3.1,0.001449733719507738,0.9998804152785247 +3.2,0.0013193450723339908,0.9998907034619784 +3.3000000000000003,0.0012042590782278396,0.9998997809513012 +3.4000000000000004,0.0011022967121616888,0.9999078206054962 +3.5,0.0010116406457208826,0.9999149665107396 +3.6,0.0009307671505377769,0.9999213394147407 +3.7,0.0008583922573683177,0.9999270410189333 +3.8000000000000003,0.0007934289018617424,0.9999321573917304 +3.9000000000000004,0.0007349525995715279,0.999936761700317 diff --git a/data-used/Data-regulationMT-Hill-n-3.png b/data-used/Data-regulationMT-Hill-n-3.png new file mode 100644 index 0000000000000000000000000000000000000000..20a2e11ebd395aa7541913ffd61d20ef64230eda Binary files /dev/null and b/data-used/Data-regulationMT-Hill-n-3.png differ diff --git a/data-used/Data-regulationMT-Hill-n-4.csv b/data-used/Data-regulationMT-Hill-n-4.csv new file mode 100644 index 0000000000000000000000000000000000000000..8c16e36a4cccdb4ed4362740ee2655ddc8ed234e --- /dev/null +++ b/data-used/Data-regulationMT-Hill-n-4.csv @@ -0,0 +1,40 @@ +0.0,0.5001399976399904,0.5001274226425318 +0.1,0.5001399976399904,0.5001274226425318 +0.2,0.5001399976399904,0.5001274226425318 +0.30000000000000004,0.5001399976399904,0.5001274226425318 +0.4,0.5001399976399904,0.5001274226425318 +0.5,0.5000000000000017,0.4999877113602935 +0.6000000000000001,0.10379553428739466,0.9960686116097028 +0.7000000000000001,0.05884135413615143,0.9978696667905183 +0.8,0.035356695841928173,0.9987462437548277 +0.9,0.022374369101203297,0.9992137192962437 +1.0,0.014798491988860657,0.9994799785528041 +1.1,0.010158783430178137,0.999642088274069 +1.2000000000000002,0.007197842179718742,0.9997450200897022 +1.3,0.005239485805655263,0.9998129682326721 +1.4000000000000001,0.003903997870508615,0.9998590720834647 +1.5,0.0029681928131459795,0.9998916570739744 +1.6,0.002297189380575519,0.9999148967040359 +1.7000000000000002,0.0018061411848876708,0.9999319919371408 +1.8,0.0014401186850826332,0.9999448243584752 +1.9000000000000001,0.001162900228268184,0.999954467523104 +2.0,0.000949732147954342,0.999961992742792 +2.1,0.0007836870909605201,0.999967629043757 +2.2,0.0006528898932550337,0.9999720335612408 +2.3000000000000003,0.0005486586034167644,0.9999755561115529 +2.4000000000000004,0.00046477374321072834,0.9999784013183276 +2.5,0.00039666947856229065,0.9999807105342488 +2.6,0.0003409145065916174,0.9999826005290514 +2.7,0.0002949170445249394,0.9999841594296848 +2.8000000000000003,0.00025669814618902175,0.9999854544798693 +2.9000000000000004,0.000224731589622024,0.9999865375114078 +3.0,0.00019782931245738777,0.9999874488535841 +3.1,0.00017505844699556113,0.9999882201610214 +3.2,0.00015568056320278356,0.9999888764826311 +3.3000000000000003,0.00013910670821655073,0.9999894377914438 +3.4000000000000004,0.00012486380897101858,0.9999899201270439 +3.5,0.00011256933531598097,0.9999903364566396 +3.6,0.00010191202775376489,0.9999906973297151 +3.7,9.263711916981682e-05,0.999991011379828 +3.8000000000000003,8.453491593355563e-05,0.9999912857122019 +3.9000000000000004,7.74319110054064e-05,0.9999915262052852 diff --git a/data-used/Data-regulationMT-Hill-n-4.png b/data-used/Data-regulationMT-Hill-n-4.png new file mode 100644 index 0000000000000000000000000000000000000000..0b09daf60eaa11f38cf6b7ee27a43ee9d2d93c63 Binary files /dev/null and b/data-used/Data-regulationMT-Hill-n-4.png differ diff --git a/environment.yml b/environment.yml new file mode 100644 index 0000000000000000000000000000000000000000..a34268e9f2fb6ce6500ac815dc2ae86d4ba3ef4d --- /dev/null +++ b/environment.yml @@ -0,0 +1,12 @@ +name: analysis +channels: + - conda-forge +dependencies: + - root + - pip + - uproot3 + - pandas + - numpy + - matplotlib + - lmfit + - scikit-learn diff --git a/gitignore b/gitignore new file mode 100644 index 0000000000000000000000000000000000000000..87620ac7e74efee566c6ee9d2ed7281ebafb4788 --- /dev/null +++ b/gitignore @@ -0,0 +1 @@ +.ipynb_checkpoints/ diff --git a/reporte/Reporte-Christian_Solis_Calero-Peru.pdf b/reporte/Reporte-Christian_Solis_Calero-Peru.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2cd6b09852613cc1681f79672d3a0bd7a783eb13 Binary files /dev/null and b/reporte/Reporte-Christian_Solis_Calero-Peru.pdf differ