Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
3e51845
Starting work on MF26
whaeck Jul 8, 2021
f05f684
Adding missing sections and files to ENDFtk.hpp
whaeck Jul 8, 2021
eb04e2d
Bound MF26 Multiplicity in darkness
whaeck Jul 9, 2021
9733a72
Added MF26 LAW=8
whaeck Jul 9, 2021
07e05f9
Added python bindings for MF26 LAW=8
whaeck Jul 9, 2021
b57c496
Added the MF26 ReactionProduct
whaeck Jul 9, 2021
5069811
Reverted range types to auto
whaeck Jul 9, 2021
3991a12
Reverted more range types to auto
whaeck Jul 9, 2021
9371760
Updating ...
whaeck Jul 14, 2021
a8125ed
Adding LAW=1 to MF26
whaeck Jul 14, 2021
afdf3b8
Testing LAW=1
whaeck Jul 14, 2021
8de0006
Saving work
whaeck Jul 15, 2021
0e24150
Updating ...
whaeck Jul 15, 2021
0529535
Forgot to add MF26 to the variants
whaeck Jul 15, 2021
7cbb388
Updating ...
whaeck Jul 16, 2021
19e0e7c
small updates
whaeck Jul 17, 2021
34c55cf
inlining function
whaeck Jul 17, 2021
7e24421
Updating ...
whaeck Aug 6, 2021
c566cbb
Updating ...
whaeck Aug 9, 2021
a6bb4df
Allowing MF26 sections and files
whaeck Aug 9, 2021
7b960d6
Finished LAW=2 in MF26
whaeck Aug 15, 2021
03ae094
Adding python bindings for the MF26 components - ongoing
whaeck Aug 15, 2021
ae224f7
Updating bindings
whaeck Aug 15, 2021
fa8d83a
More MF26 tests
whaeck Aug 15, 2021
3fb6ad6
Wrapped MF26 reaction products
whaeck Aug 17, 2021
bcaf61d
Bound MF26 in darkness
whaeck Aug 18, 2021
51b0de8
Added some python arguments to the tree Tape
whaeck Sep 1, 2021
e23af3d
Updating CI ...
whaeck Feb 7, 2023
e619f5b
Updating dependencies
whaeck Feb 8, 2023
d64d591
Updating ..
whaeck Feb 16, 2023
e867356
Merge branch 'update/cmake' into feature/mf26
whaeck Feb 16, 2023
5b8ffb7
Added python unit tests for MF26
whaeck Feb 16, 2023
da03595
Corrected test file names
whaeck Feb 16, 2023
ebb3be5
Updating ...
whaeck Feb 16, 2023
4e5a80c
Updating ...
whaeck Feb 17, 2023
87b07c9
Fixing test for MF6 (for some reason it was edited for MF26)
whaeck Mar 14, 2023
2bb605e
Making more changes following review
whaeck Mar 14, 2023
5a425c3
Just a typo
whaeck Mar 14, 2023
caa728e
More changes
whaeck Mar 14, 2023
1197248
Pretty documentation
whaeck Mar 14, 2023
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
9 changes: 9 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,14 @@ if( ENDFtk.python )
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/2/151/UnresolvedEnergyIndependent.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/2/152.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/23.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/Multiplicity.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/EnergyTransfer.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/LAW1/LegendreCoefficients.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/LAW2/TabulatedDistribution.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/ContinuumEnergyAngle.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/DiscreteTwoBodyScattering.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/26/ReactionProduct.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/27.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/28/SubshellData.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/section/28.python.cpp
Expand Down Expand Up @@ -247,6 +255,7 @@ if( ENDFtk.python )
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/14.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/15.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/23.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/26.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/27.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/28.python.cpp
${CMAKE_CURRENT_SOURCE_DIR}/python/src/file/33.python.cpp
Expand Down
8 changes: 8 additions & 0 deletions cmake/unit_testing.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,14 @@ add_subdirectory( src/ENDFtk/section/2/151/UnresolvedEnergyIndependent/test )
add_subdirectory( src/ENDFtk/section/2/151/test )
add_subdirectory( src/ENDFtk/section/2/152/test )
add_subdirectory( src/ENDFtk/section/23/test )
add_subdirectory( src/ENDFtk/section/26/ContinuumEnergyAngle/LegendreCoefficients/test )
add_subdirectory( src/ENDFtk/section/26/ContinuumEnergyAngle/test )
add_subdirectory( src/ENDFtk/section/26/DiscreteTwoBodyScattering/TabulatedDistribution/test )
add_subdirectory( src/ENDFtk/section/26/DiscreteTwoBodyScattering/test )
add_subdirectory( src/ENDFtk/section/26/Multiplicity/test )
add_subdirectory( src/ENDFtk/section/26/EnergyTransfer/test )
add_subdirectory( src/ENDFtk/section/26/ReactionProduct/test )
add_subdirectory( src/ENDFtk/section/26/test )
add_subdirectory( src/ENDFtk/section/27/test )
add_subdirectory( src/ENDFtk/section/28/SubshellData/Transition/test )
add_subdirectory( src/ENDFtk/section/28/SubshellData/test )
Expand Down
25 changes: 21 additions & 4 deletions cmake/unit_testing_python.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ add_test( NAME ENDFtk.python.InterpolationRecord COMMAND ${PYTHON_EXECUTABLE} -m
set_tests_properties( ENDFtk.python.InterpolationRecord PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.ListRecord COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_ListRecord.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.ListRecord PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.TabulationRecord COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_TabulationRecord.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.TabulationRecord PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.TapeIdentification COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_TapeIdentification.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.TapeIdentification PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})

add_test( NAME ENDFtk.python.MF1.MT451.Section COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF1_MT451_Section.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF1.MT451.Section PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF1.MT452.Section COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF1_MT452_Section.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
Expand Down Expand Up @@ -286,6 +291,22 @@ add_test( NAME ENDFtk.python.MF15.TabulatedSpectrum COMMAND ${PYTHON_EXECUTABLE}
set_tests_properties( ENDFtk.python.MF15.TabulatedSpectrum PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF23.Section COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF23_Section.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF23.Section PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.Section COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_Section.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.Section PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.ContinuumEnergyAngle COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_ContinuumEnergyAngle.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.ContinuumEnergyAngle PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.DiscreteTwoBodyScattering COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_DiscreteTwoBodyScattering.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.DiscreteTwoBodyScattering PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.EnergyTransfer COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_EnergyTransfer.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.EnergyTransfer PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.LAW1.LegendreCoefficients COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_LAW1_LegendreCoefficients.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.LAW1.LegendreCoefficients PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.LAW2.TabulatedDistribution COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_LAW2_TabulatedDistribution.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.LAW2.TabulatedDistribution PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.Multiplicity COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_Multiplicity.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.Multiplicity PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF26.ReactionProduct COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF26_ReactionProduct.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF26.ReactionProduct PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF23.File COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF23_File.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF23.File PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF27.Section COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF27_Section.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
Expand Down Expand Up @@ -322,10 +343,6 @@ add_test( NAME ENDFtk.python.MF34.Section COMMAND ${PYTHON_EXECUTABLE} -m unitte
set_tests_properties( ENDFtk.python.MF34.Section PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.MF34.SquareMatrix COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_MF34_Section.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.MF34.SquareMatrix PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.TabulationRecord COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_TabulationRecord.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.TabulationRecord PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.TapeIdentification COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_TapeIdentification.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.TapeIdentification PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.tree.File COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_Tree_File.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
set_tests_properties( ENDFtk.python.tree.File PROPERTIES ENVIRONMENT PYTHONPATH=${ENDFTK_PYTHONPATH}:$ENV{PYTHONPATH})
add_test( NAME ENDFtk.python.tree.Material COMMAND ${PYTHON_EXECUTABLE} -m unittest -v test/Test_ENDFtk_Tree_Material.py WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/python )
Expand Down
2 changes: 2 additions & 0 deletions python/src/ENDFtk.python.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ void wrapFile_13( python::module&, python::module& );
void wrapFile_14( python::module&, python::module& );
void wrapFile_15( python::module&, python::module& );
void wrapFile_23( python::module&, python::module& );
void wrapFile_26( python::module&, python::module& );
void wrapFile_27( python::module&, python::module& );
void wrapFile_28( python::module&, python::module& );
void wrapFile_33( python::module&, python::module& );
Expand Down Expand Up @@ -107,6 +108,7 @@ PYBIND11_MODULE( ENDFtk, module ) {
wrapFile_14( module, viewmodule );
wrapFile_15( module, viewmodule );
wrapFile_23( module, viewmodule );
wrapFile_26( module, viewmodule );
wrapFile_27( module, viewmodule );
wrapFile_28( module, viewmodule );
wrapFile_33( module, viewmodule );
Expand Down
5 changes: 4 additions & 1 deletion python/src/Material.python.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ void wrapMaterial( python::module& module, python::module& ) {
using MF14 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 14 > >;
using MF15 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 15 > >;
using MF23 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 23 > >;
using MF26 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 26 > >;
using MF27 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 27 > >;
using MF28 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 28 > >;
using MF33 = std::reference_wrapper< const njoy::ENDFtk::file::Type< 33 > >;
Expand All @@ -52,7 +53,8 @@ void wrapMaterial( python::module& module, python::module& ) {
// predefined lambda
auto getFile = [] ( const Material& self, int mf )
-> std::variant< MF1, MF2, MF3, MF4, MF5, MF6, MF7, MF8, MF9, MF10,
MF12, MF13, MF14, MF15, MF23, MF27, MF28, MF33, MF34 > {
MF12, MF13, MF14, MF15, MF23, MF26, MF27, MF28,
MF33, MF34 > {

switch ( mf ) {

Expand All @@ -71,6 +73,7 @@ void wrapMaterial( python::module& module, python::module& ) {
case 14 : return self.file( 14_c );
case 15 : return self.file( 15_c );
case 23 : return self.file( 23_c );
case 26 : return self.file( 26_c );
case 27 : return self.file( 27_c );
case 28 : return self.file( 28_c );
case 33 : return self.file( 33_c );
Expand Down
52 changes: 52 additions & 0 deletions python/src/file/26.python.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
// system includes
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>

// local includes
#include "ENDFtk/file/26.hpp"
#include "definitions.hpp"
#include "views.hpp"

// namespace aliases
namespace python = pybind11;

// declarations - sections
void wrapSection_26( python::module&, python::module& );

void wrapFile_26( python::module& module, python::module& viewmodule ) {

// type aliases
using Section = njoy::ENDFtk::section::Type< 26 >;
using File = njoy::ENDFtk::file::Type< 26 >;
using SectionRange = BidirectionalAnyView< Section >;

// create the submodule
python::module submodule = module.def_submodule(

"MF26",
"MF26 - secondary distributions for photo- and electro-atomic interactions"
);

// wrap sections
wrapSection_26( submodule, viewmodule );

// wrap views created by this file
// none of these are supposed to be created directly by the user
wrapBidirectionalAnyViewOf< Section >(
viewmodule,
"any_view< section::Type< 26 >, bidirectional >" );

// create the file
python::class_< File > file(

submodule,
"File",
"MF26 file - secondary distributions for photo- and electro-atomic interactions"
);

// wrap the file
addStandardUnenumeratedFileDefinitions< File, Section, SectionRange >( file );

// add standard file definitions
addStandardFileDefinitions< File >( file );
}
129 changes: 129 additions & 0 deletions python/src/section/26.python.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
// system includes
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>

// local includes
#include "ENDFtk/section/26.hpp"
#include "definitions.hpp"
#include "views.hpp"

// namespace aliases
namespace python = pybind11;

namespace mf26 {

// declarations - components
void wrapMultiplicity( python::module&, python::module& );

namespace law1 {

void wrapLegendreCoefficients( python::module&, python::module& ); // law=1
}

void wrapContinuumEnergyAngle( python::module&, python::module& ); // law=1

namespace law2 {

void wrapTabulatedDistribution( python::module&, python::module& ); // law=2

}

void wrapDiscreteTwoBodyScattering( python::module&, python::module& ); // law=2

void wrapEnergyTransfer( python::module&, python::module& ); // law=8
void wrapReactionProduct( python::module&, python::module& );
}

void wrapSection_26( python::module& module, python::module& viewmodule ) {

// type aliases
using Section = njoy::ENDFtk::section::Type< 26 >;
using ReactionProduct = Section::ReactionProduct;
using ReactionProductRange = RandomAccessAnyView< ReactionProduct >;

// wrap components

// LAW = 1 - - - - - - - - - - - - - - - - - - - - - -

// create the submodule for LAW=1
python::module submodule = module.def_submodule(

"LAW1",
"LAW1 - continuum energy-angle data for secondary particles"
);

mf26::law1::wrapLegendreCoefficients( submodule, viewmodule );
mf26::wrapContinuumEnergyAngle( module, viewmodule );

// LAW = 2 - - - - - - - - - - - - - - - - - - - - - -

// create the submodule for LAW=2
submodule = module.def_submodule(

"LAW2",
"LAW2 - discrete two-body scattering data for secondary particles"
);

mf26::law2::wrapTabulatedDistribution( submodule, viewmodule );
mf26::wrapDiscreteTwoBodyScattering( module, viewmodule );

// LAW = 8 - - - - - - - - - - - - - - - - - - - - - -

mf26::wrapEnergyTransfer( module, viewmodule );

mf26::wrapMultiplicity( module, viewmodule );
mf26::wrapReactionProduct( module, viewmodule );

// wrap views created by this section
// none of these are supposed to be created directly by the user
wrapRandomAccessAnyViewOf< ReactionProduct >(
viewmodule,
"any_view< mf26::ReactionProduct, random_access >" );

// create the section
python::class_< Section > section(

module,
"Section",
"MF26 section - secondary distributions for photo- and electro-atomic interactions"
);

// wrap the section
section
.def(

python::init< int, double, double,
std::vector< ReactionProduct >&& >(),
python::arg( "mt" ), python::arg( "zaid" ), python::arg( "awr" ),
python::arg( "products" ),
"Initialise the section\n\n"
"Arguments:\n"
" self the section\n"
" mt the MT number\n"
" zaid the ZA identifier\n"
" awr the atomic mass ratio\n"
" products the reaction products (at least 1)"
)
.def_property_readonly(

"NK",
&Section::NK,
"The number of reaction products"
)
.def_property_readonly(

"number_reaction_products",
&Section::numberReactionProducts,
"The number of reaction products"
)
.def_property_readonly(

"reaction_products",
[] ( const Section& self ) -> ReactionProductRange
{ return self.reactionProducts(); },
"The reaction products defined in this section"
);

// add standard section definitions
addStandardSectionDefinitions< Section >( section );
}
Loading