Release Notes: Difference between revisions

From Safety Analysis System
Jump to navigation Jump to search
(Added release notes for 5.2.1)
No edit summary
Line 1: Line 1:
= Version 5.2.2 (3098) - October 12, 2018 =
== Bug Fixes ==
* Step changes in programmed reactivity (`PREA`) at ''t = 0'' are properly handled. (#123)
* User functions are no longer truncated to 32 characters. The maximum length is now 256 characters. (#125)
== Code Changes ==
* Extensive unit testing of point-kinetics and decay heat has been added. (#123)
* Simplified implementation of "developer" build used for regression testing. (#127)
* Removed unused `AutoRef` source file from build configuration. (#128)
* Minor improvement to `make` configuration file to improve compatibility on Windows. (#129)
* Shortened some regression test filenames to be compatible with Windows path limitations. (#130)
* Improved compatibility of temporary directory creation for unit tests on Linux. (#131)
* Removed references to unused dynamic library (`libcrypto` on Linux) to improve compatibility with different Linux  distributions. (#132)
* Reduced dependency on `-save` compiler option for better error detection. (#133)
* Sample cases distributed with SAS are now properly included in regression testing. (#145)
= Version 5.2.1 (2848) - January 24, 2018 =
= Version 5.2.1 (2848) - January 24, 2018 =



Revision as of 15:11, November 14, 2018

Version 5.2.2 (3098) - October 12, 2018

Bug Fixes

  • Step changes in programmed reactivity (`PREA`) at t = 0 are properly handled. (#123)
  • User functions are no longer truncated to 32 characters. The maximum length is now 256 characters. (#125)

Code Changes

  • Extensive unit testing of point-kinetics and decay heat has been added. (#123)
  • Simplified implementation of "developer" build used for regression testing. (#127)
  • Removed unused `AutoRef` source file from build configuration. (#128)
  • Minor improvement to `make` configuration file to improve compatibility on Windows. (#129)
  • Shortened some regression test filenames to be compatible with Windows path limitations. (#130)
  • Improved compatibility of temporary directory creation for unit tests on Linux. (#131)
  • Removed references to unused dynamic library (`libcrypto` on Linux) to improve compatibility with different Linux distributions. (#132)
  • Reduced dependency on `-save` compiler option for better error detection. (#133)
  • Sample cases distributed with SAS are now properly included in regression testing. (#145)

Version 5.2.1 (2848) - January 24, 2018

Bug Fixes

  • `RESTART` files are not generated if `NSTEP = 0`, consistent with documentation. (#48)
  • Eliminated a potential divide-by-zero error when the Young's Modulus for cladding and fuel are not provided in input. (#88)
  • Corrected the declaration of a local variable used in debug print statements. (#91,#98)
  • Corrected an issue where input parameter `IPRION` was not treated consistently when PRIMAR-4 was not being used. (#95)
  • Eliminated a potential floating-point exception on Windows when debug prints are enabled. (#99)
  • Eliminated a potential divide-by-zero error when predicting the time-step cutback in PRIMAR-4 if core channel flow rates are not changing. (#100)
  • Corrected an issue where a non-zero value for `IFLOW` would impact PRIMAR-4 calculations. (#102)
  • Eliminated a rare divide-by-zero error on Windows caused by poor CPU timing resolution. (#104)

Code Changes

  • Removed unneeded compilation of `fpoptimizer` from the FParser library. (#81)
  • Added support for "developer" build to simplify regression testing. (#85,#97)
  • Updated copyright. (#86)
  • Replaced non-standard calls to `ETIME` with calls to standard `CPU_TIME`. (#92)
  • Corrected typos in the README file. (#94)

Version 5.2 (2568) - March 2017

New Features

  • Control System models now have access to an extensive set of core and core channel state variables such as fuel, cladding, coolant, and structure temperatures; coolant flow rates and pressures; and several other parameters.

Bug Fixes

  • All fixes from release 5.1.1 have been incorporated into 5.2

Code Changes

  • Nearly all obsolete code constructs have been removed to bring the code into compliance with Fortran 2003 standards. (#82)
  • Compiler options for Windows have been significantly revised for better consistency with macOS and Linux builds. (#79)
  • `make source` now works on Linux (#83)

Version 5.1.1 (2524) - January 2017

Bug Fixes

  • Corrected an issue in the input processor where integer input in a floating-point field would be interpreted with an assumed decimal point with five decimal digits. [2304],[2307]
  • When input parsing fails in fixed-formatted input, a warning is printed if one or more tab characters was found. [2305]
  • The `COMC` data structure is now fully initialized. (#69)
  • Corrected an issue in the decay heat model where the 5^th^ decay heat region would not be properly initialized during steady state (#73)
  • Corrected an array bounds violations error in the BOP module that produced different results depending on compilation options (#74)

Code Changes

  • Removed unused character array processing routines (#61,#63,#64,#65,#66)
  • SAS now reports errors if undefined element types or compressible volume types are detected in the PRIMAR4 input. (#68)

Version 5.1 (2238) - October 2015

New Features

  • Full support for compiling on Mac OS X, Linux (x86), and Windows platforms.
  • Consistent licensing mechanism across all three supported platforms.
  • Support for user-defined input tables of arbitrary size.
  • Support for user-defined input functions based on table lookup, scripted function, external plug-in, and control-system signals. Table lookup functions support linear, log-linear, spline, log-spline, and several other cubic interpolation options.
  • Added binary "CONTROL.dat" file for logging control system signals during a simulation.
  • Added conversion utility for reading "CONTROL.dat" file and generating Excel-compatible XML file.
  • Input model files can now contain blank lines.
  • Input files now require an explicit `ENDJOB` statement. Previously, a lone `-1` would qualify as an end-of-job indicator.
  • Input blocks may be terminated by an `END` statement rather than specifying a data location of `-1`.
  • Simulations that use the DIF3D-K Coupling Interface may specify radial, axial, and control-rod expansion models in SAS that are passed as additional feedback effects to the quasi-static solvers.
  • Simulations that use the DIF3D-K Coupling Interface may include a Control System feedback model that will be passed as an additional feedback effect to the quasi-static solvers.
  • Explicit control-rod motion may be specified in DIF3D-K Coupling Interface. Movable rod compositions are defined by new TABLE blocks and rod motions are defined by FUNCTION blocks.
  • Initial steady-state flows in liquid segments in PRIMAR-4 may now be negative.
  • Basic control system models that do not access PRIMAR-4 variables can be defined when only PRIMAR-1 is in use.
  • The code now allows more than six delayed neutron precursor families in a `DLAYXS` file when `NPK > 1`.
  • Extended interpretation of IPOBOI input to optionally terminate simulation when boiling is encountered.

Bug Fixes

  • Corrected an issue where the acceleration pressure drop was not correctly evaluated for non-isothermal pipes.
  • Corrected an issue with a missing `USE` declaration that led to a regression failure in an FPIN model.
  • A lone `-1` in input is no longer interpreted as an end-of-job marker.
  • Channel-dependent input arrays are now properly initialized and do not depend on compiler settings or relying on users to zero a block on first use.
  • Corrected an issue in the DIF3D-K coupling interface where a lower fission gas plenum (IPLUC ≠ 0) was not handled properly.
  • Issues with reading a restart file with multiple restart frames have been resolved.
  • Corrected an array bounds violation that could result in improper null transient initialization with table lookup steam generators.
  • Upper reflector temperatures are now printed correctly by the boiling module.
  • Resolved an issue where job titles were mangled by the DIF3D-K output routines.
  • Corrected a memory issue that occurred when a file-wide chi vector is not present in an ISOTXS file.

Code Changes

  • Added distribution target builds to include licensing pre-flight checks in executable.
  • Renamed GEOMIN common block in fpin to "FPGEOMIN" to avoid naming conflicts with original GEOMIN input block.
  • Eliminated some code structures that led to optimization failures with the Intel 2013 compiler.
  • All source code is now declared with `IMPLICIT NONE`.
  • The `COMC` common block has been completely rewritten as two new modules.
  • The `COLC` common block has been completely rewritten and merged into one of the new modules for `COMC`.
  • The `PLUC` common block has been completely rewritten as a new module.
  • Internal data structures for DEFORM-4 and DEFORM-5 have been completely rewritten as new modules.
  • The common blocks for `ANEUTR`, `INEUTR`, and `RNEUTR` have been rewritten as new modules.
  • Implemented significant refactoring of the DIF3D-K Coupling Interface to extract the transient driver as a separate source file.
  • Eliminated legacy timers and checks on remaining CPU time that weren't enforced anyway.
  • Source code has been improved to be more compliant with pre-processor requirements.
  • Added an internal `sleep` function where the argument is interpreted in milliseconds.
  • Added `svn:keywords` property on files that were missing the setting.
  • Corrected some minor issues where dummy arguments were not declared with the correct shape.
  • Debug build target now implements more aggressive checking for uninitialized variables. Some previously uninitialized variables are now properly initialized.
  • The Control System module has been significantly refactored and is no longer dependent on PRIMAR-4 to operate.
  • All FPIN code has been converted to free-format source style.
  • Full source can be optionally compiled to produce "Mini SAS", which excludes severe accident and balance-of-plant modules and limits models to five channels.