Commit graph

333 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
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
d9b27cca53 Respond to @nelsonag comments on #1271 2019-07-01 07:09:10 -05:00
Paul Romano
51c8c2e0bc Refactor classes in openmc.data.ThermalScattering 2019-06-25 07:31:53 -05:00
Paul Romano
da5f7440b1 Remove get_ from get_hexagonal_prism, get_rectangular_prism 2019-06-18 06:17:54 -05:00
Paul Romano
52293dae83 Improve display of Python API in generated HTML documentation 2019-06-14 14:35:39 -05:00
Paul Romano
ea92cc1800 Fix name of capi.RegularMesh in documentation 2019-06-14 12:13:34 -05:00
Sterling Harper
9ddd8b3067 Change Python Mesh class to RegularMesh 2019-06-07 08:51:09 -04:00
Sterling Harper
7cf1822410 Add RectilinearMesh to documentation 2019-05-29 22:02:43 -04:00
Paul Romano
2943e38a81 Add Plane.from_points and cylinder_from_points convenience functions 2019-03-06 15:38:22 -06:00
Paul Romano
ed0b8808fa Merge branch 'develop' into cpp-material 2019-01-31 23:10:50 -06:00
liangjg
760baa43d6 address review comments from @paulromano 2019-01-31 12:01:55 -05:00
Paul Romano
d790cdfb46 Update list of publications, fix documentation for CMFD 2019-01-30 22:15:48 -06:00
liangjg
6f3aeed89a fix test error 2019-01-23 16:53:31 -05:00
liangjg
952bddb61e update doc of openmc.deplete and openmc.Model.deplete 2019-01-21 00:00:05 -05:00
Paul Romano
3e3c9af0d0
Merge pull request #1131 from makeclean/muir_gauss
First commit of Muir/Gaussian sampling
2019-01-08 07:17:24 -06:00
Shikhar Kumar
c14680c26d Update documentation about C API dependence of CMFD and necessary import statements 2018-12-19 02:24:42 -05:00
Andrew Davis
a13d80e2bd Missing one review comment, and followed style for generic normal distribution from uniform distribuion 2018-12-13 15:37:47 +00:00
Shikhar Kumar
2874b4a2f9 Address @paulromano and @smharper comments 2018-12-11 18:00:06 -05:00
Shikhar Kumar
ee9a6ab065 So begins the CMFD Fortran purge :D (~3.6K lines) 2018-11-24 00:13:37 -05:00
amandalund
bbaad4ed93 Updated TRISO example notebook 2018-11-14 16:04:30 -06:00
Paul Romano
82f61a2a33 Get GROUP_STRUCTURES to show up in documentation 2018-11-07 07:36:08 -06:00
Will Boyd
a46aab8365 Made energy group structures a dict attached to the openmc.mgxs namespace; fixed typos for CASMO 70-group structure 2018-11-06 22:48:48 -05:00
Paul Romano
6847340f3b Remove references to compact fission energy release library (removed in #1032) 2018-09-26 10:22:57 -05:00
Zhuoran Han
dcf6cfe0a1 Change docs 2018-08-21 10:21:01 -05:00
Zhuoran Han
23f71ccfad Add Poly in docs 2018-08-17 16:40:17 -05:00
Zhuoran Han
960211de0c Add ZernikeRadialFilter in Sphinx 2018-08-09 11:05:16 -05:00
Paul Romano
9fa0ca2b06
Merge pull request #1023 from amandalund/photon-new
Photon Transport
2018-08-05 16:04:36 -05:00
Isaac Meyer
07e481b9a4 Fixed docs by adding module to imports within [data] 2018-07-18 12:53:52 -05:00
Isaac Meyer
1963fbe60b More docs work 2018-07-17 14:59:07 -05:00
Isaac Meyer
f69ab27b3d Added to sphinx autodocs 2018-07-17 14:02:37 -05:00
amandalund
7dcd6239eb Updated some documentation. 2018-07-05 15:32:33 -05:00
amandalund
c912cdce70 Merge branch 'develop' into photon-new 2018-06-28 16:19:54 -05:00
Paul Romano
8a6c6d1398 Add C API bindings to create/modify meshes (and filters) 2018-04-11 13:23:54 -05:00
Paul Romano
772c27ecb1 Combine expansion filters into single Python module 2018-03-29 10:20:48 -05:00
Paul Romano
272d0a4b2b Implement Legendre expansion filter for change in scattering angle 2018-03-28 09:26:49 -05:00
Paul Romano
d393a74906 Implement get_bin and get_bin_index for MeshSurfaceFilter 2018-03-19 17:50:33 -05:00
Paul Romano
460452d4f7 Merge branch 'develop' into photon-alund 2018-03-11 13:10:00 -05:00
Paul Romano
7ee08d5280 Add gnd_name function 2018-03-01 23:08:43 -06:00
Paul Romano
5993a59196 Address first round of comments on #976 2018-02-27 07:22:27 -06:00
Paul Romano
7622a1a394 Add methods on Material to get mass (if volume specified) 2018-02-22 16:00:32 -06:00
Paul Romano
92697ec06e Introduce ResultsList class to replace scattered functions 2018-02-21 15:36:27 -06:00
Paul Romano
6fac1367ec Improve depletion reference documentation 2018-02-20 14:43:26 -06:00
Paul Romano
a9df0465f0 Start cleaning up documentation 2018-02-19 22:51:53 -06:00
Paul Romano
a460782691 Get rid of extra Settings class 2018-02-19 17:52:17 -06:00
Paul Romano
1ee27edc8c Rename DepletionChain -> Chain 2018-02-14 10:45:39 -06:00