A small POC using ENDFtk
and jsonpatch
to show how one can make a chain of immutable blocks containing data patches with potential use in nuclear data.
Requires ENDFtk to be compiled for your python version.
Follow the setup from the njoy GitHub here.
export PYTHONPATH=/path/to/dir/containing/ENDFtk.so
And install jsonpatch library.
pip install jsonpatch
To test it out run the example using U-235 as below:
python3 chained.py 92-U-235g.jeff33
Look in the newly created blockchain.json
file, then either change the XS values for MF3, MT1 or simply run against another nuclide i.e. U-238 as below:
python3 chained.py 92-U-238g.jeff33
And see the changes in the blockchain.json file making use of jsonpatch.
A very small POC to illustrate and test out the usage of JSON patch and blockchain for nuclear data.
Since it is a POC example, the code is quickly written and the serialization methods are very primitive and expected to be slow for large chains.