Skip to content

Commit 1fe3850

Browse files
committed
upgrading to sundials v6.0.0; adding config files
1 parent a45e73e commit 1fe3850

3 files changed

Lines changed: 305 additions & 0 deletions

File tree

Lines changed: 212 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,212 @@
1+
/* -----------------------------------------------------------------
2+
* Programmer(s): Cody J. Balos, Aaron Collier and Radu Serban @ LLNL
3+
* -----------------------------------------------------------------
4+
* SUNDIALS Copyright Start
5+
* Copyright (c) 2002-2021, Lawrence Livermore National Security
6+
* and Southern Methodist University.
7+
* All rights reserved.
8+
*
9+
* See the top-level LICENSE and NOTICE files for details.
10+
*
11+
* SPDX-License-Identifier: BSD-3-Clause
12+
* SUNDIALS Copyright End
13+
* -----------------------------------------------------------------
14+
* SUNDIALS configuration header file.
15+
* -----------------------------------------------------------------*/
16+
17+
#ifndef _SUNDIALS_CONFIG_H
18+
#define _SUNDIALS_CONFIG_H
19+
20+
#include "sundials_export.h"
21+
22+
#ifndef SUNDIALS_DEPRECATED_MSG
23+
# define SUNDIALS_DEPRECATED_MSG(msg) __attribute__ ((__deprecated__(msg)))
24+
#endif
25+
26+
#ifndef SUNDIALS_DEPRECATED_EXPORT_MSG
27+
# define SUNDIALS_DEPRECATED_EXPORT_MSG(msg) SUNDIALS_EXPORT SUNDIALS_DEPRECATED_MSG(msg)
28+
#endif
29+
30+
#ifndef SUNDIALS_DEPRECATED_NO_EXPORT_MSG
31+
# define SUNDIALS_DEPRECATED_NO_EXPORT_MSG(msg) SUNDIALS_NO_EXPORT SUNDIALS_DEPRECATED_MSG(msg)
32+
#endif
33+
34+
/* ------------------------------------------------------------------
35+
* Define SUNDIALS version numbers
36+
* -----------------------------------------------------------------*/
37+
38+
39+
#define SUNDIALS_VERSION "6.0.0"
40+
#define SUNDIALS_VERSION_MAJOR 6
41+
#define SUNDIALS_VERSION_MINOR 0
42+
#define SUNDIALS_VERSION_PATCH 0
43+
#define SUNDIALS_VERSION_LABEL ""
44+
#define SUNDIALS_GIT_VERSION ""
45+
46+
47+
/* ------------------------------------------------------------------
48+
* SUNDIALS build information
49+
* -----------------------------------------------------------------*/
50+
51+
52+
/* Define precision of SUNDIALS data type 'realtype'
53+
* Depending on the precision level, one of the following
54+
* three macros will be defined:
55+
* #define SUNDIALS_SINGLE_PRECISION 1
56+
* #define SUNDIALS_DOUBLE_PRECISION 1
57+
* #define SUNDIALS_EXTENDED_PRECISION 1
58+
*/
59+
#define SUNDIALS_DOUBLE_PRECISION 1
60+
61+
/* Define type of vector indices in SUNDIALS 'sunindextype'.
62+
* Depending on user choice of index type, one of the following
63+
* two macros will be defined:
64+
* #define SUNDIALS_INT64_T 1
65+
* #define SUNDIALS_INT32_T 1
66+
*/
67+
#define SUNDIALS_INT64_T 1
68+
69+
/* Define the type of vector indices in SUNDIALS 'sunindextype'.
70+
* The macro will be defined with a type of the appropriate size.
71+
*/
72+
#define SUNDIALS_INDEX_TYPE int64_t
73+
74+
/* Use generic math functions
75+
* If it was decided that generic math functions can be used, then
76+
* #define SUNDIALS_USE_GENERIC_MATH
77+
*/
78+
#define SUNDIALS_USE_GENERIC_MATH
79+
80+
/* Use POSIX timers if available.
81+
* #define SUNDIALS_HAVE_POSIX_TIMERS
82+
*/
83+
#define SUNDIALS_HAVE_POSIX_TIMERS
84+
85+
/* BUILD CVODE with fused kernel functionality */
86+
/* #undef SUNDIALS_BUILD_PACKAGE_FUSED_KERNELS */
87+
88+
/* BUILD SUNDIALS with monitoring functionalities */
89+
/* #undef SUNDIALS_BUILD_WITH_MONITORING */
90+
91+
/* BUILD SUNDIALS with profiling functionalities */
92+
/* #undef SUNDIALS_BUILD_WITH_PROFILING */
93+
94+
/* ------------------------------------------------------------------
95+
* SUNDIALS TPL macros
96+
* -----------------------------------------------------------------*/
97+
98+
/* Caliper */
99+
/* #undef SUNDIALS_CALIPER_ENABLED */
100+
101+
/* MAGMA backends */
102+
#define SUNDIALS_MAGMA_BACKENDS_CUDA
103+
/* #undef SUNDIALS_MAGMA_BACKENDS_HIP */
104+
105+
/* Set if SUNDIALS is built with MPI support, then
106+
* #define SUNDIALS_MPI_ENABLED 1
107+
* otherwise
108+
* #define SUNDIALS_MPI_ENABLED 0
109+
*/
110+
#define SUNDIALS_MPI_ENABLED 0
111+
112+
/* SUPERLUMT threading type */
113+
/* #undef SUNDIALS_SUPERLUMT_THREAD_TYPE */
114+
115+
/* Trilinos with MPI is available, then
116+
* #define SUNDIALS_TRILINOS_HAVE_MPI
117+
*/
118+
/* #undef SUNDIALS_TRILINOS_HAVE_MPI */
119+
120+
/* RAJA backends */
121+
#define SUNDIALS_RAJA_BACKENDS_CUDA
122+
/* #undef SUNDIALS_RAJA_BACKENDS_HIP */
123+
/* #undef SUNDIALS_RAJA_BACKENDS_SYCL */
124+
125+
/* ------------------------------------------------------------------
126+
* SUNDIALS modules enabled
127+
* -----------------------------------------------------------------*/
128+
129+
#define SUNDIALS_ARKODE 1
130+
#define SUNDIALS_CVODE 1
131+
#define SUNDIALS_CVODES 1
132+
#define SUNDIALS_IDA 1
133+
#define SUNDIALS_IDAS 1
134+
#define SUNDIALS_KINSOL 1
135+
#define SUNDIALS_NVECTOR_SERIAL 1
136+
#define SUNDIALS_NVECTOR_MANYVECTOR 1
137+
#define SUNDIALS_SUNMATRIX_BAND 1
138+
#define SUNDIALS_SUNMATRIX_DENSE 1
139+
#define SUNDIALS_SUNMATRIX_SPARSE 1
140+
#define SUNDIALS_SUNLINSOL_BAND 1
141+
#define SUNDIALS_SUNLINSOL_DENSE 1
142+
#define SUNDIALS_SUNLINSOL_PCG 1
143+
#define SUNDIALS_SUNLINSOL_SPBCGS 1
144+
#define SUNDIALS_SUNLINSOL_SPFGMR 1
145+
#define SUNDIALS_SUNLINSOL_SPGMR 1
146+
#define SUNDIALS_SUNLINSOL_SPTFQMR 1
147+
#define SUNDIALS_SUNNONLINSOL_NEWTON 1
148+
#define SUNDIALS_SUNNONLINSOL_FIXEDPOINT 1
149+
150+
151+
152+
/* ------------------------------------------------------------------
153+
* SUNDIALS fortran configuration
154+
* -----------------------------------------------------------------*/
155+
156+
157+
/* Define Fortran name-mangling macro for C identifiers.
158+
* Depending on the inferred scheme, one of the following six
159+
* macros will be defined:
160+
* #define SUNDIALS_F77_FUNC(name,NAME) name
161+
* #define SUNDIALS_F77_FUNC(name,NAME) name ## _
162+
* #define SUNDIALS_F77_FUNC(name,NAME) name ## __
163+
* #define SUNDIALS_F77_FUNC(name,NAME) NAME
164+
* #define SUNDIALS_F77_FUNC(name,NAME) NAME ## _
165+
* #define SUNDIALS_F77_FUNC(name,NAME) NAME ## __
166+
*/
167+
168+
169+
/* Define Fortran name-mangling macro for C identifiers
170+
* which contain underscores.
171+
*/
172+
173+
174+
/* Allow user to specify different MPI communicator
175+
* If it was found that the MPI implementation supports MPI_Comm_f2c, then
176+
* #define SUNDIALS_MPI_COMM_F2C 1
177+
* otherwise
178+
* #define SUNDIALS_MPI_COMM_F2C 0
179+
*/
180+
181+
182+
183+
/* ------------------------------------------------------------------
184+
* SUNDIALS inline macros.
185+
* -----------------------------------------------------------------*/
186+
187+
188+
/* Mark SUNDIALS function as inline.
189+
*/
190+
#ifndef SUNDIALS_CXX_INLINE
191+
#define SUNDIALS_CXX_INLINE inline
192+
#endif
193+
194+
#ifndef SUNDIALS_C_INLINE
195+
#ifndef __STDC_VERSION__ /* must be c89 or c90 */
196+
#define SUNDIALS_C_INLINE
197+
#else
198+
#define SUNDIALS_C_INLINE inline
199+
#endif
200+
#endif
201+
202+
#ifdef __cplusplus
203+
#define SUNDIALS_INLINE SUNDIALS_CXX_INLINE
204+
#else
205+
#define SUNDIALS_INLINE SUNDIALS_C_INLINE
206+
#endif
207+
208+
/* Mark SUNDIALS function as static inline.
209+
*/
210+
#define SUNDIALS_STATIC_INLINE static SUNDIALS_INLINE
211+
212+
#endif /* _SUNDIALS_CONFIG_H */
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
2+
#ifndef SUNDIALS_EXPORT_H
3+
#define SUNDIALS_EXPORT_H
4+
5+
#ifdef SUNDIALS_STATIC_DEFINE
6+
# define SUNDIALS_EXPORT
7+
# define SUNDIALS_NO_EXPORT
8+
#else
9+
# ifndef SUNDIALS_EXPORT
10+
# ifdef sundials_generic_EXPORTS
11+
/* We are building this library */
12+
# define SUNDIALS_EXPORT __attribute__((visibility("default")))
13+
# else
14+
/* We are using this library */
15+
# define SUNDIALS_EXPORT __attribute__((visibility("default")))
16+
# endif
17+
# endif
18+
19+
# ifndef SUNDIALS_NO_EXPORT
20+
# define SUNDIALS_NO_EXPORT __attribute__((visibility("hidden")))
21+
# endif
22+
#endif
23+
24+
#ifndef SUNDIALS_DEPRECATED
25+
# define SUNDIALS_DEPRECATED __attribute__ ((__deprecated__))
26+
#endif
27+
28+
#ifndef SUNDIALS_DEPRECATED_EXPORT
29+
# define SUNDIALS_DEPRECATED_EXPORT SUNDIALS_EXPORT SUNDIALS_DEPRECATED
30+
#endif
31+
32+
#ifndef SUNDIALS_DEPRECATED_NO_EXPORT
33+
# define SUNDIALS_DEPRECATED_NO_EXPORT SUNDIALS_NO_EXPORT SUNDIALS_DEPRECATED
34+
#endif
35+
36+
#if 0 /* DEFINE_NO_DEPRECATED */
37+
# ifndef SUNDIALS_NO_DEPRECATED
38+
# define SUNDIALS_NO_DEPRECATED
39+
# endif
40+
#endif
41+
42+
#endif /* SUNDIALS_EXPORT_H */
Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/* -----------------------------------------------------------------
2+
* Programmer(s): Cody J. Balos @ LLNL
3+
* -----------------------------------------------------------------
4+
* SUNDIALS Copyright Start
5+
* Copyright (c) 2002-2021, Lawrence Livermore National Security
6+
* and Southern Methodist University.
7+
* All rights reserved.
8+
*
9+
* See the top-level LICENSE and NOTICE files for details.
10+
*
11+
* SPDX-License-Identifier: BSD-3-Clause
12+
* SUNDIALS Copyright End
13+
* -----------------------------------------------------------------
14+
* This header files defines internal utility functions and macros
15+
* for SUNDIALS debugging.
16+
* -----------------------------------------------------------------*/
17+
18+
#ifndef _SUNDIALS_DEBUG_H
19+
#define _SUNDIALS_DEBUG_H
20+
21+
#include <stdio.h>
22+
23+
#ifdef __cplusplus /* wrapper to enable C++ usage */
24+
extern "C" {
25+
#endif
26+
27+
/*
28+
* Macro which prints to stderr when in debug mode
29+
*/
30+
#ifdef SUNDIALS_DEBUG
31+
#define SUNDIALS_DEBUG_PRINT(str) fprintf(stderr, str)
32+
#else
33+
#define SUNDIALS_DEBUG_PRINT(str)
34+
#endif
35+
36+
/*
37+
* Macro which prints error messages in debug mode
38+
*/
39+
#ifdef SUNDIALS_DEBUG
40+
#define SUNDIALS_DEBUG_ERROR(msg) \
41+
fprintf(stderr, "ERROR in %s (%s line %d): %s", \
42+
__func__, __FILE__, __LINE__, msg);
43+
#else
44+
#define SUNDIALS_DEBUG_ERROR(msg)
45+
#endif
46+
47+
#ifdef __cplusplus /* wrapper to enable C++ usage */
48+
}
49+
#endif
50+
51+
#endif /* _SUNDIALS_DEBUG_H */

0 commit comments

Comments
 (0)