Skip to content

Commit ea89de0

Browse files
Merge remote-tracking branch 'upstream/develop' into skbuild-minimal
2 parents 735072a + 3f3649d commit ea89de0

40 files changed

+413
-168
lines changed

CONTRIBUTING.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ [email protected].
1313
## Resources
1414

1515
- [GitHub Repository](https://github.com/openmc-dev/openmc)
16-
- [Documentation](http://docs.openmc.org/en/latest)
16+
- [Documentation](https://docs.openmc.org/en/latest)
1717
- [Discussion Forum](https://openmc.discourse.group)
1818
- [Slack Community](https://openmc.slack.com/signup) (If you don't see your
1919
domain listed, contact [email protected])

cmake/Modules/GetVersionFromGit.cmake

+8-2
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,17 @@ if(EXISTS "${CMAKE_SOURCE_DIR}/.git" AND GIT_FOUND)
3737
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
3838
OUTPUT_VARIABLE VERSION_STRING
3939
OUTPUT_STRIP_TRAILING_WHITESPACE
40+
ERROR_QUIET
4041
)
4142

42-
# If no tags are found, instruct user to fetch them
43+
# If no tags are found, set version to 0 and show a warning
4344
if(VERSION_STRING STREQUAL "")
44-
message(FATAL_ERROR "No git tags found. Run 'git fetch --tags' and try again.")
45+
set(VERSION_STRING "0.0.0")
46+
message(WARNING
47+
"No git tags found. Version set to 0.0.0.\n"
48+
"Run 'git fetch --tags' to ensure proper versioning.\n"
49+
"For more information, see OpenMC developer documentation."
50+
)
4551
endif()
4652

4753
# Extract the commit hash

docs/source/devguide/docker.rst

+4-5
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,11 @@ Now you can run the following to create a `Docker container`_ called
4545
This command will open an interactive shell running from within the
4646
Docker container where you have access to use OpenMC.
4747

48-
.. note:: The ``docker run`` command supports many
49-
`options <https://docs.docker.com/engine/reference/commandline/run/>`_
48+
.. note:: The ``docker run`` command supports many options_
5049
for spawning containers -- including `mounting volumes`_ from the
5150
host filesystem -- which many users will find useful.
5251

53-
.. _Docker image: https://docs.docker.com/engine/reference/commandline/images/
52+
.. _Docker image: https://docs.docker.com/get-started/docker-concepts/the-basics/what-is-an-image/
5453
.. _Docker container: https://www.docker.com/resources/what-container
55-
.. _options: https://docs.docker.com/engine/reference/commandline/run/
56-
.. _mounting volumes: https://docs.docker.com/storage/volumes/
54+
.. _options: https://docs.docker.com/reference/cli/docker/container/run/
55+
.. _mounting volumes: https://docs.docker.com/engine/storage/volumes/

docs/source/devguide/styleguide.rst

+5-4
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ is more difficult to comment out a large section of code that uses C-style
4747
comments.)
4848

4949
Do not use C-style casting. Always use the C++-style casts ``static_cast``,
50-
``const_cast``, or ``reinterpret_cast``. (See `ES.49 <http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#es49-if-you-must-use-a-cast-use-a-named-cast>`_)
50+
``const_cast``, or ``reinterpret_cast``. (See `ES.49
51+
<https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#es49-if-you-must-use-a-cast-use-a-named-cast>`_)
5152

5253
Source Files
5354
------------
@@ -156,11 +157,11 @@ Prefer pathlib_ when working with filesystem paths over functions in the os_
156157
module or other standard-library modules. Functions that accept arguments that
157158
represent a filesystem path should work with both strings and Path_ objects.
158159

159-
.. _C++ Core Guidelines: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
160-
.. _PEP8: https://www.python.org/dev/peps/pep-0008/
160+
.. _C++ Core Guidelines: https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
161+
.. _PEP8: https://peps.python.org/pep-0008/
161162
.. _numpydoc: https://numpydoc.readthedocs.io/en/latest/format.html
162163
.. _numpy: https://numpy.org/
163-
.. _scipy: https://www.scipy.org/
164+
.. _scipy: https://scipy.org/
164165
.. _matplotlib: https://matplotlib.org/
165166
.. _pandas: https://pandas.pydata.org/
166167
.. _h5py: https://www.h5py.org/

docs/source/devguide/user-input.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,6 @@ developer or send a message to the `developers mailing list`_.
5555

5656

5757
.. _property attribute: https://docs.python.org/3.6/library/functions.html#property
58-
.. _XML Schema Part 2: http://www.w3.org/TR/xmlschema-2/
59-
.. _boolean: http://www.w3.org/TR/xmlschema-2/#boolean
58+
.. _XML Schema Part 2: https://www.w3.org/TR/xmlschema-2/
59+
.. _boolean: https://www.w3.org/TR/xmlschema-2/#boolean
6060
.. _developers mailing list: https://groups.google.com/forum/?fromgroups=#!forum/openmc-dev

docs/source/devguide/workflow.rst

+25-1
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,30 @@ features and bug fixes. The general steps for contributing are as follows:
9191
6. After the pull request has been thoroughly vetted, it is merged back into the
9292
*develop* branch of openmc-dev/openmc.
9393

94+
Setting Up Upstream Tracking (Required for Versioning)
95+
------------------------------------------------------
96+
97+
By default, your fork **does not** include tags from the upstream OpenMC repository.
98+
OpenMC relies on `git describe --tags` for versioning in source builds, and missing tags can lead
99+
to incorrect version detection (i.e., ``0.0.0``). To ensure proper versioning, follow these steps:
100+
101+
1. **Add the Upstream Repository**
102+
This allows you to fetch updates from the main OpenMC repository.
103+
104+
.. code-block:: sh
105+
106+
git remote add upstream https://github.com/openmc-dev/openmc.git
107+
108+
2. **Fetch and Push Tags**
109+
Retrieve tags from the upstream repository and update your fork:
110+
111+
.. code-block:: sh
112+
113+
git fetch --tags upstream
114+
git push --tags origin
115+
116+
This ensures that both your **local** and **remote** fork have the correct versioning information.
117+
94118
Private Development
95119
-------------------
96120

@@ -128,7 +152,7 @@ flexibility for iterative development or testing changes to the codebase.
128152
.. _git: https://git-scm.com/
129153
.. _GitHub: https://github.com/
130154
.. _git flow: https://nvie.com/git-model
131-
.. _valgrind: https://www.valgrind.org/
155+
.. _valgrind: https://valgrind.org/
132156
.. _style guide: https://docs.openmc.org/en/latest/devguide/styleguide.html
133157
.. _pull request: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests
134158
.. _openmc-dev/openmc: https://github.com/openmc-dev/openmc

docs/source/methods/cross_sections.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -295,8 +295,8 @@ or even isotropic scattering.
295295
.. _Josey: https://doi.org/10.1016/j.jcp.2015.08.013
296296
.. _WMP Library: https://github.com/mit-crpg/WMP_Library
297297
.. _MCNP: https://mcnp.lanl.gov
298-
.. _Serpent: https://serpent.vtt.fi/serpent/
299-
.. _NJOY: https://www.njoy21.io/NJOY21/
298+
.. _Serpent: https://serpent.vtt.fi
299+
.. _NJOY: https://www.njoy21.io/
300300
.. _ENDF/B data: https://www.nndc.bnl.gov/endf-b8.0/
301301
.. _Leppanen: https://doi.org/10.1016/j.anucene.2009.03.019
302302
.. _algorithms: http://ab-initio.mit.edu/faddeeva/

docs/source/methods/depletion.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ The predictor method only requires one evaluation and its error converges as
114114
twice as expensive as the predictor method, but achieves an error of
115115
:math:`\mathcal{O}(h^2)`. An exhaustive description of time integration methods
116116
and their merits can be found in the `thesis of Colin Josey
117-
<http://dspace.mit.edu/handle/1721.1/7582>`_.
117+
<https://dspace.mit.edu/handle/1721.1/7582>`_.
118118

119119
OpenMC does not rely on a single time integration method but rather has several
120120
classes that implement different algorithms. For example, the

docs/source/methods/geometry.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -1066,5 +1066,5 @@ surface is known as in :ref:`reflection`.
10661066
.. _constructive solid geometry: https://en.wikipedia.org/wiki/Constructive_solid_geometry
10671067
.. _surfaces: https://en.wikipedia.org/wiki/Surface
10681068
.. _MCNP: https://mcnp.lanl.gov
1069-
.. _Serpent: https://serpent.vtt.fi/serpent/
1069+
.. _Serpent: https://serpent.vtt.fi
10701070
.. _Monte Carlo Performance benchmark: https://github.com/mit-crpg/benchmarks/tree/master/mc-performance/openmc

docs/source/methods/neutron_physics.rst

+5-7
Original file line numberDiff line numberDiff line change
@@ -1743,26 +1743,24 @@ types.
17431743

17441744
.. _Watt fission spectrum: https://doi.org/10.1103/PhysRev.87.1037
17451745

1746-
.. _Foderaro: http://hdl.handle.net/1721.1/1716
1746+
.. _Foderaro: https://dspace.mit.edu/handle/1721.1/1716
17471747

17481748
.. _OECD: https://www.oecd-nea.org/tools/abstract/detail/NEA-1792
17491749

17501750
.. _NJOY: https://www.njoy21.io/NJOY2016/
17511751

1752-
.. _PREPRO: https://www-nds.iaea.org/ndspub/endf/prepro/
1752+
.. _PREPRO: https://www-nds.iaea.org/public/endf/prepro/
17531753

17541754
.. _ENDF-6 Format: https://www.oecd-nea.org/dbdata/data/manual-endf/endf102.pdf
17551755

1756-
.. _Monte Carlo Sampler: https://permalink.lanl.gov/object/tr?what=info:lanl-repo/lareport/LA-09721-MS
1756+
.. _Monte Carlo Sampler: https://mcnp.lanl.gov/pdf_files/TechReport_1983_LANL_LA-9721-MS_EverettCashwell.pdf
17571757

1758-
.. _LA-UR-14-27694: https://permalink.lanl.gov/object/tr?what=info:lanl-repo/lareport/LA-UR-14-27694
1758+
.. _LA-UR-14-27694: https://www.osti.gov/biblio/1159204
17591759

17601760
.. _MC21: https://www.osti.gov/biblio/903083
17611761

17621762
.. _Romano: https://doi.org/10.1016/j.cpc.2014.11.001
17631763

17641764
.. _Sutton and Brown: https://www.osti.gov/biblio/307911
17651765

1766-
.. _lectures: https://laws.lanl.gov/vhosts/mcnp.lanl.gov/pdf_files/la-ur-05-4983.pdf
1767-
1768-
.. _MCNP Manual: https://laws.lanl.gov/vhosts/mcnp.lanl.gov/pdf_files/la-ur-03-1987.pdf
1766+
.. _lectures: https://mcnp.lanl.gov/pdf_files/TechReport_2005_LANL_LA-UR-05-4983_Brown.pdf

docs/source/methods/parallelization.rst

+3-3
Original file line numberDiff line numberDiff line change
@@ -609,17 +609,17 @@ is actually independent of the number of nodes:
609609
610610
.. _first paper: https://doi.org/10.2307/2280232
611611

612-
.. _work of Forrest Brown: http://hdl.handle.net/2027.42/24996
612+
.. _work of Forrest Brown: https://deepblue.lib.umich.edu/handle/2027.42/24996
613613

614614
.. _Brissenden and Garlick: https://doi.org/10.1016/0306-4549(86)90095-2
615615

616-
.. _MPICH: http://www.mpich.org
616+
.. _MPICH: https://www.mpich.org
617617

618618
.. _binomial tree: https://www.mcs.anl.gov/~thakur/papers/ijhpca-coll.pdf
619619

620620
.. _Geary: https://doi.org/10.2307/2342070
621621

622-
.. _Barnett: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.51.7772
622+
.. _Barnett: https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.51.7772
623623

624624
.. _single-instruction multiple-data: https://en.wikipedia.org/wiki/SIMD
625625

docs/source/methods/photon_physics.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -1059,7 +1059,7 @@ emitted photon.
10591059

10601060
.. _anomalous scattering: http://pd.chem.ucl.ac.uk/pdnn/diff1/anomscat.htm
10611061

1062-
.. _Kahn's rejection method: https://mcnp.lanl.gov/pdf_files/TechReport_1956_RC_AECU-3259RM-1237-AEC_Kahn.pdf
1062+
.. _Kahn's rejection method: https://doi.org/10.2172/4353680
10631063

10641064
.. _Klein-Nishina: https://en.wikipedia.org/wiki/Klein%E2%80%93Nishina_formula
10651065

docs/source/methods/tallies.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -522,4 +522,4 @@ improve the estimate of the percentile.
522522

523523
.. _unpublished rational approximation: https://stackedboxes.org/2017/05/01/acklams-normal-quantile-function/
524524

525-
.. _MC21: http://www.osti.gov/bridge/servlets/purl/903083-HT5p1o/903083.pdf
525+
.. _MC21: https://www.osti.gov/servlets/purl/903083

docs/source/publications.rst

+6-4
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ Geometry and Visualization
138138
*Trans. Am. Nucl. Soc.*, **114**, 391-394 (2016).
139139

140140
- Derek M. Lax, "`Memory efficient indexing algorithm for physical properties in
141-
OpenMC <http://hdl.handle.net/1721.1/97862>`_," S. M. Thesis, Massachusetts
142-
Institute of Technology (2015).
141+
OpenMC <https://dspace.mit.edu/handle/1721.1/97862>`_," S. M. Thesis,
142+
Massachusetts Institute of Technology (2015).
143143

144144
- Derek Lax, William Boyd, Nicholas Horelik, Benoit Forget, and Kord Smith, "A
145145
memory efficient algorithm for classifying unique regions in constructive
@@ -399,7 +399,8 @@ Doppler Broadening
399399
- Jonathan A. Walsh, Benoit Forget, Kord S. Smith, Brian C. Kiedrowski, and
400400
Forrest B. Brown, "`Direct, on-the-fly calculation of unresolved resonance
401401
region cross sections in Monte Carlo simulations
402-
<http://hdl.handle.net/1721.1/108644>`_," *Proc. Joint Int. Conf. M&C+SNA+MC*,
402+
<https://dspace.mit.edu/handle/1721.1/108644>`_," *Proc. Joint Int. Conf.
403+
M&C+SNA+MC*,
403404
Nashville, Tennessee, Apr. 19--23 (2015).
404405

405406
- Colin Josey, Benoit Forget, and Kord Smith, "`Windowed multipole sensitivity
@@ -596,7 +597,8 @@ Depletion
596597

597598
- Matthew S. Ellis, Colin Josey, Benoit Forget, and Kord Smith, "`Spatially
598599
Continuous Depletion Algorithm for Monte Carlo Simulations
599-
<http://hdl.handle.net/1721.1/107880>`_," *Trans. Am. Nucl. Soc.*, **115**,
600+
<https://dspace.mit.edu/handle/1721.1/107880>`_," *Trans. Am. Nucl. Soc.*,
601+
**115**,
600602
1221-1224 (2016).
601603

602604
- Anas Gul, K. S. Chaudri, R. Khan, and M. Azeen, "`Development and verification

docs/source/pythonapi/deplete.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ provided to obtain reaction rates from cross-section data. Several classes are
2626
provided that implement different time-integration algorithms for depletion
2727
calculations, which are described in detail in Colin Josey's thesis,
2828
`Development and analysis of high order neutron transport-depletion coupling
29-
algorithms <http://hdl.handle.net/1721.1/113721>`_.
29+
algorithms <https://dspace.mit.edu/handle/1721.1/113721>`_.
3030

3131
.. autosummary::
3232
:toctree: generated

docs/source/quickinstall.rst

+14-35
Original file line numberDiff line numberDiff line change
@@ -8,56 +8,35 @@ This quick install guide outlines the basic steps needed to install OpenMC on
88
your computer. For more detailed instructions on configuring and installing
99
OpenMC, see :ref:`usersguide_install` in the User's Manual.
1010

11-
--------------------------------------------------
12-
Installing on Linux/Mac with Mamba and conda-forge
13-
--------------------------------------------------
11+
----------------------------------
12+
Installing on Linux/Mac with Conda
13+
----------------------------------
1414

15-
`Conda <https://conda.io/en/latest/>`_ is an open source package management
15+
`Conda <https://docs.conda.io/en/latest/>`_ is an open source package management
1616
system and environments management system for installing multiple versions of
1717
software packages and their dependencies and switching easily between them.
18-
`Mamba <https://mamba.readthedocs.io/en/latest/>`_ is a cross-platform package
19-
manager and is compatible with `conda` packages.
20-
OpenMC can be installed in a `conda` environment with `mamba`.
21-
First, `conda` should be installed with one of the following installers:
22-
`Miniconda <https://docs.conda.io/en/latest/miniconda.html>`_,
23-
`Anaconda <https://www.anaconda.com/>`_, or `Miniforge <https://github.com/conda-forge/miniforge>`_.
24-
Once you have `conda` installed on your system, OpenMC can be installed via the
25-
`conda-forge` channel with `mamba`.
18+
OpenMC can be installed in a `conda` environment. First, `conda` should be
19+
`installed <https://www.anaconda.com/docs/getting-started/getting-started>`_
20+
with either Anaconda Distribution or Miniconda. Once you have `conda` installed
21+
on your system, OpenMC can be installed via the `conda-forge` channel.
2622

2723
First, add the `conda-forge` channel with:
2824

2925
.. code-block:: sh
3026
3127
conda config --add channels conda-forge
28+
conda config --set channel_priority strict
3229
33-
Then create and activate a new conda enviroment called `openmc-env` in
34-
which to install OpenMC.
30+
Then create and activate a new conda enviroment called `openmc-env` (or whatever
31+
you wish) with OpenMC installed.
3532

3633
.. code-block:: sh
3734
38-
conda create -n openmc-env
35+
conda create --name openmc-env openmc
3936
conda activate openmc-env
4037
41-
Then install `mamba`, which will be used to install OpenMC.
42-
43-
.. code-block:: sh
44-
45-
conda install mamba
46-
47-
To list the versions of OpenMC that are available on the `conda-forge` channel,
48-
in your terminal window or an Anaconda Prompt run:
49-
50-
.. code-block:: sh
51-
52-
mamba search openmc
53-
54-
OpenMC can then be installed with:
55-
56-
.. code-block:: sh
57-
58-
mamba install openmc
59-
60-
You are now in a conda environment called `openmc-env` that has OpenMC installed.
38+
You are now in a conda environment called `openmc-env` that has OpenMC
39+
installed.
6140

6241
-------------------------------------------
6342
Installing on Linux/Mac/Windows with Docker

0 commit comments

Comments
 (0)