Commit graph

2091 commits

Author SHA1 Message Date
Andrew Johnson
d28546bcd6
Add SI_Integrator, SI_CELI_Integrator classes; remove si_celi
The si_celi depletion function has been removed. The
SI-CELI method can be implemented with
    >>> from openmc.deplete import SI_CELI_Integrator
    >>> SI_CELI_Integrator(op, dt, power, stages).integrate()

The stages parameter is optional, and defaults to 10 to
be consistent with the previous default for si_celi.

The SI_CELI_Integrator inherits from the new abstract base class
SI_Integrator. There are a few differences in how the SI-based
methods perform the integration.

- The initial, t=0.0, i=0, no restart transport solution is scaled
  by the number of stages.
- The SI methods also do not perform a new transport solution at
  each successive iteration [t>0, i>0]. Instead, the reaction
  rates are pulled from the last stage of the previous step.
- There is no final transport solution once all the depletion
  steps have been taken. The final reaction rates are saved as
  those from the last stage of the last depletion step.

The si_celi function has been removed from documentation and testing,
and replaced with the SI_CELI_Integrator.
2019-07-26 16:58:51 -05:00
Andrew Johnson
39b4d8a1fe
Remove epc_rk4 for EPC_RK4_Integrator class
The function openmc.deplete.epc_rk4 has been removed
in favor of openmc.deplete.EPC_RK4_Integrator. The scheme
can be used with::

    >>> from openmc.deplete import EPC_RK4_Integrator
    >>> EPC_RK4_Integrator(op, dt, power).integrate()

epc_rk4 has been removed from the documentation, and the
EPC_RK4_Integrator class has been added to the depletion
API documentation
2019-07-26 09:49:58 -05:00
Andrew Johnson
918340a3af
Allow user control over Operator.dilute_initial
Users can now pass dilute_initial as an input
argument into the Operator, and directly set
Operator.dilute_initial. Documentation was updated to
include units on the initial default concentration, which
is 1000 atoms per cubic centimeter. The user is allowed
to set this value to zero.

Notes have been added to ResultsList.get_atoms
and get_reaction_rate methods, indicating why there may
be non-zero values when pulling data for isotopes not
initially present.
A similar note was added to the depletion_results.h5
io format file.

Closes #1288
2019-07-25 08:43:09 -05:00
Paul Romano
b4b063482e
Merge pull request #1278 from drewejohnson/feat-dep-tally-op
Tally and Q value helper for depletion Operators
2019-07-24 10:54:33 -05:00
Andrew Johnson
9f41dce1d2
Return energy in J/s/source neutron for EnergyHelper
Addressing comments in review for #1278

- Documentation cleanup
- Better naming convention regarding ReactionRateHelper
  results cache
- The power in Operator tally unpacking and normalizing is
  no longer converted to eV/s, since the EnergyHelper.energy
  property is now returned in J/s/source neutron
2019-07-23 08:32:31 -05:00
Paul Romano
09be1f9293 Update devguide test suite section 2019-07-19 07:40:48 -05:00
Andrew Johnson
dae48b77e0
Remove cf4 function for deplete.CF4Integrator
The function openmc.deplete.cf4 has been removed in favor
of openmc.deplete.CF4Integrator. The CF4 integration scheme
can be peformed with

>>> from openmc.deplete import CF4Integrator
>>> CF4Integrator(operator, time, power).integrate()
2019-07-17 17:18:56 -05:00
Andrew Johnson
769f903dbc
Remove celi, leqi functions for CELIIntegrator, LEQIIntegrator
The depletion functions openmc.deplete.celi and
openmc.deplete.leqi hvae been removed in favor of a class-based
approach. The following syntax will replicate the behavior
of the integration schemes:

>>> from openmc.deplete import CELIIntegrator
>>> celi = CELIIntegrator(operator, time, power)
>>> celi.integrate()

The expression can be reduced to a single line:

>>> LEQIIntegrator(operator, time, power).integrate()
2019-07-17 16:46:30 -05:00
Andrew Johnson
f0bb600271
Remove predictor function for deplete.PredictorIntegrator
The depletion function openmc.deplete.predictor has been removed
in favor of a class-based approach. The following syntax will
replicate the behavior of the predictor integration scheme:

>>> from openmc.deplete import PredictorIntegrator
>>> predictor = PredictorIntegrator(operator, time, power)
>>> predictor.integrate()`

The expression can be reduced to a single line:

>>> PredictorIntegrator(operator, time, power).integrate()
2019-07-17 13:39:05 -05:00
Andrew Johnson
f432be0c05
Remove cecm function for deplete.CECMIntegrator
The cecm function has been removed from the python api.
In order to use the cecm integration scheme,
the following class based approach is now expected:

>>> from openmc.deplete import CECMIntegrator
>>> cecm = CECMIntegrator(operator, timesteps, power)
>>> cecm.integrate()

if the integrator is not needed, this above expression can be
one-lined with

>>> CECMIntegrator(operator, timesteps, power).integrate()

Unit tests have been updated to no longer use the cecm function,
and cecm has been removed from documentation.
The CECMIntegrator has been added to documentation.
2019-07-16 11:07:49 -05:00
Paul Romano
1f0fde281c
Merge pull request #1281 from drewejohnson/fix-material-get-temp
Read in material temperatures from xml subelement
2019-07-15 08:10:10 -05:00
Paul Romano
a55ff7539a
Merge pull request #1276 from drewejohnson/feat-pin
Add openmc.model.pin convenience function
2019-07-15 07:21:35 -05:00
Andrew Johnson
60d92f89d2
Add temperatures to statepoints, Material.from_hdf5
Also include material attributes to summary format documentation
2019-07-12 14:23:55 -05:00
Paul Romano
daf90d9db7 Fix documentation of source_bank 2019-07-11 06:31:12 -05:00
Andrew Johnson
87fea93714
Add opemc.model.pin to python api documentation 2019-07-09 20:25:34 -05:00
Andrew Johnson
05ce0e9f51
Add depletion_chain element to cross_sections format 2019-07-09 08:45:01 -05:00
Andrew Johnson
8b96356304
Update materials.xml format doc: temperature as attribute 2019-07-09 08:35:00 -05:00
Andrew Johnson
9cbbc6e6b9
Document abstract and concrete operator helpers 2019-07-05 13:37:12 -05:00
Andrew Johnson
6732f5908d
Add depletion time to io formats 2019-07-05 08:02:32 -05:00
Andrew Johnson
15d9e050ca
Update depletion_results documented format with k uncertainties 2019-07-03 16:29:45 -05:00
Paul Romano
d9b27cca53 Respond to @nelsonag comments on #1271 2019-07-01 07:09:10 -05:00
Paul Romano
c2e612a503 Update HDF5 data version to 3.0 2019-06-25 07:31:53 -05:00
Paul Romano
3cf937eaaa Update I/O format for thermal neutron scattering 2019-06-25 07:31:53 -05:00
Paul Romano
51c8c2e0bc Refactor classes in openmc.data.ThermalScattering 2019-06-25 07:31:53 -05:00
Patrick Shriwise
dccc9105cc
Merge pull request #1232 from paulromano/rotate-lattice
Allow cells filled with lattices to be translated/rotated
2019-06-24 15:47:47 -05:00
Patrick Shriwise
d64ed285b1 Adding notebook to documentation, going back to use of iPython.display.Image so images are embedded. 2019-06-18 08:57:35 -05:00
Paul Romano
da5f7440b1 Remove get_ from get_hexagonal_prism, get_rectangular_prism 2019-06-18 06:17:54 -05:00
Paul Romano
c0f90effcd Merge branch 'develop' into rotate-lattice 2019-06-18 06:17:33 -05:00
Sterling Harper
2c0b16e73d
Merge pull request #1216 from dryuri92/newhex
Support different orientations for hexagonal lattices
2019-06-17 15:21:49 -04:00
Paul Romano
df2b03c704 Update 0.11.0 release notes 2019-06-14 22:45:18 -05:00
Paul Romano
5f001ee6b5 Add a short user's guide section on depletion 2019-06-14 22:22:38 -05:00
Paul Romano
52293dae83 Improve display of Python API in generated HTML documentation 2019-06-14 14:35:39 -05:00
Paul Romano
f21de21ccc Start writing release notes for the next release 2019-06-14 14:33:19 -05:00
Paul Romano
68faf095fb Use sphinxcontrib-katex for faster math rendering 2019-06-14 12:13:37 -05:00
Paul Romano
93e043e630 Add old release notes and current in new directory in docs/ 2019-06-14 12:13:37 -05:00
Paul Romano
ea92cc1800 Fix name of capi.RegularMesh in documentation 2019-06-14 12:13:34 -05:00
Paul Romano
dc4d98a1cb Update version to 0.11.0-dev 2019-06-14 09:51:15 -05:00
Paul Romano
c0512b3213
Merge pull request #1246 from smharper/rect_mesh
Add rectilinear tally meshes
2019-06-12 22:40:46 -05:00
Paul Romano
e7f3e34088 Fix from_hdf5 for hex lattice with x orientation. Assorted other fixes. 2019-06-10 13:13:52 -05:00
aprilnovak
be7022aff7 Added method to get total material density. Refs #1253 2019-06-09 21:44:18 -07:00
Sterling Harper
6a22a246d8 Merge remote-tracking branch 'upstream/develop' into rect_mesh 2019-06-07 09:29:13 -04:00
Sterling Harper
9ddd8b3067 Change Python Mesh class to RegularMesh 2019-06-07 08:51:09 -04:00
Paul Romano
3794c3eec4 Update documentation for hex lattice 2019-06-04 15:59:54 -05:00
Sterling Harper
7cf1822410 Add RectilinearMesh to documentation 2019-05-29 22:02:43 -04:00
Paul Romano
d1e051c857 Update test results for Ubuntu 16.04 2019-05-29 08:53:52 -05:00
Paul Romano
1bdb92ff10 Add hexagonal lattice example notebook 2019-05-15 13:06:29 -05:00
aprilnovak
18b225f14d Add openmc_cell_get_temperature method. Refs #1223 2019-05-07 16:05:21 -07:00
Paul Romano
7b6ec80acf
Merge pull request #1203 from liangjg/heat-photon
Photon heating tally
2019-04-23 07:40:44 -05:00
Paul Romano
b4a6d796d5 Add two papers to publication list 2019-04-16 07:25:29 -05:00
liangjg
39a38f9dca update document for photon heating 2019-04-11 14:14:05 -04:00