mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-29 06:35:48 -04:00
merging w/ upstream
This commit is contained in:
commit
2cac30c848
20 changed files with 2534 additions and 2439 deletions
|
|
@ -518,9 +518,10 @@
|
|||
" Copyright: 2011-2015 Massachusetts Institute of Technology\n",
|
||||
" License: http://mit-crpg.github.io/openmc/license.html\n",
|
||||
" Version: 0.7.1\n",
|
||||
" Git SHA1: 34381b40a9445a727e360873aaa6ef892af1cb6a\n",
|
||||
" Date/Time: 2016-02-07 15:58:16\n",
|
||||
" Git SHA1: 5f252e2df51930b9175fd41bafa8db01f3eaeb92\n",
|
||||
" Date/Time: 2016-03-23 14:42:51\n",
|
||||
" MPI Processes: 1\n",
|
||||
" OpenMP Threads: 16\n",
|
||||
"\n",
|
||||
" ===========================================================================\n",
|
||||
" ========================> INITIALIZATION <=========================\n",
|
||||
|
|
@ -546,56 +547,56 @@
|
|||
"\n",
|
||||
" Bat./Gen. k Average k \n",
|
||||
" ========= ======== ==================== \n",
|
||||
" 1/1 1.19804 \n",
|
||||
" 2/1 1.12945 \n",
|
||||
" 3/1 1.15573 \n",
|
||||
" 4/1 1.13929 \n",
|
||||
" 5/1 1.16300 \n",
|
||||
" 6/1 1.22117 \n",
|
||||
" 7/1 1.19012 \n",
|
||||
" 8/1 1.11299 \n",
|
||||
" 9/1 1.16066 \n",
|
||||
" 10/1 1.12566 \n",
|
||||
" 11/1 1.20854 \n",
|
||||
" 12/1 1.14691 1.17773 +/- 0.03082\n",
|
||||
" 13/1 1.17204 1.17583 +/- 0.01789\n",
|
||||
" 14/1 1.14148 1.16724 +/- 0.01529\n",
|
||||
" 15/1 1.17272 1.16834 +/- 0.01189\n",
|
||||
" 16/1 1.18575 1.17124 +/- 0.01014\n",
|
||||
" 17/1 1.20498 1.17606 +/- 0.00983\n",
|
||||
" 18/1 1.14754 1.17249 +/- 0.00923\n",
|
||||
" 19/1 1.18141 1.17348 +/- 0.00820\n",
|
||||
" 20/1 1.15074 1.17121 +/- 0.00768\n",
|
||||
" 21/1 1.15914 1.17011 +/- 0.00703\n",
|
||||
" 22/1 1.14586 1.16809 +/- 0.00673\n",
|
||||
" 23/1 1.18999 1.16978 +/- 0.00642\n",
|
||||
" 24/1 1.15101 1.16844 +/- 0.00609\n",
|
||||
" 25/1 1.13791 1.16640 +/- 0.00602\n",
|
||||
" 26/1 1.19791 1.16837 +/- 0.00597\n",
|
||||
" 27/1 1.19818 1.17012 +/- 0.00587\n",
|
||||
" 28/1 1.14160 1.16854 +/- 0.00576\n",
|
||||
" 29/1 1.11487 1.16571 +/- 0.00614\n",
|
||||
" 30/1 1.17538 1.16620 +/- 0.00584\n",
|
||||
" 31/1 1.20210 1.16791 +/- 0.00581\n",
|
||||
" 32/1 1.20078 1.16940 +/- 0.00574\n",
|
||||
" 33/1 1.14624 1.16839 +/- 0.00558\n",
|
||||
" 34/1 1.14618 1.16747 +/- 0.00542\n",
|
||||
" 35/1 1.16866 1.16752 +/- 0.00520\n",
|
||||
" 36/1 1.18565 1.16821 +/- 0.00504\n",
|
||||
" 37/1 1.16824 1.16821 +/- 0.00485\n",
|
||||
" 38/1 1.18299 1.16874 +/- 0.00471\n",
|
||||
" 39/1 1.21418 1.17031 +/- 0.00480\n",
|
||||
" 40/1 1.11167 1.16835 +/- 0.00504\n",
|
||||
" 41/1 1.11545 1.16665 +/- 0.00516\n",
|
||||
" 42/1 1.11114 1.16491 +/- 0.00529\n",
|
||||
" 43/1 1.14227 1.16423 +/- 0.00517\n",
|
||||
" 44/1 1.14104 1.16355 +/- 0.00506\n",
|
||||
" 45/1 1.16756 1.16366 +/- 0.00492\n",
|
||||
" 46/1 1.13065 1.16274 +/- 0.00487\n",
|
||||
" 47/1 1.11251 1.16139 +/- 0.00492\n",
|
||||
" 48/1 1.14731 1.16101 +/- 0.00481\n",
|
||||
" 49/1 1.16691 1.16117 +/- 0.00469\n",
|
||||
" 50/1 1.19679 1.16206 +/- 0.00465\n",
|
||||
" 1/1 1.11184 \n",
|
||||
" 2/1 1.15820 \n",
|
||||
" 3/1 1.18468 \n",
|
||||
" 4/1 1.17492 \n",
|
||||
" 5/1 1.19645 \n",
|
||||
" 6/1 1.18436 \n",
|
||||
" 7/1 1.14070 \n",
|
||||
" 8/1 1.15150 \n",
|
||||
" 9/1 1.19202 \n",
|
||||
" 10/1 1.17677 \n",
|
||||
" 11/1 1.20272 \n",
|
||||
" 12/1 1.21366 1.20819 +/- 0.00547\n",
|
||||
" 13/1 1.15906 1.19181 +/- 0.01668\n",
|
||||
" 14/1 1.14687 1.18058 +/- 0.01629\n",
|
||||
" 15/1 1.14570 1.17360 +/- 0.01442\n",
|
||||
" 16/1 1.13480 1.16713 +/- 0.01343\n",
|
||||
" 17/1 1.17680 1.16852 +/- 0.01144\n",
|
||||
" 18/1 1.16866 1.16853 +/- 0.00990\n",
|
||||
" 19/1 1.19253 1.17120 +/- 0.00913\n",
|
||||
" 20/1 1.18124 1.17220 +/- 0.00823\n",
|
||||
" 21/1 1.19206 1.17401 +/- 0.00766\n",
|
||||
" 22/1 1.17681 1.17424 +/- 0.00700\n",
|
||||
" 23/1 1.17634 1.17440 +/- 0.00644\n",
|
||||
" 24/1 1.13659 1.17170 +/- 0.00654\n",
|
||||
" 25/1 1.17144 1.17169 +/- 0.00609\n",
|
||||
" 26/1 1.20649 1.17386 +/- 0.00610\n",
|
||||
" 27/1 1.11238 1.17024 +/- 0.00678\n",
|
||||
" 28/1 1.18911 1.17129 +/- 0.00647\n",
|
||||
" 29/1 1.14681 1.17000 +/- 0.00626\n",
|
||||
" 30/1 1.12152 1.16758 +/- 0.00641\n",
|
||||
" 31/1 1.12729 1.16566 +/- 0.00639\n",
|
||||
" 32/1 1.15399 1.16513 +/- 0.00612\n",
|
||||
" 33/1 1.13547 1.16384 +/- 0.00599\n",
|
||||
" 34/1 1.17723 1.16440 +/- 0.00576\n",
|
||||
" 35/1 1.09296 1.16154 +/- 0.00622\n",
|
||||
" 36/1 1.19621 1.16287 +/- 0.00612\n",
|
||||
" 37/1 1.12560 1.16149 +/- 0.00605\n",
|
||||
" 38/1 1.17872 1.16211 +/- 0.00586\n",
|
||||
" 39/1 1.17721 1.16263 +/- 0.00568\n",
|
||||
" 40/1 1.13724 1.16178 +/- 0.00555\n",
|
||||
" 41/1 1.18526 1.16254 +/- 0.00542\n",
|
||||
" 42/1 1.13779 1.16177 +/- 0.00531\n",
|
||||
" 43/1 1.15066 1.16143 +/- 0.00516\n",
|
||||
" 44/1 1.12174 1.16026 +/- 0.00514\n",
|
||||
" 45/1 1.17479 1.16068 +/- 0.00501\n",
|
||||
" 46/1 1.14146 1.16014 +/- 0.00489\n",
|
||||
" 47/1 1.20464 1.16135 +/- 0.00491\n",
|
||||
" 48/1 1.15119 1.16108 +/- 0.00479\n",
|
||||
" 49/1 1.17938 1.16155 +/- 0.00468\n",
|
||||
" 50/1 1.15798 1.16146 +/- 0.00457\n",
|
||||
" Creating state point statepoint.50.h5...\n",
|
||||
"\n",
|
||||
" ===========================================================================\n",
|
||||
|
|
@ -605,27 +606,27 @@
|
|||
"\n",
|
||||
" =======================> TIMING STATISTICS <=======================\n",
|
||||
"\n",
|
||||
" Total time for initialization = 3.2100E-01 seconds\n",
|
||||
" Reading cross sections = 7.4000E-02 seconds\n",
|
||||
" Total time in simulation = 8.3830E+00 seconds\n",
|
||||
" Time in transport only = 8.3670E+00 seconds\n",
|
||||
" Time in inactive batches = 1.0330E+00 seconds\n",
|
||||
" Time in active batches = 7.3500E+00 seconds\n",
|
||||
" Time synchronizing fission bank = 4.0000E-03 seconds\n",
|
||||
" Sampling source sites = 1.0000E-03 seconds\n",
|
||||
" SEND/RECV source sites = 3.0000E-03 seconds\n",
|
||||
" Total time for initialization = 4.6200E-01 seconds\n",
|
||||
" Reading cross sections = 1.3100E-01 seconds\n",
|
||||
" Total time in simulation = 2.4000E+00 seconds\n",
|
||||
" Time in transport only = 2.1340E+00 seconds\n",
|
||||
" Time in inactive batches = 2.6400E-01 seconds\n",
|
||||
" Time in active batches = 2.1360E+00 seconds\n",
|
||||
" Time synchronizing fission bank = 2.0000E-03 seconds\n",
|
||||
" Sampling source sites = 2.0000E-03 seconds\n",
|
||||
" SEND/RECV source sites = 0.0000E+00 seconds\n",
|
||||
" Time accumulating tallies = 0.0000E+00 seconds\n",
|
||||
" Total time for finalization = 1.0000E-03 seconds\n",
|
||||
" Total time elapsed = 8.7140E+00 seconds\n",
|
||||
" Calculation Rate (inactive) = 24201.4 neutrons/second\n",
|
||||
" Calculation Rate (active) = 13605.4 neutrons/second\n",
|
||||
" Total time elapsed = 2.8800E+00 seconds\n",
|
||||
" Calculation Rate (inactive) = 94697.0 neutrons/second\n",
|
||||
" Calculation Rate (active) = 46816.5 neutrons/second\n",
|
||||
"\n",
|
||||
" ============================> RESULTS <============================\n",
|
||||
"\n",
|
||||
" k-effective (Collision) = 1.16131 +/- 0.00453\n",
|
||||
" k-effective (Track-length) = 1.16206 +/- 0.00465\n",
|
||||
" k-effective (Absorption) = 1.16096 +/- 0.00364\n",
|
||||
" Combined k-effective = 1.16120 +/- 0.00325\n",
|
||||
" k-effective (Collision) = 1.15984 +/- 0.00411\n",
|
||||
" k-effective (Track-length) = 1.16146 +/- 0.00457\n",
|
||||
" k-effective (Absorption) = 1.16177 +/- 0.00380\n",
|
||||
" Combined k-effective = 1.16105 +/- 0.00364\n",
|
||||
" Leakage Fraction = 0.00000 +/- 0.00000\n",
|
||||
"\n"
|
||||
]
|
||||
|
|
@ -751,8 +752,8 @@
|
|||
"\tDomain Type =\tcell\n",
|
||||
"\tDomain ID =\t1\n",
|
||||
"\tCross Sections [cm^-1]:\n",
|
||||
" Group 1 [6.25e-07 - 20.0 MeV]:\t6.81e-01 +/- 1.88e-01%\n",
|
||||
" Group 2 [0.0 - 6.25e-07 MeV]:\t1.40e+00 +/- 5.91e-01%\n",
|
||||
" Group 1 [6.25e-07 - 20.0 MeV]:\t6.81e-01 +/- 2.69e-01%\n",
|
||||
" Group 2 [0.0 - 6.25e-07 MeV]:\t1.40e+00 +/- 5.93e-01%\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"\n"
|
||||
|
|
@ -780,7 +781,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -795,19 +796,19 @@
|
|||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> 0.668323</td>\n",
|
||||
" <td> 0.001264</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>0.667787</td>\n",
|
||||
" <td>0.001802</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 2</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> 1.293258</td>\n",
|
||||
" <td> 0.007624</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>2</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>1.292013</td>\n",
|
||||
" <td>0.007642</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -815,8 +816,8 @@
|
|||
],
|
||||
"text/plain": [
|
||||
" cell group in nuclide mean std. dev.\n",
|
||||
"1 1 1 total 0.668323 0.001264\n",
|
||||
"0 1 2 total 1.293258 0.007624"
|
||||
"1 1 1 total 0.667787 0.001802\n",
|
||||
"0 1 2 total 1.292013 0.007642"
|
||||
]
|
||||
},
|
||||
"execution_count": 20,
|
||||
|
|
@ -891,7 +892,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -908,23 +909,23 @@
|
|||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000000</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> (((total / flux) - (absorption / flux)) - (sca...</td>\n",
|
||||
" <td> 4.884981e-15</td>\n",
|
||||
" <td> 0.011274</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(((total / flux) - (absorption / flux)) - (sca...</td>\n",
|
||||
" <td>8.881784e-16</td>\n",
|
||||
" <td>0.011292</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> 20.000000</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> (((total / flux) - (absorption / flux)) - (sca...</td>\n",
|
||||
" <td> 1.221245e-15</td>\n",
|
||||
" <td> 0.001802</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(((total / flux) - (absorption / flux)) - (sca...</td>\n",
|
||||
" <td>-9.992007e-16</td>\n",
|
||||
" <td>0.002570</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -935,9 +936,9 @@
|
|||
"0 1 0.00e+00 6.25e-07 total \n",
|
||||
"1 1 6.25e-07 2.00e+01 total \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 (((total / flux) - (absorption / flux)) - (sca... 4.88e-15 1.13e-02 \n",
|
||||
"1 (((total / flux) - (absorption / flux)) - (sca... 1.22e-15 1.80e-03 "
|
||||
" score mean std. dev. \n",
|
||||
"0 (((total / flux) - (absorption / flux)) - (sca... 8.88e-16 1.13e-02 \n",
|
||||
"1 (((total / flux) - (absorption / flux)) - (sca... -9.99e-16 2.57e-03 "
|
||||
]
|
||||
},
|
||||
"execution_count": 23,
|
||||
|
|
@ -970,7 +971,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -987,23 +988,23 @@
|
|||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000000</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> ((absorption / flux) / (total / flux))</td>\n",
|
||||
" <td> 0.076219</td>\n",
|
||||
" <td> 0.000651</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>((absorption / flux) / (total / flux))</td>\n",
|
||||
" <td>0.076115</td>\n",
|
||||
" <td>0.000649</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> 20.000000</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> ((absorption / flux) / (total / flux))</td>\n",
|
||||
" <td> 0.019319</td>\n",
|
||||
" <td> 0.000086</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>((absorption / flux) / (total / flux))</td>\n",
|
||||
" <td>0.019263</td>\n",
|
||||
" <td>0.000095</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1015,8 +1016,8 @@
|
|||
"1 1 6.25e-07 2.00e+01 total \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 ((absorption / flux) / (total / flux)) 7.62e-02 6.51e-04 \n",
|
||||
"1 ((absorption / flux) / (total / flux)) 1.93e-02 8.65e-05 "
|
||||
"0 ((absorption / flux) / (total / flux)) 7.61e-02 6.49e-04 \n",
|
||||
"1 ((absorption / flux) / (total / flux)) 1.93e-02 9.46e-05 "
|
||||
]
|
||||
},
|
||||
"execution_count": 24,
|
||||
|
|
@ -1042,7 +1043,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1059,23 +1060,23 @@
|
|||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000000</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> ((scatter / flux) / (total / flux))</td>\n",
|
||||
" <td> 0.923781</td>\n",
|
||||
" <td> 0.007714</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>((scatter / flux) / (total / flux))</td>\n",
|
||||
" <td>0.923885</td>\n",
|
||||
" <td>0.007736</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> 20.000000</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> ((scatter / flux) / (total / flux))</td>\n",
|
||||
" <td> 0.980681</td>\n",
|
||||
" <td> 0.002617</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>((scatter / flux) / (total / flux))</td>\n",
|
||||
" <td>0.980737</td>\n",
|
||||
" <td>0.003737</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1087,8 +1088,8 @@
|
|||
"1 1 6.25e-07 2.00e+01 total \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 ((scatter / flux) / (total / flux)) 9.24e-01 7.71e-03 \n",
|
||||
"1 ((scatter / flux) / (total / flux)) 9.81e-01 2.62e-03 "
|
||||
"0 ((scatter / flux) / (total / flux)) 9.24e-01 7.74e-03 \n",
|
||||
"1 ((scatter / flux) / (total / flux)) 9.81e-01 3.74e-03 "
|
||||
]
|
||||
},
|
||||
"execution_count": 25,
|
||||
|
|
@ -1121,7 +1122,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1138,23 +1139,23 @@
|
|||
" <tbody>\n",
|
||||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000000</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> (((absorption / flux) / (total / flux)) + ((sc...</td>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.007741</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(((absorption / flux) / (total / flux)) + ((sc...</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>0.007763</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.000001</td>\n",
|
||||
" <td> 20.000000</td>\n",
|
||||
" <td> total</td>\n",
|
||||
" <td> (((absorption / flux) / (total / flux)) + ((sc...</td>\n",
|
||||
" <td> 1</td>\n",
|
||||
" <td> 0.002619</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(((absorption / flux) / (total / flux)) + ((sc...</td>\n",
|
||||
" <td>1</td>\n",
|
||||
" <td>0.003739</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1166,8 +1167,8 @@
|
|||
"1 1 6.25e-07 2.00e+01 total \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 (((absorption / flux) / (total / flux)) + ((sc... 1.00e+00 7.74e-03 \n",
|
||||
"1 (((absorption / flux) / (total / flux)) + ((sc... 1.00e+00 2.62e-03 "
|
||||
"0 (((absorption / flux) / (total / flux)) + ((sc... 1.00e+00 7.76e-03 \n",
|
||||
"1 (((absorption / flux) / (total / flux)) + ((sc... 1.00e+00 3.74e-03 "
|
||||
]
|
||||
},
|
||||
"execution_count": 26,
|
||||
|
|
@ -1200,7 +1201,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython2",
|
||||
"version": "2.7.10"
|
||||
"version": "2.7.11"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -366,7 +366,7 @@
|
|||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AgMAAAD1grKuAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEX///9yEhLpgJFNv8Tq\nQYT7AAAAAWJLR0QAiAUdSAAAAAd0SU1FB+ACBxUFD8qiUrQAAALKSURBVGje7dpLcqQwDAbgHHE2\nYeEj+D4cwQucBUfo+3CEXoSp8OhuhF70T4qpKXmdr21LogK2Pj7A8QmNP+HDhw8fPnz48Kf6VH9G\n+66vy+je8k19jnf8C5dXIPv86ms56lPdjvaYbyodx3ze+XLE76cXFiD4zPji99z0/AJ4n1lfvJ6f\nnl0A6x+578efMSg1wPr172/jPO5yFXM+Ef78gdblM+WPHyguP//t1/g6pA0wfln+ho/fwgYYn19C\n/xwDvwHGc9OvC+hs37DTrwuwfWanXxdQTC9Mvyygs3wjTL8uwPJpn/tNDbSGz7T0SBEWw4vLXzbQ\n6b6RoveIoO6TvPxlA63qs7z8ZQPF9F+SH22vbX8OQKf5Rtv+EgDNJ3X58wZaxWd1+fMGiuFvir8b\nvjp8J/tGy/6jAmRvhW8fwL3vVT+o3grfPoB7r/IpALI3tz8FoJN84/NV873hB8UnM3xzANtf8nb4\ndwmg3grfFEDJO8JPE0i9Ff4pAYL3pI8mkHor/HMCeO9JH00g9SafEsh7T/ppARBvp48UwJnelT5S\nACd7O31TAlnvKx9SQCd7B58KgPO+8iMFuPWe9E8F8BveWX7bAjzX9y4//Jve+fhsH6Ctv7n8PTzj\nvY/v9gEOHz58+PBX+6v/f/wPvnd54f3j6venE/yl769Xv7+j3x/o98/V32/o9+fl389Xnx+g5x/o\n+Qt6/oOeP6HnX+j5G3z+h54/ouefV5/foufP6Pk3ev4On/+j9w/o/Qd6/4Le/6D3T/D9V67Y/ZsV\nQBq+s+8f0ftP+P41axXguP9NWgDuu/Cdfv+N3r/D9/9TAID+A7T/Ae2/gPs/0P4TtP8F7r9J3AIO\n9P+g/Udw/9Oygbf7r9D+L7j/DO1/Q/vv4P4/tP8Q7n9E+y/h/k+0/xTuf4X7b+H+X7T/+BPuf3aM\n8OHDhw8fPnz4w/4vzcvgeY10sY0AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTYtMDItMDdUMTY6MDU6\nMTUtMDU6MDAlEzIyAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE2LTAyLTA3VDE2OjA1OjE1LTA1OjAw\nVE6KjgAAAABJRU5ErkJggg==\n",
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAPoAAAD6AgMAAAD1grKuAAAABGdBTUEAALGPC/xhBQAAACBjSFJN\nAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAADFBMVEX///9yEhLpgJFNv8Tq\nQYT7AAAAAWJLR0QAiAUdSAAAAAd0SU1FB+ADFxIyLefz284AAALKSURBVGje7dpLcqQwDAbgHHE2\nYeEj+D4cwQucBUfo+3CEXoSp8OhuhF70T4qpKXmdr21LogK2Pj7A8QmNP+HDhw8fPnz48Kf6VH9G\n+66vy+je8k19jnf8C5dXIPv86ms56lPdjvaYbyodx3ze+XLE76cXFiD4zPji99z0/AJ4n1lfvJ6f\nnl0A6x+578efMSg1wPr172/jPO5yFXM+Ef78gdblM+WPHyguP//t1/g6pA0wfln+ho/fwgYYn19C\n/xwDvwHGc9OvC+hs37DTrwuwfWanXxdQTC9Mvyygs3wjTL8uwPJpn/tNDbSGz7T0SBEWw4vLXzbQ\n6b6RoveIoO6TvPxlA63qs7z8ZQPF9F+SH22vbX8OQKf5Rtv+EgDNJ3X58wZaxWd1+fMGiuFvir8b\nvjp8J/tGy/6jAmRvhW8fwL3vVT+o3grfPoB7r/IpALI3tz8FoJN84/NV873hB8UnM3xzANtf8nb4\ndwmg3grfFEDJO8JPE0i9Ff4pAYL3pI8mkHor/HMCeO9JH00g9SafEsh7T/ppARBvp48UwJnelT5S\nACd7O31TAlnvKx9SQCd7B58KgPO+8iMFuPWe9E8F8BveWX7bAjzX9y4//Jve+fhsH6Ctv7n8PTzj\nvY/v9gEOHz58+PBX+6v/f/wPvnd54f3j6venE/yl769Xv7+j3x/o98/V32/o9+fl389Xnx+g5x/o\n+Qt6/oOeP6HnX+j5G3z+h54/ouefV5/foufP6Pk3ev4On/+j9w/o/Qd6/4Le/6D3T/D9V67Y/ZsV\nQBq+s+8f0ftP+P41axXguP9NWgDuu/Cdfv+N3r/D9/9TAID+A7T/Ae2/gPs/0P4TtP8F7r9J3AIO\n9P+g/Udw/9Oygbf7r9D+L7j/DO1/Q/vv4P4/tP8Q7n9E+y/h/k+0/xTuf4X7b+H+X7T/+BPuf3aM\n8OHDhw8fPnz4w/4vzcvgeY10sY0AAAAldEVYdGRhdGU6Y3JlYXRlADIwMTYtMDMtMjNUMTQ6NTA6\nNDUtMDQ6MDD1gtVmAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE2LTAzLTIzVDE0OjUwOjQ1LTA0OjAw\nhN9t2gAAAABJRU5ErkJggg==\n",
|
||||
"text/plain": [
|
||||
"<IPython.core.display.Image object>"
|
||||
]
|
||||
|
|
@ -570,8 +570,10 @@
|
|||
" Copyright: 2011-2015 Massachusetts Institute of Technology\n",
|
||||
" License: http://mit-crpg.github.io/openmc/license.html\n",
|
||||
" Version: 0.7.1\n",
|
||||
" Git SHA1: b9efc990c7eb58f4a41524d59ae73396c9929436\n",
|
||||
" Date/Time: 2016-02-23 10:52:44\n",
|
||||
" Git SHA1: 5f252e2df51930b9175fd41bafa8db01f3eaeb92\n",
|
||||
" Date/Time: 2016-03-23 14:50:46\n",
|
||||
" MPI Processes: 1\n",
|
||||
" OpenMP Threads: 16\n",
|
||||
"\n",
|
||||
" ===========================================================================\n",
|
||||
" ========================> INITIALIZATION <=========================\n",
|
||||
|
|
@ -598,26 +600,26 @@
|
|||
"\n",
|
||||
" Bat./Gen. k Average k \n",
|
||||
" ========= ======== ==================== \n",
|
||||
" 1/1 1.05992 \n",
|
||||
" 2/1 1.05251 \n",
|
||||
" 3/1 1.05204 \n",
|
||||
" 4/1 1.02100 \n",
|
||||
" 5/1 1.07784 \n",
|
||||
" 6/1 1.04814 \n",
|
||||
" 7/1 1.02335 1.03574 +/- 0.01239\n",
|
||||
" 8/1 1.02415 1.03188 +/- 0.00813\n",
|
||||
" 9/1 1.10331 1.04974 +/- 0.01876\n",
|
||||
" 10/1 1.05452 1.05069 +/- 0.01456\n",
|
||||
" 11/1 1.07867 1.05536 +/- 0.01277\n",
|
||||
" 12/1 1.04203 1.05345 +/- 0.01096\n",
|
||||
" 13/1 1.04482 1.05237 +/- 0.00955\n",
|
||||
" 14/1 1.04117 1.05113 +/- 0.00852\n",
|
||||
" 15/1 1.07581 1.05360 +/- 0.00801\n",
|
||||
" 16/1 1.04235 1.05257 +/- 0.00731\n",
|
||||
" 17/1 1.02710 1.05045 +/- 0.00701\n",
|
||||
" 18/1 1.01970 1.04809 +/- 0.00687\n",
|
||||
" 19/1 1.01022 1.04538 +/- 0.00691\n",
|
||||
" 20/1 1.01449 1.04332 +/- 0.00675\n",
|
||||
" 1/1 1.03167 \n",
|
||||
" 2/1 1.03535 \n",
|
||||
" 3/1 1.02709 \n",
|
||||
" 4/1 1.00637 \n",
|
||||
" 5/1 0.99250 \n",
|
||||
" 6/1 1.06116 \n",
|
||||
" 7/1 1.04289 1.05202 +/- 0.00913\n",
|
||||
" 8/1 1.04779 1.05061 +/- 0.00546\n",
|
||||
" 9/1 1.04695 1.04969 +/- 0.00397\n",
|
||||
" 10/1 0.98778 1.03731 +/- 0.01276\n",
|
||||
" 11/1 1.05810 1.04078 +/- 0.01098\n",
|
||||
" 12/1 1.01539 1.03715 +/- 0.00996\n",
|
||||
" 13/1 1.08644 1.04331 +/- 0.01060\n",
|
||||
" 14/1 1.06425 1.04564 +/- 0.00963\n",
|
||||
" 15/1 1.01768 1.04284 +/- 0.00906\n",
|
||||
" 16/1 1.05877 1.04429 +/- 0.00832\n",
|
||||
" 17/1 1.02195 1.04243 +/- 0.00782\n",
|
||||
" 18/1 1.02488 1.04108 +/- 0.00732\n",
|
||||
" 19/1 1.06285 1.04263 +/- 0.00695\n",
|
||||
" 20/1 0.98751 1.03896 +/- 0.00744\n",
|
||||
" Creating state point statepoint.20.h5...\n",
|
||||
"\n",
|
||||
" ===========================================================================\n",
|
||||
|
|
@ -627,27 +629,27 @@
|
|||
"\n",
|
||||
" =======================> TIMING STATISTICS <=======================\n",
|
||||
"\n",
|
||||
" Total time for initialization = 8.4700E-01 seconds\n",
|
||||
" Reading cross sections = 5.8300E-01 seconds\n",
|
||||
" Total time in simulation = 1.6037E+01 seconds\n",
|
||||
" Time in transport only = 1.6026E+01 seconds\n",
|
||||
" Time in inactive batches = 2.3070E+00 seconds\n",
|
||||
" Time in active batches = 1.3730E+01 seconds\n",
|
||||
" Time synchronizing fission bank = 5.0000E-03 seconds\n",
|
||||
" Sampling source sites = 4.0000E-03 seconds\n",
|
||||
" Total time for initialization = 5.0400E-01 seconds\n",
|
||||
" Reading cross sections = 1.5000E-01 seconds\n",
|
||||
" Total time in simulation = 2.1570E+00 seconds\n",
|
||||
" Time in transport only = 1.9760E+00 seconds\n",
|
||||
" Time in inactive batches = 3.3600E-01 seconds\n",
|
||||
" Time in active batches = 1.8210E+00 seconds\n",
|
||||
" Time synchronizing fission bank = 4.0000E-03 seconds\n",
|
||||
" Sampling source sites = 3.0000E-03 seconds\n",
|
||||
" SEND/RECV source sites = 1.0000E-03 seconds\n",
|
||||
" Time accumulating tallies = 0.0000E+00 seconds\n",
|
||||
" Total time for finalization = 3.0000E-03 seconds\n",
|
||||
" Total time elapsed = 1.6899E+01 seconds\n",
|
||||
" Calculation Rate (inactive) = 5418.29 neutrons/second\n",
|
||||
" Calculation Rate (active) = 2731.25 neutrons/second\n",
|
||||
" Total time for finalization = 2.0000E-03 seconds\n",
|
||||
" Total time elapsed = 2.6800E+00 seconds\n",
|
||||
" Calculation Rate (inactive) = 37202.4 neutrons/second\n",
|
||||
" Calculation Rate (active) = 20593.1 neutrons/second\n",
|
||||
"\n",
|
||||
" ============================> RESULTS <============================\n",
|
||||
"\n",
|
||||
" k-effective (Collision) = 1.03935 +/- 0.00682\n",
|
||||
" k-effective (Track-length) = 1.04332 +/- 0.00675\n",
|
||||
" k-effective (Absorption) = 1.03845 +/- 0.00598\n",
|
||||
" Combined k-effective = 1.04024 +/- 0.00523\n",
|
||||
" k-effective (Collision) = 1.03965 +/- 0.00597\n",
|
||||
" k-effective (Track-length) = 1.03896 +/- 0.00744\n",
|
||||
" k-effective (Absorption) = 1.03976 +/- 0.00606\n",
|
||||
" Combined k-effective = 1.03991 +/- 0.00536\n",
|
||||
" Leakage Fraction = 0.00000 +/- 0.00000\n",
|
||||
"\n"
|
||||
]
|
||||
|
|
@ -738,7 +740,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -754,8 +756,8 @@
|
|||
" <th>0</th>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(nu-fission / absorption)</td>\n",
|
||||
" <td>1.040166</td>\n",
|
||||
" <td>0.009069</td>\n",
|
||||
" <td>1.036847</td>\n",
|
||||
" <td>0.009685</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -763,7 +765,7 @@
|
|||
],
|
||||
"text/plain": [
|
||||
" nuclide score mean std. dev.\n",
|
||||
"0 total (nu-fission / absorption) 1.04e+00 9.07e-03"
|
||||
"0 total (nu-fission / absorption) 1.04e+00 9.69e-03"
|
||||
]
|
||||
},
|
||||
"execution_count": 26,
|
||||
|
|
@ -798,7 +800,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -815,11 +817,11 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>absorption</td>\n",
|
||||
" <td>0.694707</td>\n",
|
||||
" <td>0.006699</td>\n",
|
||||
" <td>0.692034</td>\n",
|
||||
" <td>0.007217</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -827,7 +829,7 @@
|
|||
],
|
||||
"text/plain": [
|
||||
" energy low [MeV] energy high [MeV] nuclide score mean std. dev.\n",
|
||||
"0 0.00e+00 6.25e-07 total absorption 6.95e-01 6.70e-03"
|
||||
"0 0.00e+00 6.25e-07 total absorption 6.92e-01 7.22e-03"
|
||||
]
|
||||
},
|
||||
"execution_count": 27,
|
||||
|
|
@ -860,7 +862,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -877,11 +879,11 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>nu-fission</td>\n",
|
||||
" <td>1.201216</td>\n",
|
||||
" <td>0.012288</td>\n",
|
||||
" <td>1.202298</td>\n",
|
||||
" <td>0.013385</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -889,7 +891,7 @@
|
|||
],
|
||||
"text/plain": [
|
||||
" energy low [MeV] energy high [MeV] nuclide score mean std. dev.\n",
|
||||
"0 0.00e+00 6.25e-07 total nu-fission 1.20e+00 1.23e-02"
|
||||
"0 0.00e+00 6.25e-07 total nu-fission 1.20e+00 1.34e-02"
|
||||
]
|
||||
},
|
||||
"execution_count": 28,
|
||||
|
|
@ -923,7 +925,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -941,12 +943,12 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>absorption</td>\n",
|
||||
" <td>0.74925</td>\n",
|
||||
" <td>0.008257</td>\n",
|
||||
" <td>0.749151</td>\n",
|
||||
" <td>0.009003</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -957,7 +959,7 @@
|
|||
"0 0.00e+00 6.25e-07 10000 total absorption 7.49e-01 \n",
|
||||
"\n",
|
||||
" std. dev. \n",
|
||||
"0 8.26e-03 "
|
||||
"0 9.00e-03 "
|
||||
]
|
||||
},
|
||||
"execution_count": 29,
|
||||
|
|
@ -989,7 +991,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1007,12 +1009,12 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(nu-fission / absorption)</td>\n",
|
||||
" <td>1.663616</td>\n",
|
||||
" <td>0.018624</td>\n",
|
||||
" <td>1.663435</td>\n",
|
||||
" <td>0.019976</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1023,7 +1025,7 @@
|
|||
"0 0.00e+00 6.25e-07 10000 total \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 (nu-fission / absorption) 1.66e+00 1.86e-02 "
|
||||
"0 (nu-fission / absorption) 1.66e+00 2.00e-02 "
|
||||
]
|
||||
},
|
||||
"execution_count": 30,
|
||||
|
|
@ -1054,7 +1056,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1072,12 +1074,12 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>0</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>total</td>\n",
|
||||
" <td>(((absorption * nu-fission) * absorption) * (n...</td>\n",
|
||||
" <td>1.040166</td>\n",
|
||||
" <td>0.021928</td>\n",
|
||||
" <td>1.036847</td>\n",
|
||||
" <td>0.023674</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1088,7 +1090,7 @@
|
|||
"0 0.00e+00 6.25e-07 10000 total \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 (((absorption * nu-fission) * absorption) * (n... 1.04e+00 2.19e-02 "
|
||||
"0 (((absorption * nu-fission) * absorption) * (n... 1.04e+00 2.37e-02 "
|
||||
]
|
||||
},
|
||||
"execution_count": 31,
|
||||
|
|
@ -1136,7 +1138,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1154,82 +1156,82 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>(U-238 / total)</td>\n",
|
||||
" <td>(nu-fission / flux)</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>7.377419e-09</td>\n",
|
||||
" <td>6.627781e-07</td>\n",
|
||||
" <td>7.082494e-09</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>(U-238 / total)</td>\n",
|
||||
" <td>(scatter / flux)</td>\n",
|
||||
" <td>0.209989</td>\n",
|
||||
" <td>2.303838e-03</td>\n",
|
||||
" <td>2.099843e-01</td>\n",
|
||||
" <td>2.003686e-03</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>(U-235 / total)</td>\n",
|
||||
" <td>(nu-fission / flux)</td>\n",
|
||||
" <td>0.356420</td>\n",
|
||||
" <td>3.951669e-03</td>\n",
|
||||
" <td>3.547246e-01</td>\n",
|
||||
" <td>3.854562e-03</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>(U-235 / total)</td>\n",
|
||||
" <td>(scatter / flux)</td>\n",
|
||||
" <td>0.005555</td>\n",
|
||||
" <td>6.101004e-05</td>\n",
|
||||
" <td>5.554185e-03</td>\n",
|
||||
" <td>5.316706e-05</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>4</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>(U-238 / total)</td>\n",
|
||||
" <td>(nu-fission / flux)</td>\n",
|
||||
" <td>0.007155</td>\n",
|
||||
" <td>8.053460e-05</td>\n",
|
||||
" <td>7.151165e-03</td>\n",
|
||||
" <td>5.480545e-05</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>5</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>(U-238 / total)</td>\n",
|
||||
" <td>(scatter / flux)</td>\n",
|
||||
" <td>0.227770</td>\n",
|
||||
" <td>1.079289e-03</td>\n",
|
||||
" <td>2.278981e-01</td>\n",
|
||||
" <td>6.424480e-04</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>6</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>(U-235 / total)</td>\n",
|
||||
" <td>(nu-fission / flux)</td>\n",
|
||||
" <td>0.008067</td>\n",
|
||||
" <td>5.254797e-05</td>\n",
|
||||
" <td>8.073636e-03</td>\n",
|
||||
" <td>4.374754e-05</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>7</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>(U-235 / total)</td>\n",
|
||||
" <td>(scatter / flux)</td>\n",
|
||||
" <td>0.003367</td>\n",
|
||||
" <td>1.647058e-05</td>\n",
|
||||
" <td>3.369592e-03</td>\n",
|
||||
" <td>8.971220e-06</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1247,14 +1249,14 @@
|
|||
"7 10000 6.25e-07 2.00e+01 (U-235 / total) \n",
|
||||
"\n",
|
||||
" score mean std. dev. \n",
|
||||
"0 (nu-fission / flux) 6.66e-07 7.38e-09 \n",
|
||||
"1 (scatter / flux) 2.10e-01 2.30e-03 \n",
|
||||
"2 (nu-fission / flux) 3.56e-01 3.95e-03 \n",
|
||||
"3 (scatter / flux) 5.56e-03 6.10e-05 \n",
|
||||
"4 (nu-fission / flux) 7.15e-03 8.05e-05 \n",
|
||||
"5 (scatter / flux) 2.28e-01 1.08e-03 \n",
|
||||
"6 (nu-fission / flux) 8.07e-03 5.25e-05 \n",
|
||||
"7 (scatter / flux) 3.37e-03 1.65e-05 "
|
||||
"0 (nu-fission / flux) 6.63e-07 7.08e-09 \n",
|
||||
"1 (scatter / flux) 2.10e-01 2.00e-03 \n",
|
||||
"2 (nu-fission / flux) 3.55e-01 3.85e-03 \n",
|
||||
"3 (scatter / flux) 5.55e-03 5.32e-05 \n",
|
||||
"4 (nu-fission / flux) 7.15e-03 5.48e-05 \n",
|
||||
"5 (scatter / flux) 2.28e-01 6.42e-04 \n",
|
||||
"6 (nu-fission / flux) 8.07e-03 4.37e-05 \n",
|
||||
"7 (scatter / flux) 3.37e-03 8.97e-06 "
|
||||
]
|
||||
},
|
||||
"execution_count": 33,
|
||||
|
|
@ -1285,11 +1287,11 @@
|
|||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"[[[ 6.65702880e-07]\n",
|
||||
" [ 3.56420449e-01]]\n",
|
||||
"[[[ 6.62778145e-07]\n",
|
||||
" [ 3.54724568e-01]]\n",
|
||||
"\n",
|
||||
" [[ 7.15488656e-03]\n",
|
||||
" [ 8.06673774e-03]]]\n"
|
||||
" [[ 7.15116511e-03]\n",
|
||||
" [ 8.07363630e-03]]]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
|
|
@ -1317,9 +1319,9 @@
|
|||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"[[[ 0.00555533]]\n",
|
||||
"[[[ 0.00555418]]\n",
|
||||
"\n",
|
||||
" [[ 0.0033668 ]]]\n"
|
||||
" [[ 0.00336959]]]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
|
|
@ -1341,8 +1343,8 @@
|
|||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"[[[ 0.22777006]\n",
|
||||
" [ 0.0033668 ]]]\n"
|
||||
"[[[ 0.22789806]\n",
|
||||
" [ 0.00336959]]]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
|
|
@ -1371,7 +1373,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1389,42 +1391,42 @@
|
|||
" <tr>\n",
|
||||
" <th>0</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>U-238</td>\n",
|
||||
" <td>nu-fission</td>\n",
|
||||
" <td>0.000002</td>\n",
|
||||
" <td>1.283958e-08</td>\n",
|
||||
" <td>1.338459e-08</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>0.000000e+00</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>U-235</td>\n",
|
||||
" <td>nu-fission</td>\n",
|
||||
" <td>0.868553</td>\n",
|
||||
" <td>6.880390e-03</td>\n",
|
||||
" <td>0.864141</td>\n",
|
||||
" <td>7.363278e-03</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>U-238</td>\n",
|
||||
" <td>nu-fission</td>\n",
|
||||
" <td>0.082149</td>\n",
|
||||
" <td>8.837250e-04</td>\n",
|
||||
" <td>0.082111</td>\n",
|
||||
" <td>6.090952e-04</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>10000</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>6.250000e-07</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>U-235</td>\n",
|
||||
" <td>nu-fission</td>\n",
|
||||
" <td>0.092618</td>\n",
|
||||
" <td>5.195308e-04</td>\n",
|
||||
" <td>0.092703</td>\n",
|
||||
" <td>4.695215e-04</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1432,16 +1434,16 @@
|
|||
],
|
||||
"text/plain": [
|
||||
" cell energy low [MeV] energy high [MeV] nuclide score mean \\\n",
|
||||
"0 10000 0.00e+00 6.25e-07 U-238 nu-fission 1.62e-06 \n",
|
||||
"1 10000 0.00e+00 6.25e-07 U-235 nu-fission 8.69e-01 \n",
|
||||
"0 10000 0.00e+00 6.25e-07 U-238 nu-fission 1.61e-06 \n",
|
||||
"1 10000 0.00e+00 6.25e-07 U-235 nu-fission 8.64e-01 \n",
|
||||
"2 10000 6.25e-07 2.00e+01 U-238 nu-fission 8.21e-02 \n",
|
||||
"3 10000 6.25e-07 2.00e+01 U-235 nu-fission 9.26e-02 \n",
|
||||
"3 10000 6.25e-07 2.00e+01 U-235 nu-fission 9.27e-02 \n",
|
||||
"\n",
|
||||
" std. dev. \n",
|
||||
"0 1.28e-08 \n",
|
||||
"1 6.88e-03 \n",
|
||||
"2 8.84e-04 \n",
|
||||
"3 5.20e-04 "
|
||||
"0 1.34e-08 \n",
|
||||
"1 7.36e-03 \n",
|
||||
"2 6.09e-04 \n",
|
||||
"3 4.70e-04 "
|
||||
]
|
||||
},
|
||||
"execution_count": 37,
|
||||
|
|
@ -1465,7 +1467,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<div style=\"max-height:1000px;max-width:1500px;overflow:auto;\">\n",
|
||||
"<div>\n",
|
||||
"<table border=\"1\" class=\"dataframe\">\n",
|
||||
" <thead>\n",
|
||||
" <tr style=\"text-align: right;\">\n",
|
||||
|
|
@ -1484,91 +1486,91 @@
|
|||
" <th>0</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.000000e-08</td>\n",
|
||||
" <td>0.000000</td>\n",
|
||||
" <td>1.080060e-07</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>4.619398</td>\n",
|
||||
" <td>0.040124</td>\n",
|
||||
" <td>4.591022</td>\n",
|
||||
" <td>0.043961</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>1</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.080060e-07</td>\n",
|
||||
" <td>0.000001</td>\n",
|
||||
" <td>1.166529e-06</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>2.030757</td>\n",
|
||||
" <td>0.011239</td>\n",
|
||||
" <td>2.032481</td>\n",
|
||||
" <td>0.010876</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>2</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.166529e-06</td>\n",
|
||||
" <td>0.000013</td>\n",
|
||||
" <td>1.259921e-05</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>1.658488</td>\n",
|
||||
" <td>0.009777</td>\n",
|
||||
" <td>1.654187</td>\n",
|
||||
" <td>0.012130</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>3</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.259921e-05</td>\n",
|
||||
" <td>0.000136</td>\n",
|
||||
" <td>1.360790e-04</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>1.853002</td>\n",
|
||||
" <td>0.007378</td>\n",
|
||||
" <td>1.864771</td>\n",
|
||||
" <td>0.011649</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>4</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.360790e-04</td>\n",
|
||||
" <td>0.001470</td>\n",
|
||||
" <td>1.469734e-03</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>2.050773</td>\n",
|
||||
" <td>0.012484</td>\n",
|
||||
" <td>2.056893</td>\n",
|
||||
" <td>0.008555</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>5</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.469734e-03</td>\n",
|
||||
" <td>0.015874</td>\n",
|
||||
" <td>1.587401e-02</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>2.131759</td>\n",
|
||||
" <td>0.007821</td>\n",
|
||||
" <td>2.138833</td>\n",
|
||||
" <td>0.015180</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>6</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.587401e-02</td>\n",
|
||||
" <td>0.171449</td>\n",
|
||||
" <td>1.714488e-01</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>2.213710</td>\n",
|
||||
" <td>0.015159</td>\n",
|
||||
" <td>2.207209</td>\n",
|
||||
" <td>0.014853</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>7</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.714488e-01</td>\n",
|
||||
" <td>1.851749</td>\n",
|
||||
" <td>1.851749e+00</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>2.011925</td>\n",
|
||||
" <td>0.009406</td>\n",
|
||||
" <td>1.999407</td>\n",
|
||||
" <td>0.009053</td>\n",
|
||||
" </tr>\n",
|
||||
" <tr>\n",
|
||||
" <th>8</th>\n",
|
||||
" <td>10002</td>\n",
|
||||
" <td>1.851749e+00</td>\n",
|
||||
" <td>20.000000</td>\n",
|
||||
" <td>2.000000e+01</td>\n",
|
||||
" <td>H-1</td>\n",
|
||||
" <td>scatter</td>\n",
|
||||
" <td>0.371280</td>\n",
|
||||
" <td>0.003949</td>\n",
|
||||
" <td>0.368760</td>\n",
|
||||
" <td>0.003373</td>\n",
|
||||
" </tr>\n",
|
||||
" </tbody>\n",
|
||||
"</table>\n",
|
||||
|
|
@ -1576,26 +1578,26 @@
|
|||
],
|
||||
"text/plain": [
|
||||
" cell energy low [MeV] energy high [MeV] nuclide score mean \\\n",
|
||||
"0 10002 1.00e-08 1.08e-07 H-1 scatter 4.62e+00 \n",
|
||||
"0 10002 1.00e-08 1.08e-07 H-1 scatter 4.59e+00 \n",
|
||||
"1 10002 1.08e-07 1.17e-06 H-1 scatter 2.03e+00 \n",
|
||||
"2 10002 1.17e-06 1.26e-05 H-1 scatter 1.66e+00 \n",
|
||||
"3 10002 1.26e-05 1.36e-04 H-1 scatter 1.85e+00 \n",
|
||||
"4 10002 1.36e-04 1.47e-03 H-1 scatter 2.05e+00 \n",
|
||||
"5 10002 1.47e-03 1.59e-02 H-1 scatter 2.13e+00 \n",
|
||||
"2 10002 1.17e-06 1.26e-05 H-1 scatter 1.65e+00 \n",
|
||||
"3 10002 1.26e-05 1.36e-04 H-1 scatter 1.86e+00 \n",
|
||||
"4 10002 1.36e-04 1.47e-03 H-1 scatter 2.06e+00 \n",
|
||||
"5 10002 1.47e-03 1.59e-02 H-1 scatter 2.14e+00 \n",
|
||||
"6 10002 1.59e-02 1.71e-01 H-1 scatter 2.21e+00 \n",
|
||||
"7 10002 1.71e-01 1.85e+00 H-1 scatter 2.01e+00 \n",
|
||||
"8 10002 1.85e+00 2.00e+01 H-1 scatter 3.71e-01 \n",
|
||||
"7 10002 1.71e-01 1.85e+00 H-1 scatter 2.00e+00 \n",
|
||||
"8 10002 1.85e+00 2.00e+01 H-1 scatter 3.69e-01 \n",
|
||||
"\n",
|
||||
" std. dev. \n",
|
||||
"0 4.01e-02 \n",
|
||||
"1 1.12e-02 \n",
|
||||
"2 9.78e-03 \n",
|
||||
"3 7.38e-03 \n",
|
||||
"4 1.25e-02 \n",
|
||||
"5 7.82e-03 \n",
|
||||
"6 1.52e-02 \n",
|
||||
"7 9.41e-03 \n",
|
||||
"8 3.95e-03 "
|
||||
"0 4.40e-02 \n",
|
||||
"1 1.09e-02 \n",
|
||||
"2 1.21e-02 \n",
|
||||
"3 1.16e-02 \n",
|
||||
"4 8.56e-03 \n",
|
||||
"5 1.52e-02 \n",
|
||||
"6 1.49e-02 \n",
|
||||
"7 9.05e-03 \n",
|
||||
"8 3.37e-03 "
|
||||
]
|
||||
},
|
||||
"execution_count": 38,
|
||||
|
|
@ -1607,7 +1609,7 @@
|
|||
"# \"Slice\" the H-1 scatter data in the moderator Cell into a new derived Tally\n",
|
||||
"need_to_slice = sp.get_tally(name='need-to-slice')\n",
|
||||
"slice_test = need_to_slice.get_slice(scores=['scatter'], nuclides=['H-1'],\n",
|
||||
" filters=['cell'], filter_bins=[(moderator_cell.id,)])\n",
|
||||
" filters=['cell'], filter_bins=[(moderator_cell.id,)])\n",
|
||||
"slice_test.get_pandas_dataframe()"
|
||||
]
|
||||
}
|
||||
|
|
@ -1628,7 +1630,7 @@
|
|||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython2",
|
||||
"version": "2.7.10"
|
||||
"version": "2.7.11"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ if run_mode == 'k-eigenvalue':
|
|||
Accumulated sum and sum-of-squares for each global tally. The compound type
|
||||
has fields named ``sum`` and ``sum_sq``.
|
||||
|
||||
**tallies_present** (*int*)
|
||||
**/tallies_present** (*int*)
|
||||
|
||||
Flag indicated if tallies are present in the file.
|
||||
|
||||
|
|
@ -260,3 +260,69 @@ if (run_mode == 'k-eigenvalue' and source_present > 0)
|
|||
``wgt``, ``xyz``, ``uvw``, ``E``, ``g``, and ``delayed_group``, which
|
||||
represent the weight, position, direction, energy, energy group, and
|
||||
delayed_group of the source particle, respectively.
|
||||
|
||||
**/runtime/total initialization** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent reading inputs, allocating
|
||||
arrays, etc.
|
||||
|
||||
**/runtime/reading cross sections** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent loading cross section
|
||||
libraries (this is a subset of initialization).
|
||||
|
||||
**/runtime/simulation** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent between initialization and
|
||||
finalization.
|
||||
|
||||
**/runtime/transport** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent transporting particles.
|
||||
|
||||
**/runtime/inactive batches** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent in the inactive batches
|
||||
(including non-transport activities like communcating sites).
|
||||
|
||||
**/runtime/active batches** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent in the active batches
|
||||
(including non-transport activities like communicating sites).
|
||||
|
||||
**/runtime/synchronizing fission bank** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent sampling source particles
|
||||
from fission sites and communicating them to other processes for load
|
||||
balancing.
|
||||
|
||||
**/runtime/sampling source sites** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent sampling source particles
|
||||
from fission sites.
|
||||
|
||||
**/runtime/SEND-RECV source sites** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent communicating source sites
|
||||
between processes for load balancing.
|
||||
|
||||
**/runtime/accumulating tallies** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent communicating tally results
|
||||
and evaluating their statistics.
|
||||
|
||||
**/runtime/CMFD** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent evaluating CMFD.
|
||||
|
||||
**/runtime/CMFD building matrices** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent buliding CMFD matrices.
|
||||
|
||||
**/runtime/CMFD solving matrices** (*double*)
|
||||
|
||||
Time (in seconds on the master process) spent solving CMFD matrices.
|
||||
|
||||
**/runtime/total** (*double*)
|
||||
|
||||
Total time spent (in seconds on the master process) in the program.
|
||||
|
|
|
|||
|
|
@ -293,6 +293,13 @@ The current revision of the summary file format is 1.
|
|||
|
||||
Filter offset (used for distribcell filter).
|
||||
|
||||
**/tallies/tally <uid>/filter <j>/paths** (*char[][]*)
|
||||
|
||||
The paths traversed through the CSG tree to reach each distribcell
|
||||
instance (for 'distribcell' filters only). This consists of the integer
|
||||
IDs for each universe, cell and lattice delimited by '->'. Each lattice
|
||||
cell is specified by its (x,y) or (x,y,z) indices.
|
||||
|
||||
**/tallies/tally <uid>/filter <j>/n_bins** (*int*)
|
||||
|
||||
Number of bins for the j-th filter.
|
||||
|
|
|
|||
|
|
@ -45,6 +45,9 @@ class Filter(object):
|
|||
stride : Integral
|
||||
The number of filter, nuclide and score bins within each of this
|
||||
filter's bins.
|
||||
distribcell_paths : list of str
|
||||
The paths traversed through the CSG tree to reach each distribcell
|
||||
instance (for 'distribcell' filters only)
|
||||
|
||||
"""
|
||||
|
||||
|
|
@ -56,6 +59,7 @@ class Filter(object):
|
|||
self._bins = None
|
||||
self._mesh = None
|
||||
self._stride = None
|
||||
self._distribcell_paths = None
|
||||
|
||||
if type is not None:
|
||||
self.type = type
|
||||
|
|
@ -110,6 +114,7 @@ class Filter(object):
|
|||
clone._num_bins = self.num_bins
|
||||
clone._mesh = copy.deepcopy(self.mesh, memo)
|
||||
clone._stride = self.stride
|
||||
clone._distribcell_paths = copy.deepcopy(self.distribcell_paths)
|
||||
|
||||
memo[id(self)] = clone
|
||||
|
||||
|
|
@ -152,6 +157,10 @@ class Filter(object):
|
|||
def stride(self):
|
||||
return self._stride
|
||||
|
||||
@property
|
||||
def distribcell_paths(self):
|
||||
return self._distribcell_paths
|
||||
|
||||
@type.setter
|
||||
def type(self, type):
|
||||
if type is None:
|
||||
|
|
@ -246,6 +255,11 @@ class Filter(object):
|
|||
|
||||
self._stride = stride
|
||||
|
||||
@distribcell_paths.setter
|
||||
def distribcell_paths(self, distribcell_paths):
|
||||
cv.check_iterable_type('distribcell_paths', distribcell_paths, str)
|
||||
self._distribcell_paths = distribcell_paths
|
||||
|
||||
def can_merge(self, other):
|
||||
"""Determine if filter can be merged with another.
|
||||
|
||||
|
|
@ -632,18 +646,10 @@ class Filter(object):
|
|||
# offsets to OpenCG LocalCoords linked lists
|
||||
offsets_to_coords = {}
|
||||
|
||||
# Use OpenCG to compute LocalCoords linked list for
|
||||
# each region and store in dictionary
|
||||
for region in range(num_regions):
|
||||
for offset, path in enumerate(self.distribcell_paths):
|
||||
region = opencg_geometry.get_region_from_path(path)
|
||||
coords = opencg_geometry.find_region(region)
|
||||
path = opencg.get_path(coords)
|
||||
cell_id = path[-1]
|
||||
|
||||
# If this region is in Cell corresponding to the
|
||||
# distribcell filter bin, store it in dictionary
|
||||
if cell_id == self.bins[0]:
|
||||
offset = openmc_geometry.get_cell_instance(path)
|
||||
offsets_to_coords[offset] = coords
|
||||
offsets_to_coords[offset] = coords
|
||||
|
||||
# Each distribcell offset is a DataFrame bin
|
||||
# Unravel the paths into DataFrame columns
|
||||
|
|
|
|||
|
|
@ -63,15 +63,19 @@ class Geometry(object):
|
|||
|
||||
"""
|
||||
|
||||
# Extract the cell id from the path
|
||||
last_index = path.rfind('>')
|
||||
cell_id = int(path[last_index+1:])
|
||||
|
||||
# Find the distribcell index of the cell.
|
||||
cells = self.get_all_cells()
|
||||
for cell in cells:
|
||||
if cell.id == path[-1]:
|
||||
if cell.id == cell_id:
|
||||
distribcell_index = cell.distribcell_index
|
||||
break
|
||||
else:
|
||||
raise RuntimeError('Could not find cell {} specified in a \
|
||||
distribcell filter'.format(path[-1]))
|
||||
distribcell filter'.format(cell_id))
|
||||
|
||||
# Return memoize'd offset if possible
|
||||
if (path, distribcell_index) in self._offsets:
|
||||
|
|
|
|||
|
|
@ -67,10 +67,6 @@ class MGXS(object):
|
|||
The energy group structure for energy condensation
|
||||
by_nuclide : bool
|
||||
If true, computes cross sections for each nuclide in domain
|
||||
nuclides : Iterable of basestring
|
||||
The user-specified nuclides to compute cross sections. If by_nuclide
|
||||
is True but nuclides are not specified by the user, all nuclides in the
|
||||
spatial domain will be used.
|
||||
name : str, optional
|
||||
Name of the multi-group cross section. Used as a label to identify
|
||||
tallies in OpenMC 'tallies.xml' file.
|
||||
|
|
@ -109,9 +105,11 @@ class MGXS(object):
|
|||
num_nuclides : Integral
|
||||
The number of nuclides for which the multi-group cross section is
|
||||
being tracked. This is unity if the by_nuclide attribute is False.
|
||||
nuclides : list of str or 'sum'
|
||||
A list of nuclide string names (e.g., 'U-238', 'O-16') when by_nuclide
|
||||
is True and 'sum' when by_nuclide is False.
|
||||
nuclides : Iterable of str or 'sum'
|
||||
The optional user-specified nuclides for which to compute cross
|
||||
sections (e.g., 'U-238', 'O-16'). If by_nuclide is True but nuclides
|
||||
are not specified by the user, all nuclides in the spatial domain
|
||||
are included. This attribute is 'sum' if by_nuclide is false.
|
||||
sparse : bool
|
||||
Whether or not the MGXS' tallies use SciPy's LIL sparse matrix format
|
||||
for compressed data storage
|
||||
|
|
@ -441,7 +439,7 @@ class MGXS(object):
|
|||
cv.check_type('nuclide', nuclide, basestring)
|
||||
|
||||
# Get list of all nuclides in the spatial domain
|
||||
nuclides = self.domain.get_all_nuclides()
|
||||
nuclides = self.get_all_nuclides()
|
||||
|
||||
if nuclide not in nuclides:
|
||||
msg = 'Unable to get density for nuclide "{0}" which is not in ' \
|
||||
|
|
@ -553,7 +551,7 @@ class MGXS(object):
|
|||
|
||||
# If this is a by-nuclide cross-section, add all nuclides to Tally
|
||||
if self.by_nuclide and score != 'flux':
|
||||
all_nuclides = self.domain.get_all_nuclides()
|
||||
all_nuclides = self.get_all_nuclides()
|
||||
for nuclide in all_nuclides:
|
||||
self.tallies[key].nuclides.append(nuclide)
|
||||
else:
|
||||
|
|
@ -761,10 +759,9 @@ class MGXS(object):
|
|||
# Reverse energies to align with increasing energy groups
|
||||
xs = xs[:, ::-1, :]
|
||||
|
||||
# Eliminate trivial dimensions
|
||||
xs = np.squeeze(xs)
|
||||
xs = np.atleast_1d(xs)
|
||||
|
||||
# Eliminate trivial dimensions
|
||||
xs = np.squeeze(xs)
|
||||
xs = np.atleast_1d(xs)
|
||||
return xs
|
||||
|
||||
def get_condensed_xs(self, coarse_groups):
|
||||
|
|
|
|||
|
|
@ -1002,6 +1002,7 @@ def get_opencg_geometry(openmc_geometry):
|
|||
opencg_geometry = opencg.Geometry()
|
||||
opencg_geometry.root_universe = opencg_root_universe
|
||||
opencg_geometry.initialize_cell_offsets()
|
||||
opencg_geometry.assign_auto_ids()
|
||||
|
||||
return opencg_geometry
|
||||
|
||||
|
|
|
|||
|
|
@ -68,6 +68,9 @@ class StatePoint(object):
|
|||
Working directory for simulation
|
||||
run_mode : str
|
||||
Simulation run mode, e.g. 'k-eigenvalue'
|
||||
runtime : dict
|
||||
Dictionary whose keys are strings describing various runtime metrics
|
||||
and whose values are time values in seconds.
|
||||
seed : Integral
|
||||
Pseudorandom number generator seed
|
||||
source : ndarray of compound datatype
|
||||
|
|
@ -101,8 +104,9 @@ class StatePoint(object):
|
|||
raise IOError('{} is not a statepoint file.'.format(filename))
|
||||
except AttributeError:
|
||||
raise IOError('Could not read statepoint file. This most likely '
|
||||
'means the statepoint file was produced by a different '
|
||||
'version of OpenMC than the one you are using.')
|
||||
'means the statepoint file was produced by a '
|
||||
'different version of OpenMC than the one you are '
|
||||
'using.')
|
||||
if self._f['revision'].value != 15:
|
||||
raise IOError('Statepoint file has a file revision of {} '
|
||||
'which is not consistent with the revision this '
|
||||
|
|
@ -311,6 +315,11 @@ class StatePoint(object):
|
|||
def run_mode(self):
|
||||
return self._f['run_mode'].value.decode()
|
||||
|
||||
@property
|
||||
def runtime(self):
|
||||
return {name: dataset.value
|
||||
for name, dataset in self._f['runtime'].items()}
|
||||
|
||||
@property
|
||||
def seed(self):
|
||||
return self._f['seed'].value
|
||||
|
|
@ -609,11 +618,13 @@ class StatePoint(object):
|
|||
raise ValueError(msg)
|
||||
|
||||
for tally_id, tally in self.tallies.items():
|
||||
# Get the Tally name from the summary file
|
||||
tally.name = summary.tallies[tally_id].name
|
||||
summary_tally = summary.tallies[tally_id]
|
||||
tally.name = summary_tally.name
|
||||
tally.with_summary = True
|
||||
|
||||
for tally_filter in tally.filters:
|
||||
summary_filter = summary_tally.find_filter(tally_filter.type)
|
||||
|
||||
if tally_filter.type == 'surface':
|
||||
surface_ids = []
|
||||
for bin in tally_filter.bins:
|
||||
|
|
@ -626,6 +637,10 @@ class StatePoint(object):
|
|||
distribcell_ids.append(summary.cells[bin].id)
|
||||
tally_filter.bins = distribcell_ids
|
||||
|
||||
if tally_filter.type == 'distribcell':
|
||||
tally_filter.distribcell_paths = \
|
||||
summary_filter.distribcell_paths
|
||||
|
||||
if tally_filter.type == 'universe':
|
||||
universe_ids = []
|
||||
for bin in tally_filter.bins:
|
||||
|
|
|
|||
|
|
@ -562,6 +562,12 @@ class Summary(object):
|
|||
new_filter = openmc.Filter(filter_type, bins)
|
||||
new_filter.num_bins = num_bins
|
||||
|
||||
# Read in distribcell paths
|
||||
if filter_type == 'distribcell':
|
||||
paths = self._f['{0}/paths'.format(subsubbase)][...]
|
||||
paths = [str(path.decode()) for path in paths]
|
||||
new_filter.distribcell_paths = paths
|
||||
|
||||
# Add Filter to the Tally
|
||||
tally.filters.append(new_filter)
|
||||
|
||||
|
|
|
|||
|
|
@ -2,8 +2,9 @@ from numbers import Real
|
|||
from xml.etree import ElementTree as ET
|
||||
import sys
|
||||
import warnings
|
||||
from collections import Iterable
|
||||
|
||||
from openmc.checkvalue import check_type, check_value
|
||||
import openmc.checkvalue as cv
|
||||
|
||||
if sys.version_info[0] >= 3:
|
||||
basestring = str
|
||||
|
|
@ -87,13 +88,13 @@ class Trigger(object):
|
|||
|
||||
@trigger_type.setter
|
||||
def trigger_type(self, trigger_type):
|
||||
check_value('tally trigger type', trigger_type,
|
||||
cv.check_value('tally trigger type', trigger_type,
|
||||
['variance', 'std_dev', 'rel_err'])
|
||||
self._trigger_type = trigger_type
|
||||
|
||||
@threshold.setter
|
||||
def threshold(self, threshold):
|
||||
check_type('tally trigger threshold', threshold, Real)
|
||||
cv.check_type('tally trigger threshold', threshold, Real)
|
||||
self._threshold = threshold
|
||||
|
||||
@scores.setter
|
||||
|
|
|
|||
|
|
@ -298,9 +298,6 @@ class Cell(object):
|
|||
self.region = Intersection(self.region, region)
|
||||
|
||||
def get_cell_instance(self, path, distribcell_index):
|
||||
# Get the current element and remove it from the list
|
||||
cell_id = path[0]
|
||||
path = path[1:]
|
||||
|
||||
# If the Cell is filled by a Material
|
||||
if self._type == 'normal' or self._type == 'void':
|
||||
|
|
@ -622,11 +619,19 @@ class Universe(object):
|
|||
self._cells.clear()
|
||||
|
||||
def get_cell_instance(self, path, distribcell_index):
|
||||
# Get the current element and remove it from the list
|
||||
path = path[1:]
|
||||
|
||||
# Get the Cell ID
|
||||
cell_id = path[0]
|
||||
# Pop off the root Universe ID from the path
|
||||
next_index = path.index('-')
|
||||
path = path[next_index+2:]
|
||||
|
||||
# Extract the Cell ID from the path
|
||||
if '-' in path:
|
||||
next_index = path.index('-')
|
||||
cell_id = int(path[:next_index])
|
||||
path = path[next_index+2:]
|
||||
else:
|
||||
cell_id = int(path)
|
||||
path = ''
|
||||
|
||||
# Make a recursive call to the Cell within this Universe
|
||||
offset = self.cells[cell_id].get_cell_instance(path, distribcell_index)
|
||||
|
|
@ -1090,20 +1095,30 @@ class RectLattice(Lattice):
|
|||
self._pitch = pitch
|
||||
|
||||
def get_cell_instance(self, path, distribcell_index):
|
||||
# Get the current element and remove it from the list
|
||||
i = path[0]
|
||||
path = path[1:]
|
||||
|
||||
# Extract the lattice element from the path
|
||||
next_index = path.index('-')
|
||||
lat_id_indices = path[:next_index]
|
||||
path = path[next_index+2:]
|
||||
|
||||
# Extract the lattice cell indices from the path
|
||||
i1 = lat_id_indices.index('(')
|
||||
i2 = lat_id_indices.index(')')
|
||||
i = lat_id_indices[i1+1:i2]
|
||||
lat_x = int(i.split(',')[0]) - 1
|
||||
lat_y = int(i.split(',')[1]) - 1
|
||||
lat_z = int(i.split(',')[2]) - 1
|
||||
|
||||
# For 2D Lattices
|
||||
if len(self._dimension) == 2:
|
||||
offset = self._offsets[i[3]-1, i[2]-1, i[1]-1, distribcell_index-1]
|
||||
offset += self._universes[i[1]-1][i[2]-1].get_cell_instance(path,
|
||||
offset = self._offsets[lat_z, lat_y, lat_x, distribcell_index-1]
|
||||
offset += self._universes[lat_x][lat_y].get_cell_instance(path,
|
||||
distribcell_index)
|
||||
|
||||
# For 3D Lattices
|
||||
else:
|
||||
offset = self._offsets[i[3]-1, i[2]-1, i[1]-1, distribcell_index-1]
|
||||
offset += self._universes[i[3]-1][i[2]-1][i[1]-1].get_cell_instance(
|
||||
offset = self._offsets[lat_z, lat_y, lat_x, distribcell_index-1]
|
||||
offset += self._universes[lat_z][lat_y][lat_x].get_cell_instance(
|
||||
path, distribcell_index)
|
||||
|
||||
return offset
|
||||
|
|
|
|||
|
|
@ -1169,7 +1169,7 @@ contains
|
|||
function get_label(t, i_filter) result(label)
|
||||
type(TallyObject), intent(in) :: t ! tally object
|
||||
integer, intent(in) :: i_filter ! index in filters array
|
||||
character(100) :: label ! user-specified identifier
|
||||
character(MAX_LINE_LEN) :: label ! user-specified identifier
|
||||
|
||||
integer :: i ! index in cells/surfaces/etc array
|
||||
integer :: bin
|
||||
|
|
|
|||
|
|
@ -49,10 +49,8 @@ contains
|
|||
integer, allocatable :: id_array(:)
|
||||
integer, allocatable :: key_array(:)
|
||||
integer(HID_T) :: file_id
|
||||
integer(HID_T) :: cmfd_group
|
||||
integer(HID_T) :: tallies_group, tally_group
|
||||
integer(HID_T) :: meshes_group, mesh_group
|
||||
integer(HID_T) :: filter_group
|
||||
integer(HID_T) :: cmfd_group, tallies_group, tally_group, meshes_group, &
|
||||
mesh_group, filter_group, runtime_group
|
||||
character(20), allocatable :: str_array(:)
|
||||
character(MAX_FILE_LEN) :: filename
|
||||
type(RegularMesh), pointer :: meshp
|
||||
|
|
@ -133,13 +131,13 @@ contains
|
|||
call write_dataset(file_id, "cmfd_on", 1)
|
||||
|
||||
cmfd_group = create_group(file_id, "cmfd")
|
||||
call write_dataset(cmfd_group, "indices", cmfd%indices)
|
||||
call write_dataset(cmfd_group, "k_cmfd", cmfd%k_cmfd)
|
||||
call write_dataset(cmfd_group, "cmfd_src", cmfd%cmfd_src)
|
||||
call write_dataset(cmfd_group, "cmfd_entropy", cmfd%entropy)
|
||||
call write_dataset(cmfd_group, "cmfd_balance", cmfd%balance)
|
||||
call write_dataset(cmfd_group, "cmfd_dominance", cmfd%dom)
|
||||
call write_dataset(cmfd_group, "cmfd_srccmp", cmfd%src_cmp)
|
||||
call write_dataset(cmfd_group, "indices", cmfd % indices)
|
||||
call write_dataset(cmfd_group, "k_cmfd", cmfd % k_cmfd)
|
||||
call write_dataset(cmfd_group, "cmfd_src", cmfd % cmfd_src)
|
||||
call write_dataset(cmfd_group, "cmfd_entropy", cmfd % entropy)
|
||||
call write_dataset(cmfd_group, "cmfd_balance", cmfd % balance)
|
||||
call write_dataset(cmfd_group, "cmfd_dominance", cmfd % dom)
|
||||
call write_dataset(cmfd_group, "cmfd_srccmp", cmfd % src_cmp)
|
||||
call close_group(cmfd_group)
|
||||
else
|
||||
call write_dataset(file_id, "cmfd_on", 0)
|
||||
|
|
@ -155,18 +153,18 @@ contains
|
|||
if (n_meshes > 0) then
|
||||
|
||||
! Print list of mesh IDs
|
||||
current => mesh_dict%keys()
|
||||
current => mesh_dict % keys()
|
||||
|
||||
allocate(id_array(n_meshes))
|
||||
allocate(key_array(n_meshes))
|
||||
i = 1
|
||||
|
||||
do while (associated(current))
|
||||
key_array(i) = current%key
|
||||
id_array(i) = current%value
|
||||
key_array(i) = current % key
|
||||
id_array(i) = current % value
|
||||
|
||||
! Move to next mesh
|
||||
next => current%next
|
||||
next => current % next
|
||||
deallocate(current)
|
||||
current => next
|
||||
i = i + 1
|
||||
|
|
@ -180,16 +178,17 @@ contains
|
|||
! Write information for meshes
|
||||
MESH_LOOP: do i = 1, n_meshes
|
||||
meshp => meshes(id_array(i))
|
||||
mesh_group = create_group(meshes_group, "mesh " // trim(to_str(meshp%id)))
|
||||
mesh_group = create_group(meshes_group, "mesh " &
|
||||
// trim(to_str(meshp % id)))
|
||||
|
||||
select case (meshp%type)
|
||||
select case (meshp % type)
|
||||
case (MESH_REGULAR)
|
||||
call write_dataset(mesh_group, "type", "regular")
|
||||
end select
|
||||
call write_dataset(mesh_group, "dimension", meshp%dimension)
|
||||
call write_dataset(mesh_group, "lower_left", meshp%lower_left)
|
||||
call write_dataset(mesh_group, "upper_right", meshp%upper_right)
|
||||
call write_dataset(mesh_group, "width", meshp%width)
|
||||
call write_dataset(mesh_group, "dimension", meshp % dimension)
|
||||
call write_dataset(mesh_group, "lower_left", meshp % lower_left)
|
||||
call write_dataset(mesh_group, "upper_right", meshp % upper_right)
|
||||
call write_dataset(mesh_group, "width", meshp % width)
|
||||
|
||||
call close_group(mesh_group)
|
||||
end do MESH_LOOP
|
||||
|
|
@ -211,7 +210,7 @@ contains
|
|||
! Write all tally information except results
|
||||
do i = 1, n_tallies
|
||||
tally => tallies(i)
|
||||
key_array(i) = tally%id
|
||||
key_array(i) = tally % id
|
||||
id_array(i) = i
|
||||
end do
|
||||
|
||||
|
|
@ -226,9 +225,9 @@ contains
|
|||
! Get pointer to tally
|
||||
tally => tallies(i)
|
||||
tally_group = create_group(tallies_group, "tally " // &
|
||||
trim(to_str(tally%id)))
|
||||
trim(to_str(tally % id)))
|
||||
|
||||
select case(tally%estimator)
|
||||
select case(tally % estimator)
|
||||
case (ESTIMATOR_ANALOG)
|
||||
call write_dataset(tally_group, "estimator", "analog")
|
||||
case (ESTIMATOR_TRACKLENGTH)
|
||||
|
|
@ -236,16 +235,17 @@ contains
|
|||
case (ESTIMATOR_COLLISION)
|
||||
call write_dataset(tally_group, "estimator", "collision")
|
||||
end select
|
||||
call write_dataset(tally_group, "n_realizations", tally%n_realizations)
|
||||
call write_dataset(tally_group, "n_filters", tally%n_filters)
|
||||
call write_dataset(tally_group, "n_realizations", &
|
||||
tally % n_realizations)
|
||||
call write_dataset(tally_group, "n_filters", tally % n_filters)
|
||||
|
||||
! Write filter information
|
||||
FILTER_LOOP: do j = 1, tally%n_filters
|
||||
FILTER_LOOP: do j = 1, tally % n_filters
|
||||
filter_group = create_group(tally_group, "filter " // &
|
||||
trim(to_str(j)))
|
||||
|
||||
! Write name of type
|
||||
select case (tally%filters(j)%type)
|
||||
select case (tally % filters(j) % type)
|
||||
case(FILTER_UNIVERSE)
|
||||
call write_dataset(filter_group, "type", "universe")
|
||||
case(FILTER_MATERIAL)
|
||||
|
|
@ -274,26 +274,27 @@ contains
|
|||
call write_dataset(filter_group, "type", "delayedgroup")
|
||||
end select
|
||||
|
||||
call write_dataset(filter_group, "n_bins", tally%filters(j)%n_bins)
|
||||
call write_dataset(filter_group, "n_bins", &
|
||||
tally % filters(j) % n_bins)
|
||||
if (tally % filters(j) % type == FILTER_ENERGYIN .or. &
|
||||
tally % filters(j) % type == FILTER_ENERGYOUT .or. &
|
||||
tally % filters(j) % type == FILTER_MU .or. &
|
||||
tally % filters(j) % type == FILTER_POLAR .or. &
|
||||
tally % filters(j) % type == FILTER_AZIMUTHAL) then
|
||||
call write_dataset(filter_group, "bins", &
|
||||
tally%filters(j)%real_bins)
|
||||
tally % filters(j) % real_bins)
|
||||
else
|
||||
call write_dataset(filter_group, "bins", &
|
||||
tally%filters(j)%int_bins)
|
||||
tally % filters(j) % int_bins)
|
||||
end if
|
||||
|
||||
call close_group(filter_group)
|
||||
end do FILTER_LOOP
|
||||
|
||||
! Set up nuclide bin array and then write
|
||||
allocate(str_array(tally%n_nuclide_bins))
|
||||
NUCLIDE_LOOP: do j = 1, tally%n_nuclide_bins
|
||||
if (tally%nuclide_bins(j) > 0) then
|
||||
allocate(str_array(tally % n_nuclide_bins))
|
||||
NUCLIDE_LOOP: do j = 1, tally % n_nuclide_bins
|
||||
if (tally % nuclide_bins(j) > 0) then
|
||||
! Get index in cross section listings for this nuclide
|
||||
if (run_CE) then
|
||||
i_list = nuclides(tally % nuclide_bins(j)) % listing
|
||||
|
|
@ -303,11 +304,11 @@ contains
|
|||
|
||||
! Determine position of . in alias string (e.g. "U-235.71c"). If
|
||||
! no . is found, just use the entire string.
|
||||
i_xs = index(xs_listings(i_list)%alias, '.')
|
||||
i_xs = index(xs_listings(i_list) % alias, '.')
|
||||
if (i_xs > 0) then
|
||||
str_array(j) = xs_listings(i_list)%alias(1:i_xs - 1)
|
||||
str_array(j) = xs_listings(i_list) % alias(1:i_xs - 1)
|
||||
else
|
||||
str_array(j) = xs_listings(i_list)%alias
|
||||
str_array(j) = xs_listings(i_list) % alias
|
||||
end if
|
||||
else
|
||||
str_array(j) = 'total'
|
||||
|
|
@ -316,32 +317,33 @@ contains
|
|||
call write_dataset(tally_group, "nuclides", str_array)
|
||||
deallocate(str_array)
|
||||
|
||||
call write_dataset(tally_group, "n_score_bins", tally%n_score_bins)
|
||||
allocate(str_array(size(tally%score_bins)))
|
||||
do j = 1, size(tally%score_bins)
|
||||
str_array(j) = reaction_name(tally%score_bins(j))
|
||||
call write_dataset(tally_group, "n_score_bins", tally % n_score_bins)
|
||||
allocate(str_array(size(tally % score_bins)))
|
||||
do j = 1, size(tally % score_bins)
|
||||
str_array(j) = reaction_name(tally % score_bins(j))
|
||||
end do
|
||||
call write_dataset(tally_group, "score_bins", str_array)
|
||||
call write_dataset(tally_group, "n_user_score_bins", tally%n_user_score_bins)
|
||||
call write_dataset(tally_group, "n_user_score_bins", &
|
||||
tally % n_user_score_bins)
|
||||
|
||||
deallocate(str_array)
|
||||
|
||||
! Write explicit moment order strings for each score bin
|
||||
k = 1
|
||||
allocate(str_array(tally%n_score_bins))
|
||||
MOMENT_LOOP: do j = 1, tally%n_user_score_bins
|
||||
select case(tally%score_bins(k))
|
||||
allocate(str_array(tally % n_score_bins))
|
||||
MOMENT_LOOP: do j = 1, tally % n_user_score_bins
|
||||
select case(tally % score_bins(k))
|
||||
case (SCORE_SCATTER_N, SCORE_NU_SCATTER_N)
|
||||
str_array(k) = 'P' // trim(to_str(tally%moment_order(k)))
|
||||
str_array(k) = 'P' // trim(to_str(tally % moment_order(k)))
|
||||
k = k + 1
|
||||
case (SCORE_SCATTER_PN, SCORE_NU_SCATTER_PN)
|
||||
do n_order = 0, tally%moment_order(k)
|
||||
do n_order = 0, tally % moment_order(k)
|
||||
str_array(k) = 'P' // trim(to_str(n_order))
|
||||
k = k + 1
|
||||
end do
|
||||
case (SCORE_SCATTER_YN, SCORE_NU_SCATTER_YN, SCORE_FLUX_YN, &
|
||||
SCORE_TOTAL_YN)
|
||||
do n_order = 0, tally%moment_order(k)
|
||||
do n_order = 0, tally % moment_order(k)
|
||||
do nm_order = -n_order, n_order
|
||||
str_array(k) = 'Y' // trim(to_str(n_order)) // ',' // &
|
||||
trim(to_str(nm_order))
|
||||
|
|
@ -393,8 +395,9 @@ contains
|
|||
tally => tallies(i)
|
||||
|
||||
! Write sum and sum_sq for each bin
|
||||
tally_group = open_group(tallies_group, "tally " // to_str(tally%id))
|
||||
call write_dataset(tally_group, "results", tally%results)
|
||||
tally_group = open_group(tallies_group, "tally " &
|
||||
// to_str(tally % id))
|
||||
call write_dataset(tally_group, "results", tally % results)
|
||||
call close_group(tally_group)
|
||||
end do TALLY_RESULTS
|
||||
|
||||
|
|
@ -404,13 +407,45 @@ contains
|
|||
end if
|
||||
|
||||
call close_group(tallies_group)
|
||||
|
||||
! Write out the runtime metrics.
|
||||
runtime_group = create_group(file_id, "runtime")
|
||||
call write_dataset(runtime_group, "total initialization", &
|
||||
time_initialize % get_value())
|
||||
call write_dataset(runtime_group, "reading cross sections", &
|
||||
time_read_xs % get_value())
|
||||
call write_dataset(runtime_group, "simulation", &
|
||||
time_inactive % get_value() + time_active % get_value())
|
||||
call write_dataset(runtime_group, "transport", &
|
||||
time_transport % get_value())
|
||||
if (run_mode == MODE_EIGENVALUE) then
|
||||
call write_dataset(runtime_group, "inactive batches", &
|
||||
time_inactive % get_value())
|
||||
end if
|
||||
call write_dataset(runtime_group, "active batches", &
|
||||
time_active % get_value())
|
||||
if (run_mode == MODE_EIGENVALUE) then
|
||||
call write_dataset(runtime_group, "synchronizing fission bank", &
|
||||
time_bank % get_value())
|
||||
call write_dataset(runtime_group, "sampling source sites", &
|
||||
time_bank_sample % get_value())
|
||||
call write_dataset(runtime_group, "SEND-RECV source sites", &
|
||||
time_bank_sendrecv % get_value())
|
||||
end if
|
||||
call write_dataset(runtime_group, "accumulating tallies", &
|
||||
time_tallies % get_value())
|
||||
if (cmfd_run) then
|
||||
call write_dataset(runtime_group, "CMFD", time_cmfd % get_value())
|
||||
call write_dataset(runtime_group, "CMFD building matrices", &
|
||||
time_cmfdbuild % get_value())
|
||||
call write_dataset(runtime_group, "CMFD solving matrices", &
|
||||
time_cmfdsolve % get_value())
|
||||
end if
|
||||
call write_dataset(runtime_group, "total", time_total % get_value())
|
||||
call close_group(runtime_group)
|
||||
|
||||
call file_close(file_id)
|
||||
end if
|
||||
|
||||
if (master .and. n_tallies > 0) then
|
||||
deallocate(id_array)
|
||||
end if
|
||||
|
||||
end subroutine write_state_point
|
||||
|
||||
!===============================================================================
|
||||
|
|
|
|||
103
src/summary.F90
103
src/summary.F90
|
|
@ -3,7 +3,7 @@ module summary
|
|||
use constants
|
||||
use endf, only: reaction_name
|
||||
use geometry_header, only: Cell, Universe, Lattice, RectLattice, &
|
||||
&HexLattice
|
||||
&HexLattice, BASE_UNIVERSE
|
||||
use global
|
||||
use hdf5_interface
|
||||
use material_header, only: Material
|
||||
|
|
@ -13,6 +13,7 @@ module summary
|
|||
use surface_header
|
||||
use string, only: to_str
|
||||
use tally_header, only: TallyObject
|
||||
use output, only: find_offset
|
||||
|
||||
use hdf5
|
||||
|
||||
|
|
@ -533,6 +534,10 @@ contains
|
|||
type(RegularMesh), pointer :: m
|
||||
type(TallyObject), pointer :: t
|
||||
|
||||
integer :: offset ! distibcell offset
|
||||
character(MAX_LINE_LEN), allocatable :: paths(:) ! distribcell paths array
|
||||
character(MAX_LINE_LEN) :: path ! distribcell path
|
||||
|
||||
tallies_group = create_group(file_id, "tallies")
|
||||
|
||||
! Write total number of meshes
|
||||
|
|
@ -575,21 +580,40 @@ contains
|
|||
! Write number of filters
|
||||
call write_dataset(tally_group, "n_filters", t%n_filters)
|
||||
|
||||
FILTER_LOOP: do j = 1, t%n_filters
|
||||
FILTER_LOOP: do j = 1, t % n_filters
|
||||
filter_group = create_group(tally_group, "filter " // trim(to_str(j)))
|
||||
|
||||
! Write number of bins for this filter
|
||||
call write_dataset(filter_group, "n_bins", t%filters(j)%n_bins)
|
||||
call write_dataset(filter_group, "n_bins", t % filters(j) % n_bins)
|
||||
|
||||
! Write filter bins
|
||||
if (t%filters(j)%type == FILTER_ENERGYIN .or. &
|
||||
t%filters(j)%type == FILTER_ENERGYOUT .or. &
|
||||
t%filters(j)%type == FILTER_MU .or. &
|
||||
t%filters(j)%type == FILTER_POLAR .or. &
|
||||
t%filters(j)%type == FILTER_AZIMUTHAL) then
|
||||
call write_dataset(filter_group, "bins", t%filters(j)%real_bins)
|
||||
if (t % filters(j) % type == FILTER_ENERGYIN .or. &
|
||||
t % filters(j)% type == FILTER_ENERGYOUT .or. &
|
||||
t % filters(j) % type == FILTER_MU .or. &
|
||||
t % filters(j) % type == FILTER_POLAR .or. &
|
||||
t % filters(j) % type == FILTER_AZIMUTHAL) then
|
||||
call write_dataset(filter_group, "bins", t % filters(j) % real_bins)
|
||||
else
|
||||
call write_dataset(filter_group, "bins", t%filters(j)%int_bins)
|
||||
call write_dataset(filter_group, "bins", t % filters(j) % int_bins)
|
||||
end if
|
||||
|
||||
! Write paths to reach each distribcell instance
|
||||
if (t % filters(j) % type == FILTER_DISTRIBCELL) then
|
||||
! Allocate array of strings for each distribcell path
|
||||
allocate(paths(t % filters(j) % n_bins))
|
||||
|
||||
! Store path for each distribcell instance
|
||||
do k = 1, t % filters(j) % n_bins
|
||||
path = ''
|
||||
offset = 1
|
||||
call find_offset(t % filters(j) % int_bins(1), &
|
||||
universes(BASE_UNIVERSE), k, offset, path)
|
||||
paths(k) = path
|
||||
end do
|
||||
|
||||
! Write array of distribcell paths to summary file
|
||||
call write_dataset(filter_group, "paths", paths)
|
||||
deallocate(paths)
|
||||
end if
|
||||
|
||||
! Write name of type
|
||||
|
|
@ -697,63 +721,4 @@ contains
|
|||
|
||||
end subroutine write_tallies
|
||||
|
||||
!===============================================================================
|
||||
! WRITE_TIMING
|
||||
!===============================================================================
|
||||
|
||||
subroutine write_timing(file_id)
|
||||
integer(HID_T), intent(in) :: file_id
|
||||
|
||||
integer(8) :: total_particles
|
||||
integer(HID_T) :: time_group
|
||||
real(8) :: speed
|
||||
|
||||
time_group = create_group(file_id, "timing")
|
||||
|
||||
! Write timing data
|
||||
call write_dataset(time_group, "time_initialize", time_initialize%elapsed)
|
||||
call write_dataset(time_group, "time_read_xs", time_read_xs%elapsed)
|
||||
call write_dataset(time_group, "time_transport", time_transport%elapsed)
|
||||
call write_dataset(time_group, "time_bank", time_bank%elapsed)
|
||||
call write_dataset(time_group, "time_bank_sample", time_bank_sample%elapsed)
|
||||
call write_dataset(time_group, "time_bank_sendrecv", time_bank_sendrecv%elapsed)
|
||||
call write_dataset(time_group, "time_tallies", time_tallies%elapsed)
|
||||
call write_dataset(time_group, "time_inactive", time_inactive%elapsed)
|
||||
call write_dataset(time_group, "time_active", time_active%elapsed)
|
||||
call write_dataset(time_group, "time_finalize", time_finalize%elapsed)
|
||||
call write_dataset(time_group, "time_total", time_total%elapsed)
|
||||
|
||||
! Add descriptions to timing data
|
||||
call write_attribute_string(time_group, "time_initialize", "description", &
|
||||
"Total time elapsed for initialization (s)")
|
||||
call write_attribute_string(time_group, "time_read_xs", "description", &
|
||||
"Time reading cross-section libraries (s)")
|
||||
call write_attribute_string(time_group, "time_transport", "description", &
|
||||
"Time in transport only (s)")
|
||||
call write_attribute_string(time_group, "time_bank", "description", &
|
||||
"Total time synchronizing fission bank (s)")
|
||||
call write_attribute_string(time_group, "time_bank_sample", "description", &
|
||||
"Time between generations sampling source sites (s)")
|
||||
call write_attribute_string(time_group, "time_bank_sendrecv", "description", &
|
||||
"Time between generations SEND/RECVing source sites (s)")
|
||||
call write_attribute_string(time_group, "time_tallies", "description", &
|
||||
"Time between batches accumulating tallies (s)")
|
||||
call write_attribute_string(time_group, "time_inactive", "description", &
|
||||
"Total time in inactive batches (s)")
|
||||
call write_attribute_string(time_group, "time_active", "description", &
|
||||
"Total time in active batches (s)")
|
||||
call write_attribute_string(time_group, "time_finalize", "description", &
|
||||
"Total time for finalization (s)")
|
||||
call write_attribute_string(time_group, "time_total", "description", &
|
||||
"Total time elapsed (s)")
|
||||
|
||||
! Write calculation rate
|
||||
total_particles = n_particles * n_batches * gen_per_batch
|
||||
speed = real(total_particles) / (time_inactive%elapsed + &
|
||||
time_active%elapsed)
|
||||
call write_dataset(time_group, "neutrons_per_second", speed)
|
||||
|
||||
call close_group(time_group)
|
||||
end subroutine write_timing
|
||||
|
||||
end module summary
|
||||
|
|
|
|||
|
|
@ -363,10 +363,14 @@ sourcepoint_batch|statepoint_interval|survival_biasing|\
|
|||
tally_assumesep|translation|uniform_fs|universe|void"
|
||||
|
||||
# Delete items of dictionary if valgrind or coverage and not in script mode
|
||||
to_delete = []
|
||||
if not script_mode:
|
||||
for key in tests:
|
||||
if re.search('valgrind|coverage', key):
|
||||
del tests[key]
|
||||
to_delete.append(key)
|
||||
|
||||
for key in to_delete:
|
||||
del tests[key]
|
||||
|
||||
# Check if tests empty
|
||||
if len(list(tests.keys())) == 0:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue