{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import openmc.data\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "pu239 = openmc.data.IncidentNeutron.from_ace('/opt/data/ace/ENDF-B-VII.1-neutron-293.6K/Pu_239_293.6K.ace')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<IncidentNeutron: Pu239>"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pu239"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "236.9986"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pu239.atomic_weight_ratio"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "ngamma = pu239.reactions[102]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Reaction: MT=102 (n,gamma)>"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "ngamma"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "xs = ngamma.xs['294K']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1499555788b0>]"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "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": [
    "plt.loglog(xs.x, xs.y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "photon = ngamma.products[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x14995299edc0>]"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "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": [
    "plt.semilogx(photon.yield_.x, photon.yield_.y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "pu239.export_to_hdf5('Pu239.h5')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "'Consultancy meeting demonstration.ipynb'   Pu239.h5\r\n"
     ]
    }
   ],
   "source": [
    "!ls"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "xs.y *= 2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "pu239.export_to_hdf5('Pu239_new.h5')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "pu239_endf = openmc.data.IncidentNeutron.from_endf('/opt/data/endf/endf-b-viii.0/neutrons/n-094_Pu_239.endf')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "ename": "NotImplementedError",
     "evalue": "Cannot export incident neutron data that originated from an ENDF file.",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNotImplementedError\u001b[0m                       Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-22-7532d6898d0f>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mpu239_endf\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexport_to_hdf5\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Pu239_endf.h5'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m~/openmc/openmc/data/neutron.py\u001b[0m in \u001b[0;36mexport_to_hdf5\u001b[0;34m(self, path, mode, libver)\u001b[0m\n\u001b[1;32m    422\u001b[0m         \u001b[0;31m# If data come from ENDF, don't allow exporting to HDF5\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    423\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mhasattr\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'_evaluation'\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--> 424\u001b[0;31m             raise NotImplementedError('Cannot export incident neutron data that '\n\u001b[0m\u001b[1;32m    425\u001b[0m                                       'originated from an ENDF file.')\n\u001b[1;32m    426\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mNotImplementedError\u001b[0m: Cannot export incident neutron data that originated from an ENDF file."
     ]
    }
   ],
   "source": [
    "pu239_endf.export_to_hdf5('Pu239_endf.h5')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>L</th>\n",
       "      <th>J</th>\n",
       "      <th>E</th>\n",
       "      <th>d</th>\n",
       "      <th>amux</th>\n",
       "      <th>amun</th>\n",
       "      <th>amuf</th>\n",
       "      <th>gx</th>\n",
       "      <th>gn0</th>\n",
       "      <th>gg</th>\n",
       "      <th>gf</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2500.0</td>\n",
       "      <td>8.9172</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000951</td>\n",
       "      <td>0.04070</td>\n",
       "      <td>2.842</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2550.0</td>\n",
       "      <td>8.9155</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000867</td>\n",
       "      <td>0.04070</td>\n",
       "      <td>0.402</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2650.0</td>\n",
       "      <td>8.9139</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.001113</td>\n",
       "      <td>0.04070</td>\n",
       "      <td>2.841</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2750.0</td>\n",
       "      <td>8.9122</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000895</td>\n",
       "      <td>0.04070</td>\n",
       "      <td>2.840</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>2850.0</td>\n",
       "      <td>8.9105</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000931</td>\n",
       "      <td>0.04070</td>\n",
       "      <td>2.840</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>350</th>\n",
       "      <td>1</td>\n",
       "      <td>2.0</td>\n",
       "      <td>26500.0</td>\n",
       "      <td>1.8308</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000305</td>\n",
       "      <td>0.03335</td>\n",
       "      <td>0.583</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>351</th>\n",
       "      <td>1</td>\n",
       "      <td>2.0</td>\n",
       "      <td>27500.0</td>\n",
       "      <td>1.8274</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000305</td>\n",
       "      <td>0.03335</td>\n",
       "      <td>0.582</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>352</th>\n",
       "      <td>1</td>\n",
       "      <td>2.0</td>\n",
       "      <td>28500.0</td>\n",
       "      <td>1.8239</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000304</td>\n",
       "      <td>0.03335</td>\n",
       "      <td>0.580</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>353</th>\n",
       "      <td>1</td>\n",
       "      <td>2.0</td>\n",
       "      <td>29500.0</td>\n",
       "      <td>1.8205</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000304</td>\n",
       "      <td>0.03335</td>\n",
       "      <td>0.579</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>354</th>\n",
       "      <td>1</td>\n",
       "      <td>2.0</td>\n",
       "      <td>30000.0</td>\n",
       "      <td>1.8187</td>\n",
       "      <td>0.0</td>\n",
       "      <td>1.0</td>\n",
       "      <td>2.0</td>\n",
       "      <td>0.0</td>\n",
       "      <td>0.000303</td>\n",
       "      <td>0.03335</td>\n",
       "      <td>0.577</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>355 rows × 11 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "     L    J        E       d  amux  amun  amuf   gx       gn0       gg     gf\n",
       "0    0  0.0   2500.0  8.9172   0.0   1.0   2.0  0.0  0.000951  0.04070  2.842\n",
       "1    0  0.0   2550.0  8.9155   0.0   1.0   2.0  0.0  0.000867  0.04070  0.402\n",
       "2    0  0.0   2650.0  8.9139   0.0   1.0   2.0  0.0  0.001113  0.04070  2.841\n",
       "3    0  0.0   2750.0  8.9122   0.0   1.0   2.0  0.0  0.000895  0.04070  2.840\n",
       "4    0  0.0   2850.0  8.9105   0.0   1.0   2.0  0.0  0.000931  0.04070  2.840\n",
       "..  ..  ...      ...     ...   ...   ...   ...  ...       ...      ...    ...\n",
       "350  1  2.0  26500.0  1.8308   0.0   1.0   2.0  0.0  0.000305  0.03335  0.583\n",
       "351  1  2.0  27500.0  1.8274   0.0   1.0   2.0  0.0  0.000305  0.03335  0.582\n",
       "352  1  2.0  28500.0  1.8239   0.0   1.0   2.0  0.0  0.000304  0.03335  0.580\n",
       "353  1  2.0  29500.0  1.8205   0.0   1.0   2.0  0.0  0.000304  0.03335  0.579\n",
       "354  1  2.0  30000.0  1.8187   0.0   1.0   2.0  0.0  0.000303  0.03335  0.577\n",
       "\n",
       "[355 rows x 11 columns]"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pu239_endf.resonances.unresolved.parameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      " njoy 2016.60  05Aug20                                       03/16/21 10:18:58\n",
      " *****************************************************************************\n",
      "\n",
      " reconr...                                                                0.0s\n",
      "\n",
      " ---message from rdf2bw---calculation of angular distribution not installed.\n"
     ]
    },
    {
     "ename": "KeyboardInterrupt",
     "evalue": "",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-27-4d388e507b0d>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mpu239_endf\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mopenmc\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdata\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mIncidentNeutron\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfrom_njoy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'/opt/data/endf/endf-b-viii.0/neutrons/n-094_Pu_239.endf'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstdout\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m~/openmc/openmc/data/neutron.py\u001b[0m in \u001b[0;36mfrom_njoy\u001b[0;34m(cls, filename, temperatures, evaluation, **kwargs)\u001b[0m\n\u001b[1;32m    815\u001b[0m                 \u001b[0mkwargs\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msetdefault\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mos\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpath\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"output_dir\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkey\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    816\u001b[0m             \u001b[0mkwargs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'evaluation'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mevaluation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 817\u001b[0;31m             \u001b[0mmake_ace\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtemperatures\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    818\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    819\u001b[0m             \u001b[0;31m# Create instance from ACE tables within library\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/openmc/openmc/data/njoy.py\u001b[0m in \u001b[0;36mmake_ace\u001b[0;34m(filename, temperatures, acer, xsdir, output_dir, pendf, error, broadr, heatr, gaspr, purr, evaluation, **kwargs)\u001b[0m\n\u001b[1;32m    414\u001b[0m             \u001b[0mtapeout\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mndir\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0moutput_dir\u001b[0m \u001b[0;34m/\u001b[0m \u001b[0;34m\"xsdir_{:.1f}\"\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtemperature\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    415\u001b[0m     \u001b[0mcommands\u001b[0m \u001b[0;34m+=\u001b[0m \u001b[0;34m'stop\\n'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 416\u001b[0;31m     \u001b[0mrun\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mcommands\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtapein\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mtapeout\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    417\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    418\u001b[0m     \u001b[0;32mif\u001b[0m \u001b[0macer\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/openmc/openmc/data/njoy.py\u001b[0m in \u001b[0;36mrun\u001b[0;34m(commands, tapein, tapeout, input_filename, stdout, njoy_exec)\u001b[0m\n\u001b[1;32m    222\u001b[0m         \u001b[0;32mwhile\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    223\u001b[0m             \u001b[0;31m# If process is finished, break loop\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 224\u001b[0;31m             \u001b[0mline\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnjoy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mstdout\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreadline\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    225\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mline\u001b[0m \u001b[0;32mand\u001b[0m \u001b[0mnjoy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpoll\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\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    226\u001b[0m                 \u001b[0;32mbreak\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
     ]
    }
   ],
   "source": [
    "pu239_endf = openmc.data.IncidentNeutron.from_njoy('/opt/data/endf/endf-b-viii.0/neutrons/n-094_Pu_239.endf', stdout=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      " njoy 2016.60  05Aug20                                       03/16/21 10:20:17\n",
      " *****************************************************************************\n",
      "\n",
      " reconr...                                                                0.0s\n",
      "\n",
      " broadr...                                                                0.0s\n",
      "      300.0 deg                                                           0.0s\n",
      "      600.0 deg                                                           0.1s\n",
      "      900.0 deg                                                           0.1s\n",
      "\n",
      " heatr...                                                                 0.1s\n",
      "\n",
      " heatr...                                                                 0.2s\n",
      "\n",
      " gaspr...                                                                 0.3s\n",
      "\n",
      " purr...                                                                  0.3s\n",
      "\n",
      " mat =  131                                                               0.3s\n",
      "\n",
      " ---message from purr---mat  131 has no resonance parameters\n",
      "                          copy as is to nout\n",
      "\n",
      " acer...                                                                  0.3s\n",
      "\n",
      " acer...                                                                  0.4s\n",
      "\n",
      " acer...                                                                  0.5s\n",
      "                                                                          0.6s\n",
      " *****************************************************************************\n"
     ]
    }
   ],
   "source": [
    "h3 = openmc.data.IncidentNeutron.from_njoy('/opt/data/endf/endf-b-viii.0/neutrons/n-001_H_003.endf', temperatures=(300., 600., 900.), stdout=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'300K': <openmc.data.function.Tabulated1D at 0x149951e50c70>,\n",
       " '600K': <openmc.data.function.Tabulated1D at 0x149951dd35e0>,\n",
       " '900K': <openmc.data.function.Tabulated1D at 0x149951e3bfa0>,\n",
       " '0K': <openmc.data.function.Tabulated1D at 0x149951dd3460>}"
      ]
     },
     "execution_count": 32,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "h3[2].xs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "h3.export_to_hdf5('tritium_multitemp.h5')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3.8.3 64-bit ('3.8.3': pyenv)",
   "language": "python",
   "name": "python38364bit383pyenva1b8e386f2164b5281dd9a75c7eb3845"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
