Skip to content

Commit 8e4567f

Browse files
committed
Upgraded to version 7.3.0.
1 parent 75f9ebd commit 8e4567f

File tree

2,596 files changed

+269289
-39783
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

2,596 files changed

+269289
-39783
lines changed

CHANGELOG.md

Lines changed: 378 additions & 24 deletions
Large diffs are not rendered by default.

CITATIONS.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -68,52 +68,52 @@ they are using rather than the combined SUNDIALS online guide:
6868
@Misc{arkodeDocumentation,
6969
author = {Daniel R. Reynolds and David J. Gardner and Carol S. Woodward and Cody J. Balos},
7070
title = {User Documentation for ARKODE},
71-
year = {2024},
72-
note = {v6.1.0}
71+
year = {2025},
72+
note = {v6.3.0}
7373
}
7474
```
7575

7676
```bibtex
7777
@Misc{cvodeDocumentation,
7878
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
7979
title = {User Documentation for CVODE},
80-
year = {2024},
81-
note = {v7.1.0}
80+
year = {2025},
81+
note = {v7.3.0}
8282
}
8383
```
8484

8585
```bibtex
8686
@Misc{cvodesDocumentation,
8787
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
8888
title = {User Documentation for CVODES},
89-
year = {2024},
90-
note = {v7.1.0}
89+
year = {2025},
90+
note = {v7.3.0}
9191
}
9292
```
9393

9494
```bibtex
9595
@Misc{idaDocumentation,
9696
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
9797
title = {User Documentation for IDA},
98-
year = {2024},
99-
note = {v7.1.0}
98+
year = {2025},
99+
note = {v7.3.0}
100100
}
101101
```
102102

103103
```bibtex
104104
@Misc{idasDocumentation,
105105
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},
106106
title = {User Documentation for IDAS},
107-
year = {2024},
108-
note = {v6.1.0}
107+
year = {2025},
108+
note = {v6.3.0}
109109
}
110110
```
111111

112112
```bibtex
113113
@Misc{kinsolDocumentation,
114114
author = {Alan C. Hindmarsh and Radu Serban and Cody J. Balos and David J. Gardner and Daniel R. Reynolds and Carol S. Woodward},
115115
title = {User Documentation for KINSOL},
116-
year = {2024},
117-
note = {v7.1.0}
116+
year = {2025},
117+
note = {v7.3.0}
118118
}
119119
```

CMakeLists.txt

Lines changed: 59 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# and Slaven Peles @ LLNL
44
# ---------------------------------------------------------------
55
# SUNDIALS Copyright Start
6-
# Copyright (c) 2002-2024, Lawrence Livermore National Security
6+
# Copyright (c) 2002-2025, Lawrence Livermore National Security
77
# and Southern Methodist University.
88
# All rights reserved.
99
#
@@ -26,29 +26,25 @@ if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.24")
2626
cmake_policy(SET CMP0135 NEW)
2727
endif()
2828

29-
# Project SUNDIALS (initially only C supported)
30-
# sets PROJECT_SOURCE_DIR and PROJECT_BINARY_DIR variables.
29+
# Project SUNDIALS (initially only C supported) sets PROJECT_SOURCE_DIR and
30+
# PROJECT_BINARY_DIR variables.
3131
project(SUNDIALS C)
3232

3333
# Specify the location of additional CMAKE modules
3434
set(CMAKE_MODULE_PATH
35-
${CMAKE_MODULE_PATH}
36-
${PROJECT_SOURCE_DIR}/cmake
37-
${PROJECT_SOURCE_DIR}/cmake/macros
38-
${PROJECT_SOURCE_DIR}/cmake/tpl
39-
)
35+
${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake
36+
${PROJECT_SOURCE_DIR}/cmake/macros ${PROJECT_SOURCE_DIR}/cmake/tpl)
4037

4138
# MACRO definitions
4239
include(SundialsCMakeMacros)
4340
include(CMakePrintHelpers)
4441
include(CheckCSourceCompiles)
4542
include(FindPackageHandleStandardArgs)
4643

47-
4844
# Set some variables with info on the SUNDIALS project
4945
set(PACKAGE_BUGREPORT "[email protected]")
5046
set(PACKAGE_NAME "SUNDIALS")
51-
set(PACKAGE_STRING "SUNDIALS 7.1.0")
47+
set(PACKAGE_STRING "SUNDIALS 7.3.0")
5248
set(PACKAGE_TARNAME "sundials")
5349

5450
# Set SUNDIALS version numbers
@@ -57,7 +53,7 @@ message(STATUS "SUNDIALS_GIT_VERSION: ${SUNDIALS_GIT_VERSION}")
5753

5854
# (use "" for the version label if none is needed)
5955
set(PACKAGE_VERSION_MAJOR "7")
60-
set(PACKAGE_VERSION_MINOR "1")
56+
set(PACKAGE_VERSION_MINOR "3")
6157
set(PACKAGE_VERSION_PATCH "0")
6258
set(PACKAGE_VERSION_LABEL "")
6359

@@ -73,37 +69,37 @@ endif()
7369

7470
# Specify the VERSION and SOVERSION for shared libraries
7571

76-
set(arkodelib_VERSION "6.1.0")
72+
set(arkodelib_VERSION "6.3.0")
7773
set(arkodelib_SOVERSION "6")
7874

79-
set(cvodelib_VERSION "7.1.0")
75+
set(cvodelib_VERSION "7.3.0")
8076
set(cvodelib_SOVERSION "7")
8177

82-
set(cvodeslib_VERSION "7.1.0")
78+
set(cvodeslib_VERSION "7.3.0")
8379
set(cvodeslib_SOVERSION "7")
8480

85-
set(idalib_VERSION "7.1.0")
81+
set(idalib_VERSION "7.3.0")
8682
set(idalib_SOVERSION "7")
8783

88-
set(idaslib_VERSION "6.1.0")
84+
set(idaslib_VERSION "6.3.0")
8985
set(idaslib_SOVERSION "6")
9086

91-
set(kinsollib_VERSION "7.1.0")
87+
set(kinsollib_VERSION "7.3.0")
9288
set(kinsollib_SOVERSION "7")
9389

9490
set(cpodeslib_VERSION "0.0.0")
9591
set(cpodeslib_SOVERSION "0")
9692

97-
set(nveclib_VERSION "7.1.0")
93+
set(nveclib_VERSION "7.3.0")
9894
set(nveclib_SOVERSION "7")
9995

100-
set(sunmatrixlib_VERSION "5.1.0")
96+
set(sunmatrixlib_VERSION "5.3.0")
10197
set(sunmatrixlib_SOVERSION "5")
10298

103-
set(sunlinsollib_VERSION "5.1.0")
99+
set(sunlinsollib_VERSION "5.3.0")
104100
set(sunlinsollib_SOVERSION "5")
105101

106-
set(sunnonlinsollib_VERSION "4.1.0")
102+
set(sunnonlinsollib_VERSION "4.3.0")
107103
set(sunnonlinsollib_SOVERSION "4")
108104

109105
set(sundialslib_VERSION
@@ -117,39 +113,44 @@ set(sundialslib_SOVERSION "${PACKAGE_VERSION_MAJOR}")
117113

118114
# Prohibit in-source build
119115
if("${CMAKE_SOURCE_DIR}" STREQUAL "${CMAKE_BINARY_DIR}")
120-
print_error("In-source build prohibited.")
116+
message(FATAL_ERROR "In-source build prohibited.")
121117
endif()
122118

123119
# Organize targets into folders when using an IDE
124120
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
125121

126-
# Get correct build paths automatically, but expose LIBDIR and
127-
# INCLUDEDIR as a regular cache variable so that a user can more
128-
# easily see what they were set to by GNUInstallDirs.
122+
# Get correct build paths automatically, but expose LIBDIR and INCLUDEDIR as a
123+
# regular cache variable so that a user can more easily see what they were set
124+
# to by GNUInstallDirs.
129125
include(GNUInstallDirs)
130126
mark_as_advanced(CLEAR CMAKE_INSTALL_LIBDIR)
131127
mark_as_advanced(CLEAR CMAKE_INSTALL_INCLUDEDIR)
132128

133129
# Suffixes to use for static and shared targets.
134130
set(_STATIC_LIB_SUFFIX
135131
"_static"
136-
CACHE INTERNAL "" FORCE
137-
)
132+
CACHE INTERNAL "" FORCE)
138133
set(_SHARED_LIB_SUFFIX
139134
"_shared"
140-
CACHE INTERNAL "" FORCE
141-
)
135+
CACHE INTERNAL "" FORCE)
142136

143137
# A list of all the alias targets created.
144-
set(_SUNDIALS_ALIAS_TARGETS ""
138+
set(_SUNDIALS_ALIAS_TARGETS
139+
""
145140
CACHE INTERNAL "" FORCE)
146141

147142
# We default to release builds
148143
set(_DEFAULT_CMAKE_BUILD_TYPE RelWithDebInfo)
149144
if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
150-
message(STATUS "Building SUNDIALS in '${_DEFAULT_CMAKE_BUILD_TYPE}' mode as CMAKE_BUILD_TYPE was not specified.")
151-
set(CMAKE_BUILD_TYPE "${_DEFAULT_CMAKE_BUILD_TYPE}" CACHE STRING "Choose the type of build." FORCE)
152-
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo")
145+
message(
146+
STATUS
147+
"Building SUNDIALS in '${_DEFAULT_CMAKE_BUILD_TYPE}' mode as CMAKE_BUILD_TYPE was not specified."
148+
)
149+
set(CMAKE_BUILD_TYPE
150+
"${_DEFAULT_CMAKE_BUILD_TYPE}"
151+
CACHE STRING "Choose the type of build." FORCE)
152+
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release"
153+
"MinSizeRel" "RelWithDebInfo")
153154
else()
154155
message(STATUS "Building SUNDIALS in '${CMAKE_BUILD_TYPE}' mode.")
155156
endif()
@@ -186,18 +187,24 @@ include(SundialsSetupCompilers)
186187
include(SundialsSetupTPLs)
187188

188189
# ===============================================================
189-
# Build options to be proccessed last
190+
# Build options to be processed last
190191
# ===============================================================
191192

192193
include(SundialsBuildOptionsPost)
193194

194195
# ===============================================================
195-
# At this point all the configuration options are set.
196-
# Setup the sundials_config.h.
196+
# At this point all the configuration options are set. Setup the
197+
# sundials_config.h.
197198
# ===============================================================
198199

199200
include(SundialsSetupConfig)
200201

202+
# ===============================================================
203+
# Setup testing
204+
# ===============================================================
205+
206+
include(SundialsSetupTesting)
207+
201208
# ===============================================================
202209
# Add src and tests; optionally add examples and unit tests.
203210
# ===============================================================
@@ -207,17 +214,17 @@ add_subdirectory(src)
207214

208215
# Add selected examples to the build
209216
if(_BUILD_EXAMPLES)
210-
include(SundialsSetupTesting)
211217
add_subdirectory(examples)
212218
endif()
213219

214220
# Add benchmarks to the build
215221
if(BUILD_BENCHMARKS)
222+
include(SundialsSetupBenchmarks)
216223
add_subdirectory(benchmarks)
217224
endif()
218225

219-
# Add unit tests to the build if they are enabled
220-
if(SUNDIALS_TEST_UNITTESTS)
226+
# Add unit tests to the build
227+
if(SUNDIALS_TEST_ENABLE_UNIT_TESTS)
221228
add_subdirectory(test/unit_tests)
222229
endif()
223230

@@ -231,68 +238,56 @@ endif()
231238

232239
# install sundials_export header file
233240
install(FILES "${PROJECT_BINARY_DIR}/include/sundials/sundials_export.h"
234-
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials"
235-
)
241+
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials")
236242

237243
# install configured header file
238244
install(FILES "${PROJECT_BINARY_DIR}/include/sundials/sundials_config.h"
239-
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials"
240-
)
245+
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials")
241246

242247
# install shared Fortran 2003 modules
243248
if(BUILD_FORTRAN_MODULE_INTERFACE)
244-
# While the .mod files get generated for static and shared
245-
# libraries, they are identical. So only install one set
246-
# of the .mod files.
249+
# While the .mod files get generated for static and shared libraries, they are
250+
# identical. So only install one set of the .mod files.
247251
if(BUILD_STATIC_LIBS)
248252
install(DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}_STATIC/
249-
DESTINATION ${Fortran_INSTALL_MODDIR}
250-
)
253+
DESTINATION ${Fortran_INSTALL_MODDIR})
251254
else()
252255
install(DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}_SHARED/
253-
DESTINATION ${Fortran_INSTALL_MODDIR}
254-
)
256+
DESTINATION ${Fortran_INSTALL_MODDIR})
255257
endif()
256258
endif()
257259

258260
# install license and notice files
259261
install(FILES "${PROJECT_SOURCE_DIR}/LICENSE"
260-
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials"
261-
)
262+
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials")
262263
install(FILES "${PROJECT_SOURCE_DIR}/NOTICE"
263-
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials"
264-
)
264+
DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/sundials")
265265

266266
# create package version file
267267
include(CMakePackageConfigHelpers)
268268
write_basic_package_version_file(
269269
SUNDIALSConfigVersion.cmake
270270
VERSION ${PACKAGE_VERSION}
271-
COMPATIBILITY AnyNewerVersion
272-
)
271+
COMPATIBILITY AnyNewerVersion)
273272

274273
# install targets
275274
install(
276275
EXPORT sundials-targets
277276
FILE SUNDIALSTargets.cmake
278277
NAMESPACE SUNDIALS::
279-
DESTINATION "${SUNDIALS_INSTALL_CMAKEDIR}"
280-
)
278+
DESTINATION "${SUNDIALS_INSTALL_CMAKEDIR}")
281279

282280
# install SUNDIALSConfig.cmake
283281
configure_package_config_file(
284282
"${PROJECT_SOURCE_DIR}/cmake/SUNDIALSConfig.cmake.in"
285283
"${CMAKE_CURRENT_BINARY_DIR}/SUNDIALSConfig.cmake"
286-
INSTALL_DESTINATION "${SUNDIALS_INSTALL_CMAKEDIR}"
287-
)
284+
INSTALL_DESTINATION "${SUNDIALS_INSTALL_CMAKEDIR}")
288285
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/SUNDIALSConfig.cmake"
289286
"${CMAKE_CURRENT_BINARY_DIR}/SUNDIALSConfigVersion.cmake"
290-
DESTINATION "${SUNDIALS_INSTALL_CMAKEDIR}"
291-
)
287+
DESTINATION "${SUNDIALS_INSTALL_CMAKEDIR}")
292288

293289
# Export targets so build directory can be used directly
294290
export(
295291
EXPORT sundials-targets
296292
FILE "${CMAKE_CURRENT_BINARY_DIR}/SUNDIALSTargets.cmake"
297-
NAMESPACE SUNDIALS::
298-
)
293+
NAMESPACE SUNDIALS::)

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Contributing to SUNDIALS
22

3-
There are two primary ways of contributing to SUNDIALS. The first way is by particpating
3+
There are two primary ways of contributing to SUNDIALS. The first way is by participating
44
in the development of SUNDIALS directly through contributions of code to the primary
55
[SUNDIALS repository](https://github.com/LLNL/sundials). This is the best way to contribute
66
bug fixes and minor improvements. At this time, the SUNDIALS team does not have the resources

INSTALL_GUIDE.pdf

-835 KB
Binary file not shown.

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
BSD 3-Clause License
22

3-
Copyright (c) 2002-2024, Lawrence Livermore National Security and Southern Methodist University.
3+
Copyright (c) 2002-2025, Lawrence Livermore National Security and Southern Methodist University.
44
All rights reserved.
55

66
Redistribution and use in source and binary forms, with or without

0 commit comments

Comments
 (0)