Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
127 commits
Select commit Hold shift + click to select a range
ad12023
First commit - made a mockup of NeutronFluxProfile calculator.
OceanNuclear May 2, 2025
4f2c22b
Added the effect of neutron multiplication, which is done by increasi…
OceanNuclear May 3, 2025
ecf1f20
relocated some functions
OceanNuclear May 3, 2025
392c244
Ruff improvements.
OceanNuclear May 3, 2025
7013c2a
Decided to implement a switch case for sinh(x/sqrt(-...))=-sin(x/sqrt…
OceanNuclear May 3, 2025
9daa458
Some further progress on docstrings and equations.
OceanNuclear May 9, 2025
e55ec9e
WIP - pushing to save progress.
OceanNuclear Jun 4, 2025
929b321
Transcribed the one-group constant (manually solved and verified by D…
OceanNuclear Jul 13, 2025
9dd1f16
Modified expression into sum-of-exponentials form, rather than sum-of…
OceanNuclear Jul 13, 2025
1cdc2af
Added reaction rates calculations and neutron passage/escape flux.
OceanNuclear Jul 14, 2025
6bfde60
Added a unit test.
OceanNuclear Jul 14, 2025
cbd3cd8
Re-distributed where functions and classes live. Materials data relat…
OceanNuclear Oct 29, 2025
42dfdb2
Added publically available data (same source as openmc), so we don't …
OceanNuclear Oct 29, 2025
71d9412
Made the decorator in neutronics.py follow the open-closed principle …
OceanNuclear Oct 30, 2025
c8b08aa
made the four attributes: integration_constants, l_fw_2, l_bz_2, exte…
OceanNuclear Oct 30, 2025
5d5c531
Some quality-of-life things - _attempting_to_access attribute is made…
OceanNuclear Oct 30, 2025
9fa7710
Keeping test updated.
OceanNuclear Oct 30, 2025
4cb94d4
Corrected the ordering of the group structure to ensure that the firs…
OceanNuclear Oct 30, 2025
ff5fd4f
to cm fix.
OceanNuclear Oct 30, 2025
cbd9343
ruff fix
OceanNuclear Oct 30, 2025
46ec30a
Quality of life things: (clarify non-scattering into 'exclude elastic…
OceanNuclear Oct 30, 2025
7eb1e57
Allowed source macroscopic cross-section matrix to be larger than the…
OceanNuclear Oct 31, 2025
a5d859f
Added a property 'downscatter_only' which helps quickly determine if …
OceanNuclear Oct 31, 2025
6f44a3c
Clean up to make four separate dictionaries: micro_total_xs, micro_sc…
OceanNuclear Oct 31, 2025
706cd5d
Ruff fixes.
OceanNuclear Oct 31, 2025
9749a40
Created the scattering matrix, and tested it. Next on the to-do list:…
OceanNuclear Nov 5, 2025
8c05858
Added the n2n_matrix the feature, and added tests.
OceanNuclear Nov 6, 2025
6e7fb3f
Cleaned a bit up where the hypothetical 'integrate' function is used,…
OceanNuclear Nov 6, 2025
75ce408
Used numpy testing in appropriate places
OceanNuclear Nov 6, 2025
e08ef5b
Ruff fix: numpy.random
OceanNuclear Nov 6, 2025
d69df87
Docstring improvements
OceanNuclear Nov 6, 2025
7157584
Added plotting function.
OceanNuclear Nov 6, 2025
83cb680
further improved the plotting.
OceanNuclear Nov 6, 2025
54a1f5c
Formatting fix
OceanNuclear Nov 6, 2025
99dc5b5
extended_boundary renamed to extended_boundary_cm
OceanNuclear Nov 6, 2025
1819f3e
Added regression test, and fixed all the little details to make the r…
OceanNuclear Nov 7, 2025
7e35488
regression test fix.
OceanNuclear Nov 7, 2025
b958d5f
Regression test added - conservation in total number of neutrons (the…
OceanNuclear Nov 7, 2025
f7c9056
Added an IntegrationConstants class, which contains a validation meth…
OceanNuclear Nov 9, 2025
fba0135
Made return None more explicit in some places.
OceanNuclear Nov 9, 2025
ed2f30e
self.integration_constants conversion step 1 of 3: groupwise_neutron_…
OceanNuclear Nov 9, 2025
23a590e
Added d_fw and d_bz diffusion constants as attributes of NeutronFluxP…
OceanNuclear Nov 9, 2025
696df86
Fixed the ordering of the two arguments outputted by get_diffusion_co…
OceanNuclear Nov 9, 2025
57702f5
self.integration_constants conversion step 2 of 3: solve_group_n conv…
OceanNuclear Nov 9, 2025
9839493
self.integration_constants conversion step 3 of 3: neutron current an…
OceanNuclear Nov 9, 2025
fa6a1a8
Fixed regression test
OceanNuclear Nov 9, 2025
828b818
Wrote up the solver for higher order groups, not tested yet.
OceanNuclear Nov 9, 2025
74417a8
Handled events of same-characteristic-lengths more gracefully.
OceanNuclear Nov 11, 2025
873456e
Added validation to warn when there's elastic upscatter, or error whe…
OceanNuclear Nov 11, 2025
4c86d4a
ruff fixes.
OceanNuclear Nov 11, 2025
cb2d445
Separated the in_source matrix from the scattering matrix in Material…
OceanNuclear Nov 11, 2025
b3f1f63
Turned the base functions from exp(x),exp(-x) to cosh(x),sinh(x); suc…
OceanNuclear Nov 12, 2025
f1866d6
Conversion from exponential basis to ((cosh/sinh)/(cos/sin)) bases co…
OceanNuclear Nov 12, 2025
90b7a69
Fixed where the abs() are placed for taking the absolute value of x
OceanNuclear Nov 12, 2025
007d6ed
renamed the integration constants' working names to something a littl…
OceanNuclear Nov 12, 2025
9fd7b73
One more regression test for now.
OceanNuclear Nov 12, 2025
1b0b11b
Beginning removal of the _groupwise functions (because they don't nee…
OceanNuclear Nov 12, 2025
51192e1
Minor change to the solve_n_group method to prep it for future (itera…
OceanNuclear Nov 12, 2025
7b67281
Completed removal of the _groupwise functions.
OceanNuclear Nov 12, 2025
8ae801f
Completed one-group fission regression test.
OceanNuclear Nov 20, 2025
dc01b07
Updated the docs for MaterialMacroInfo parameters.
OceanNuclear Nov 20, 2025
d8488f5
Converted from cgs to metric
OceanNuclear Nov 20, 2025
8fc95cd
Updated regression test to use cgs.
OceanNuclear Nov 20, 2025
d4dec72
Updated unit-test for checking the number of methods present.
OceanNuclear Nov 20, 2025
5c3a1f3
Pre-commit ruff fix
OceanNuclear Nov 20, 2025
ccd728c
Renamed the integration_constants to coefficients (because they're no…
OceanNuclear Nov 21, 2025
abc0866
Removed unused constant
OceanNuclear Nov 21, 2025
a5a36fb
Majority of the conversion from 2-layer model to the infinite-layer m…
OceanNuclear Nov 21, 2025
4777dfc
Neutron flux and current are defined such that they're assumed to be …
OceanNuclear Nov 21, 2025
cce4897
Updated docstring on Coefficients (now gives the correct use case) an…
OceanNuclear Nov 21, 2025
62005ec
Fixed the various off-by-one errors deliberately introduced a couple …
OceanNuclear Nov 21, 2025
58cff31
Completed conversion from 2-layer model to infinite-layer model. Clea…
OceanNuclear Nov 21, 2025
2ccf3db
Added new class LayerSpecificGroupwiseConstants to encapsulate the be…
OceanNuclear Nov 22, 2025
479b717
Starting to fix plotting. Still need to verify that the layers' bound…
OceanNuclear Nov 22, 2025
f7c17b6
Slight name change
OceanNuclear Nov 22, 2025
1ebd8aa
Finished updating the plotting function, so at the moment it works fo…
OceanNuclear Nov 22, 2025
e8602ba
Simplified the sign extraction function
OceanNuclear Nov 23, 2025
618af8f
Implemented an attribute to record the neutron energy; and changed un…
OceanNuclear Nov 23, 2025
552b1c9
Updated documentation and test
OceanNuclear Nov 23, 2025
a5bf02e
Slight fixes to docstring, and fix to regression test dummy energies …
OceanNuclear Nov 23, 2025
b2f3f52
Docstring update for heating methods
OceanNuclear Nov 23, 2025
572a52f
Added test to ensure integration of the heating term is done correctly.
OceanNuclear Nov 23, 2025
7fe4fff
tested units output as well.
OceanNuclear Nov 23, 2025
7865eed
Fixed the plot such that all discontinuity are minimized, and those d…
OceanNuclear Nov 23, 2025
51f492c
Does not allow higher energy bins than the incident neutron energy to…
OceanNuclear Nov 24, 2025
7670c7c
Further modification to include a new attribute incident_neutron_grou…
OceanNuclear Nov 24, 2025
8647a1d
Removed conservation of neutrons condition entirely.
OceanNuclear Nov 24, 2025
8f46135
Fix the list of conditions so it's no longer singular
OceanNuclear Nov 24, 2025
8995aaf
Bug fixes prompted by ruff
OceanNuclear Nov 24, 2025
48ff518
Ruff fixes for tests too
OceanNuclear Nov 24, 2025
7da2811
Fixed plotting zorder
OceanNuclear Nov 25, 2025
4caa53b
Prepared for the case that allows for contains_upscatter=True, where …
OceanNuclear Nov 25, 2025
f82e51f
Slightly tidied up the code that calculates the non-central cosh/sinh…
OceanNuclear Nov 25, 2025
0f3e261
Added placeholder list for summing up all of the skipped coefficients.
OceanNuclear Nov 25, 2025
a1a9da1
slightly modified validate_length to allow for second+ passes to have…
OceanNuclear Dec 16, 2025
03eba38
Put the cosh-sinh/cos-sin switching logic into dedicated methods, so …
OceanNuclear Dec 16, 2025
9f521ae
Added feature to count the number of coefficient pairs.
OceanNuclear Dec 17, 2025
7a21481
THe problem of deducing the next layer's coefficient given the previo…
OceanNuclear Dec 17, 2025
3ec0254
Handling duplicate diffusion lengths is simpler than expected!
OceanNuclear Feb 1, 2026
abb0460
Changed self.flux to self.fluxes, such that the incident neutron flux…
OceanNuclear Feb 11, 2026
6b32ead
Changed the bounds of summation almost everywhere, and applied a shor…
OceanNuclear Feb 11, 2026
8f55aef
Style cleanup and docstring update.
OceanNuclear Feb 12, 2026
b2dad6d
unit tests passed, still need to fix regression tests
OceanNuclear Mar 6, 2026
3ae09a6
Fixed the regression test too.
OceanNuclear Mar 7, 2026
988e836
Removed the print statements
OceanNuclear Mar 7, 2026
a316129
Added the 'solve()' method.
OceanNuclear Mar 8, 2026
249e8e2
Most tests have passed, but can't get conservation of flux to pass on…
OceanNuclear Mar 9, 2026
4a7f221
Made the unit tests more comprehensive & passed on the Conservation o…
OceanNuclear Mar 10, 2026
f85d0cd
Fixed the conservation of neutrons as well for regression test of neu…
OceanNuclear Mar 10, 2026
aa56b56
Ignored 'layer too narrow' warnings.
OceanNuclear Mar 13, 2026
8958a84
Slightly improved the index-translation-table and cleaned up the erro…
OceanNuclear Mar 13, 2026
7b613cb
Prepping neutronics_data.py for loading actual nuclear data.
OceanNuclear Mar 16, 2026
2a33fda
Modified the neutornics_data.py so that the MaterialsMacroInfo can be…
OceanNuclear Mar 16, 2026
69a6ff2
Some ruff cleanups
OceanNuclear Mar 16, 2026
0a37b8a
undid the try:import and sorted the remainder of the required_isotope…
OceanNuclear Mar 17, 2026
3557bf2
Some ruff fixes
OceanNuclear Mar 17, 2026
184097c
Reordered methods to prepare for the addition of tritium breeding dia…
OceanNuclear Mar 17, 2026
586629e
Added tritium production rate getting methods, and added tests for th…
OceanNuclear Mar 17, 2026
c657481
Moved the l2 and diffusion_coefficients into attributes of the neutro…
OceanNuclear Mar 27, 2026
fd756db
Fixes for regression tests to reduce the number of warnings, and ruff…
OceanNuclear Mar 27, 2026
d3c7b56
More ruff fixes
OceanNuclear Mar 27, 2026
710c90b
Rebase
OceanNuclear Mar 27, 2026
2ecc741
No longer needs the .txt file
OceanNuclear Mar 27, 2026
6cd3fb9
Updated ruff fixes
OceanNuclear Mar 27, 2026
5716e1a
Ruff fix of json
OceanNuclear Mar 27, 2026
19a3409
Fixed bug introduced because of ruff fixes.
OceanNuclear Mar 31, 2026
7a2b943
ruff formatting
OceanNuclear Mar 31, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Empty file.
Loading
Loading