Skip to content

Latest commit

 

History

History
216 lines (137 loc) · 6.89 KB

File metadata and controls

216 lines (137 loc) · 6.89 KB

Release notes for v0.5.0

Note

These release notes are currently in production.

Summary

This release adds support for OpenMC in SaltProc via the addition of the DepcodeOpenMC class

Dependency Changes

  • SaltProc now optionally requires the following package:
  • pyne>=0.5.11pyne>=0.5.11=nomoab_noopenmc*

New Features

  • openmc support via DepcodeOpenMC
  • OpenMC compatible MSBR model.

Bug Fixes

Script Changes

  • Added convenience features to process_j312.bash
    • Control flow check for an XSDIR environment variable set by the user. This variable should point to the location where the user would like the library to be installed
    • Commands to download and run the xsdirconvert.pl script (found on the Serpent wiki) to convert the MCNP .dir style file to the Serpent .xsdata style file
    • Add SERPENT_DATA and SERPENT_ACELIB variables to .bashrc
  • A new script, scripts/ci/openmc-xs.bash, that downloads the OpenMC HDF5 cross section library.
  • A new script, download_endfb71.bash, that downloads the ENDF/B 7.1 cross section library -- including thermal scattering, decay, and fission yield data -- in ACE format.
  • A new script, process_endfb71_to_openmc.bash, that converts the library created by download_endfb71.bash into an OpenMC-usable HDF5 format. Requires OpenMC to be installed from source to use.
  • A new script openmc_msbr_model.py, that creates an OpenMC-usable MSBR model based on the Serpent MSBR model.

Python API Changes

  • The test suite has been overhauled and moved to the tests/ directory. The test suite is no longer part of the saltproc package.
  • Input file format changes:
    • depcode['template_inputfile_path']depcode['template_input_file_path']
    • The depcode['template_input_file_path'] input variable now has the following depletion-code-depentent types:
      • str for Serpent2
      • dict of str to str for openmc
    • depcode['iter_inputfile'] → (removed)
    • depcode['iter_matfile'] → (removed)

Note

While the iter_inputfile and iter_matfile variables have been removed from the saltproc input file, they remain part of the DepcodeSerpent class as attributes. Their use is unchanged, save for the fact they can no longer be initialized by the user during object creation.

  • New/changed classes, methods, and attributes:
    • Depcode
      • Add output_path parameter.
      • template_inputfile_pathtemplate_input_file_path
      • Removed default values for geo_files
      • Changed iter_inputfile, iter_matfile to be attributes instead of parameters
      • Changed npop, active_cycles, inactive_cycles to be attributes instead of parameters
      • read_depcode_info()read_step_metadata()
      • sim_infostep_metadata
      • read_depcode_step_param()read_neutronics_parameters()
      • paramneutronics_parameters
      • read_dep_comp()read_depleted_materials()
      • run_depcode()run_depletion_step()
      • write_mat_file()update_depletable_materials()
      • write_depcode_input()write_runtime_input()
      • iter_inputfileruntime_inputfile
      • iter_matfileruntime_matfile
    • DepcodeSerpentSerpentDepcode
      • Add output_path parameter.
      • template_inputfile_pathtemplate_input_file_path
      • Removed default values for exec_path, template_input_file_path, geo_files
      • Changed iter_inputfile, iter_matfile to be attributes instead of parameters
      • Changed npop, active_cycles, inactive_cycles to be attributes instead of parameters
      • read_depcode_info()read_depletion_step_metadata()
      • sim_infostep_metadata
      • read_depcode_step_param()read_neutronics_parameters()
      • paramneutronics_parameters
      • read_dep_comp()read_depleted_materials()
      • create_nuclide_name_map_zam_to_serpent()map_nuclide_code_zam_to_serpent()
      • run_depcode()run_depletion_step()
      • write_mat_file()update_depletable_materials()
      • get_nuc_name()convert_nuclide_code_to_name()
      • convert_nuclide_name_serpent_to_zam()convert_nuclide_code_to_zam()
      • create_iter_matfile()create_runtime_matfile()
      • replace_burnup_parameters()set_power_load()
      • write_depcode_input()write_runtime_input()
      • iter_inputfileruntime_inputfile
      • iter_matfileruntime_matfile
      • change_sim_par() → (deleted)
      • (new function) → get_neutron_settings()
      • (new function) → get_burnable_materials_file()
      • (new function) → get_burnable_material_card_data()
    • OpenMCDepcode is a Depcode subclass that interfaces with openmc. This class implements the following functions - run_depletion_step() - switch_to_next_geometry() - write_runtime_input() - write_depletion_settings() - write_saltproc_openmc_tallies()
    • app.py
      • reprocessing()reprocess_materials()
      • refill()refill_materials()
      • read_feeds_from_inputget_feeds()
      • read_processes_from_inputget_extraction_processes()
      • read_dot()get_extraction_process_paths()
    • Process
      • calc_rem_efficiency()calculate_removal_efficiency
    • Sparger
      • calc_rem_efficiency()calculate_removal_efficiency
    • Separator
      • calc_rem_efficiency()calculate_removal_efficiency

Contributors

The following people contributed code to this release of SaltProc:

Reviewers

The following people reviewed code for this release of SaltProc: