Skip to content

Commit

Permalink
Release/6.7.0
Browse files Browse the repository at this point in the history
* regen f2003 interfaces
* update version numbers
* update changelog
  • Loading branch information
gardner48 committed Dec 18, 2023
1 parent e20c9c8 commit aaeab8d
Show file tree
Hide file tree
Showing 29 changed files with 251 additions and 215 deletions.
58 changes: 29 additions & 29 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# SUNDIALS Changelog


## Changes to SUNDIALS in release X.X.X
## Changes to SUNDIALS in release 6.7.0

Added the `SUNAdaptController` base class, ported ARKODE's internal
implementations of time step controllers into implementations of this class,
Expand All @@ -18,11 +18,30 @@ release, but for some applications a value of 0 is more appropriate.
Users who notice that their simulations encounter a large number of
temporal error test failures may want to experiment with adjusting this value.

Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3`, the fourth order
ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`, the sixth order ERK method
`ARKODE_VERNER_9_5_6`, the seventh order ERK method `ARKODE_VERNER_10_6_7`,
the eighth order ERK method `ARKODE_VERNER_13_7_8`, and the ninth order ERK
method `ARKODE_VERNER_16_8_9`.

ARKStep, ERKStep, MRIStep, and SPRKStep were updated to remove a potentially
unnecessary right-hand side evaluation at the end of an integration. ARKStep was
additionally updated to remove extra right-hand side evaluations when using an
explicit method or an implicit method with an explicit first stage.

Improved computational complexity of `SUNMatScaleAddI_Sparse` from `O(M*N)` to
`O(NNZ)`.

Added Fortran support for the LAPACK dense `SUNLinearSolver` implementation.

Fixed a regression introduced by the stop time bug fix in v6.6.1 where ARKODE,
CVODE, CVODES, IDA, and IDAS would return at the stop time rather than the
requested output time if the stop time was reached in the same step in which the
output time was passed.

Fixed a bug in ERKStep where methods with `c[s-1] = 1` but `a[s-1,j] != b[j]`
were incorrectly treated as having the first same as last (FSAL) property.

Fixed a bug in ARKODE where `ARKStepSetInterpolateStopTime` would return an
interpolated solution at the stop time in some cases when interpolation was
disabled.
Expand All @@ -31,27 +50,22 @@ Fixed a bug in `ARKStepSetTableNum` wherein it did not recognize
`ARKODE_ARK2_ERK_3_1_2` and `ARKODE_ARK2_DIRK_3_1_2` as a valid additive
Runge--Kutta Butcher table pair.

Renamed some internal types in CVODES and IDAS to allow both packages to be
built together in the same binary.
Fixed a bug in `MRIStepCoupling_Write` where explicit coupling tables were not
written to the output file pointer.

Improved computational complexity of `SUNMatScaleAddI_Sparse` from `O(M*N)` to
`O(NNZ)`.
The `MRIStepInnerStepper` class in MRIStep was updated to make supplying an
`MRIStepInnerFullRhsFn` optional.

Fixed scaling bug in `SUNMatScaleAddI_Sparse` for non-square matrices.

Changed the `SUNProfiler` so that it does not rely on `MPI_WTime` in any case.
This fixes [GitHub Issue #312](https://github.com/LLNL/sundials/issues/312).

Fixed missing soversions in some `SUNLinearSolver` and `SUNNonlinearSolver`
CMake targets.

Added Fortran support for the LAPACK dense `SUNLinearSolver` implementation.

Added the third order ERK method `ARKODE_SHU_OSHER_3_2_3`, the fourth order
ERK method `ARKODE_SOFRONIOU_SPALETTA_5_3_4`, the sixth order ERK method
`ARKODE_VERNER_9_5_6`, the seventh order ERK method `ARKODE_VERNER_10_6_7`,
the eighth order ERK method `ARKODE_VERNER_13_7_8`, and the ninth order ERK
method `ARKODE_VERNER_16_8_9`.

Changed the `SUNProfiler` so that it does not rely on `MPI_WTime` in any case.
This fixes https://github.com/LLNL/sundials/issues/312.
Renamed some internal types in CVODES and IDAS to allow both packages to be
built together in the same binary.

## Changes to SUNDIALS in release 6.6.2

Expand All @@ -71,20 +85,6 @@ the stop time. Additionally, with ARKODE, CVODE, and CVODES this fix removes an
unnecessary interpolation of the solution at the stop time that could occur in
this case.

Fixed a bug in ERKStep where methods with `c[s-1] = 1` but `a[s-1,j] != b[j]`
were incorrectly treated as having the first same as last (FSAL) property.

Fixed a bug in `MRIStepCoupling_Write` where explicit coupling tables were not
written to the output file pointer.

ARKStep, ERKStep, MRIStep, and SPRKStep were updated to remove a potentially
unnecessary right-hand side evaluation at the end of an integration. ARKStep was
additionally updated to remove extra right-hand side evaluations when using an
explicit method or an implicit method with an explicit first stage.

The `MRIStepInnerStepper` class in MRIStep was updated to make supplying an
`MRIStepInnerFullRhsFn` optional.

## Changes to SUNDIALS in release 6.6.0

A new time-stepping module, `SPRKStep`, was added to ARKODE. This time-stepper
Expand Down
12 changes: 6 additions & 6 deletions CITATIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ they are using rather than the combined SUNDIALS online guide:
author = {Daniel R. Reynolds and David J. Gardner and Carol S. Woodward and Cody J. Balos},
title = {User Documentation for ARKODE},
year = {2023},
note = {v5.6.2}
note = {v5.7.0}
}
```

Expand All @@ -75,7 +75,7 @@ they are using rather than the combined SUNDIALS online guide:
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
title = {User Documentation for CVODE},
year = {2023},
note = {v6.6.2}
note = {v6.7.0}
}
```

Expand All @@ -84,7 +84,7 @@ they are using rather than the combined SUNDIALS online guide:
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
title = {User Documentation for CVODES},
year = {2023},
note = {v6.6.2}
note = {v6.7.0}
}
```

Expand All @@ -93,7 +93,7 @@ they are using rather than the combined SUNDIALS online guide:
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
title = {User Documentation for IDA},
year = {2023},
note = {v6.6.2}
note = {v6.7.0}
}
```

Expand All @@ -102,7 +102,7 @@ they are using rather than the combined SUNDIALS online guide:
author = {Radu Serban and Cosmin Petra and Alan C. Hindmarsh and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
title = {User Documentation for IDAS},
year = {2023},
note = {v5.6.2}
note = {v5.7.0}
}
```

Expand All @@ -111,6 +111,6 @@ they are using rather than the combined SUNDIALS online guide:
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
title = {User Documentation for KINSOL},
year = {2023},
note = {v6.6.2}
note = {v6.7.0}
}
```
26 changes: 13 additions & 13 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ include(FindPackageHandleStandardArgs)
# Set some variables with info on the SUNDIALS project
set(PACKAGE_BUGREPORT "[email protected]")
set(PACKAGE_NAME "SUNDIALS")
set(PACKAGE_STRING "SUNDIALS 6.6.2")
set(PACKAGE_STRING "SUNDIALS 6.7.0")
set(PACKAGE_TARNAME "sundials")

# Set SUNDIALS version numbers
Expand All @@ -52,8 +52,8 @@ message(STATUS "SUNDIALS_GIT_VERSION: ${SUNDIALS_GIT_VERSION}")

# (use "" for the version label if none is needed)
set(PACKAGE_VERSION_MAJOR "6")
set(PACKAGE_VERSION_MINOR "6")
set(PACKAGE_VERSION_PATCH "2")
set(PACKAGE_VERSION_MINOR "7")
set(PACKAGE_VERSION_PATCH "0")
set(PACKAGE_VERSION_LABEL "")

if(PACKAGE_VERSION_LABEL)
Expand All @@ -68,37 +68,37 @@ endif()

# Specify the VERSION and SOVERSION for shared libraries

set(arkodelib_VERSION "5.6.2")
set(arkodelib_VERSION "5.7.0")
set(arkodelib_SOVERSION "5")

set(cvodelib_VERSION "6.6.2")
set(cvodelib_VERSION "6.7.0")
set(cvodelib_SOVERSION "6")

set(cvodeslib_VERSION "6.6.2")
set(cvodeslib_VERSION "6.7.0")
set(cvodeslib_SOVERSION "6")

set(idalib_VERSION "6.6.2")
set(idalib_VERSION "6.7.0")
set(idalib_SOVERSION "6")

set(idaslib_VERSION "5.6.2")
set(idaslib_VERSION "5.7.0")
set(idaslib_SOVERSION "5")

set(kinsollib_VERSION "6.6.2")
set(kinsollib_VERSION "6.7.0")
set(kinsollib_SOVERSION "6")

set(cpodeslib_VERSION "0.0.0")
set(cpodeslib_SOVERSION "0")

set(nveclib_VERSION "6.6.2")
set(nveclib_VERSION "6.7.0")
set(nveclib_SOVERSION "6")

set(sunmatrixlib_VERSION "4.6.2")
set(sunmatrixlib_VERSION "4.7.0")
set(sunmatrixlib_SOVERSION "4")

set(sunlinsollib_VERSION "4.6.2")
set(sunlinsollib_VERSION "4.7.0")
set(sunlinsollib_SOVERSION "4")

set(sunnonlinsollib_VERSION "3.6.2")
set(sunnonlinsollib_VERSION "3.7.0")
set(sunnonlinsollib_SOVERSION "3")

set(sundialslib_VERSION
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# SUNDIALS: SUite of Nonlinear and DIfferential/ALgebraic equation Solvers #
### Version 6.6.2 (Nov 2023) ###
### Version 6.7.0 (Dec 2023) ###

**Center for Applied Scientific Computing, Lawrence Livermore National Laboratory**

Expand Down
2 changes: 1 addition & 1 deletion doc/arkode/guide/source/ARKodeButcherTable.rst
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ ARKodeButcherTable functions
* ``SUNTRUE`` if the method is "stiffly accurate", otherwise returns
``SUNFALSE``
.. versionadded:: vX.X.X
.. versionadded:: v5.7.0
.. c:function:: int ARKodeButcherTable_CheckOrder(ARKodeButcherTable B, int* q, int* p, FILE* outfile)
Expand Down
56 changes: 28 additions & 28 deletions doc/arkode/guide/source/Introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ provided with SUNDIALS, or again may utilize a user-supplied module.
Changes from previous versions
==============================

Changes in vX.X.X
Changes in v5.7.0
-----------------

Added the :c:type:`SUNAdaptController` base class, ported ARKODE's internal
Expand All @@ -148,10 +148,30 @@ release, but for some applications a value of :math:`0` is more appropriate.
Users who notice that their simulations encounter a large number of
temporal error test failures may want to experiment with adjusting this value.

Added the third order ERK method ``ARKODE_SHU_OSHER_3_2_3``, the fourth order
ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``, the sixth order ERK method
``ARKODE_VERNER_9_5_6``, the seventh order ERK method ``ARKODE_VERNER_10_6_7``,
the eighth order ERK method ``ARKODE_VERNER_13_7_8``, and the ninth order ERK
method ``ARKODE_VERNER_16_8_9``.

ARKStep, ERKStep, MRIStep, and SPRKStep were updated to remove a potentially
unnecessary right-hand side evaluation at the end of an integration. ARKStep was
additionally updated to remove extra right-hand side evaluations when using an
explicit method or an implicit method with an explicit first stage.

Improved computational complexity of ``SUNMatScaleAddI_Sparse`` from ``O(M*N)``
to ``O(NNZ)``.

Added Fortran support for the LAPACK dense ``SUNLinearSolver`` implementation.

Fixed a regression introduced by the stop time bug fix in v6.6.1 where ARKODE
steppers would return at the stop time rather than the requested output time if
the stop time was reached in the same step in which the output time was passed.

Fixed a bug in ERKStep where methods with :math:`c_s = 1` but
:math:`a_{s,j} \neq b_j` were incorrectly treated as having the first same as
last (FSAL) property.

Fixed a bug in ARKODE where :c:func:`ARKStepSetInterpolateStopTime` would return
an interpolated solution at the stop time in some cases when interpolation was
disabled.
Expand All @@ -160,24 +180,19 @@ Fixed a bug in :c:func:`ARKStepSetTableNum` wherein it did not recognize
`ARKODE_ARK2_ERK_3_1_2` and `ARKODE_ARK2_DIRK_3_1_2` as a valid additive
Runge--Kutta Butcher table pair.

Improved computational complexity of ``SUNMatScaleAddI_Sparse`` from ``O(M*N)``
to ``O(NNZ)``.

Fixed scaling bug in ``SUNMatScaleAddI_Sparse`` for non-square matrices.
Fixed a bug in :c:func:`MRIStepCoupling_Write` where explicit coupling tables
were not written to the output file pointer.

Fixed missing soversions in some ``SUNLinearSolver`` and ``SUNNonlinearSolver``
CMake targets.
The :c:type:`MRIStepInnerStepper` class in MRIStep was updated to make supplying
an :c:func:`MRIStepInnerFullRhsFn` optional.

Added the third order ERK method ``ARKODE_SHU_OSHER_3_2_3``, the fourth order
ERK method ``ARKODE_SOFRONIOU_SPALETTA_5_3_4``, the sixth order ERK method
``ARKODE_VERNER_9_5_6``, the seventh order ERK method ``ARKODE_VERNER_10_6_7``,
the eighth order ERK method ``ARKODE_VERNER_13_7_8``, and the ninth order ERK
method ``ARKODE_VERNER_16_8_9``.
Fixed scaling bug in ``SUNMatScaleAddI_Sparse`` for non-square matrices.

Changed the ``SUNProfiler`` so that it does not rely on ``MPI_WTime`` in any case.
This fixes `GitHub Issue #312 <https://github.com/LLNL/sundials/issues/312>`_.

Added Fortran support for the LAPACK dense ``SUNLinearSolver`` implementation.
Fixed missing soversions in some ``SUNLinearSolver`` and ``SUNNonlinearSolver``
CMake targets.

Changes in v5.6.2
-----------------
Expand All @@ -198,21 +213,6 @@ requested output time is the same as the stop time. Additionally, this fix
removes an unnecessary interpolation of the solution at the stop time that could
occur in this case.

Fixed a bug in ERKStep where methods with :math:`c_s = 1` but
:math:`a_{s,j} \neq b_j` were incorrectly treated as having the first same as
last (FSAL) property.

Fixed a bug in :c:func:`MRIStepCoupling_Write` where explicit coupling tables
were not written to the output file pointer.

ARKStep, ERKStep, MRIStep, and SPRKStep were updated to remove a potentially
unnecessary right-hand side evaluation at the end of an integration. ARKStep was
additionally updated to remove extra right-hand side evaluations when using an
explicit method or an implicit method with an explicit first stage.

The :c:type:`MRIStepInnerStepper` class in MRIStep was updated to make supplying
an :c:func:`MRIStepInnerFullRhsFn` optional.

Changes in v5.6.0
-----------------

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1724,7 +1724,7 @@ Explicit stability function :c:func:`ARKStepSetS
* *ARK_MEM_NULL* if the ARKStep memory is ``NULL``
* *ARK_MEM_FAIL* if *C* was ``NULL`` and the PID controller could not be allocated.
.. versionadded:: x.x.x
.. versionadded:: 5.7.0
.. c:function:: int ARKStepSetAdaptivityFn(void* arkode_mem, ARKAdaptFn hfun, void* h_data)
Expand All @@ -1748,7 +1748,7 @@ Explicit stability function :c:func:`ARKStepSetS
:c:func:`ARKStepSetStabilityFn()` should be used instead.
.. deprecated:: x.x.x
.. deprecated:: 5.7.0
Use the SUNAdaptController infrastructure instead (see :numref:`SUNAdaptController.Description`).
Expand Down Expand Up @@ -1786,13 +1786,13 @@ Explicit stability function :c:func:`ARKStepSetS
parameter values are desired, it is recommended to instead provide
a custom function through a call to :c:func:`ARKStepSetAdaptivityFn()`.
.. versionchanged:: x.x.x
.. versionchanged:: 5.7.0
Prior to version x.x.x, any nonzero value for *pq* would result in use of the
Prior to version 5.7.0, any nonzero value for *pq* would result in use of the
embedding order of accuracy.
.. deprecated:: x.x.x
.. deprecated:: 5.7.0
Use the SUNAdaptController infrastructure instead (see :numref:`SUNAdaptController.Description`).
Expand All @@ -1818,7 +1818,7 @@ Explicit stability function :c:func:`ARKStepSetS
This should be called prior to calling :c:func:`ARKStepEvolve()`, and can only be
reset following a call to :c:func:`ARKStepReInit()`.
.. versionadded:: x.x.x
.. versionadded:: 5.7.0
.. c:function:: int ARKStepSetCFLFraction(void* arkode_mem, realtype cfl_frac)
Expand Down Expand Up @@ -1861,7 +1861,7 @@ Explicit stability function :c:func:`ARKStepSetS
:c:func:`ARKStepSetAdaptController` will be called, then this routine must be called
*second*.
.. deprecated:: x.x.x
.. deprecated:: 5.7.0
Use the SUNAdaptController infrastructure instead (see :numref:`SUNAdaptController.Description`).
Expand Down
Loading

0 comments on commit aaeab8d

Please sign in to comment.