Veselin Dobrev
6caa552f0d
Fix SUNDIALS + CUDA support when using SUNDIALS < v6
2022-10-06 00:44:05 -07:00
Chris Vogl
f36aa1aece
corrected SUNLinSolSPFGMR wrapper to use SPFGMR instead of SPGMR
2022-09-21 13:47:40 -07:00
Cody J. Balos
0142bb7c81
Address undef. behavior from 'recursive' init of singleton
...
According to the standard, recusrive initialization of a static
object is undefined. Some compilers handle it fine, but XL does not.
Also ensure that only one instance of Sundials class instantiated.
2022-09-07 12:00:03 -07:00
Chris Vogl
3adeb1d4f8
adding missed SUNContext variables to CUDA calls
2022-08-29 14:28:33 -07:00
Chris Vogl
42f9c6dbf4
Update linalg/sundials.cpp
...
add comment to preprocessor directive
2022-08-25 13:02:34 -07:00
Chris Vogl
672e477364
Update linalg/sundials.cpp
...
add comment to preprocessor directive
2022-08-25 13:02:25 -07:00
Chris Vogl
00f7b2bd02
applied astyle changes
2022-08-25 12:25:21 -07:00
Chris Vogl
1cd2ff2364
GitHub tests noted a mispelling
2022-08-25 12:22:45 -07:00
Chris Vogl
4803dfa020
applied astyle changes
2022-08-25 12:04:57 -07:00
Chris Vogl
9b8d063584
added comments
2022-08-25 11:43:50 -07:00
Chris Vogl
fa50d81410
used namespaces to help differentiate C and C++ functions
2022-08-25 11:11:08 -07:00
Chris Vogl
635e3de561
overloaded SUNDIALS >= v6 calls for backwards compatibility
2022-08-24 16:57:53 -07:00
Chris Vogl
ff1e52c56a
moved definition of SundialsMemHelper to sundials.hpp so the sunmemHelper can be added to the singleton Sundials class instead of being a global variable
2022-08-24 14:15:52 -07:00
Chris Vogl
0c77c3535a
corrected SUNContext return code and shortened error message
2022-08-24 08:03:40 -07:00
Chris Vogl
80fd02ffbf
refactor of Sundials singleton to use static construction like Hypre singleton
2022-08-23 19:43:14 -07:00
Chris Vogl
413d860ea6
added first draft of Sundials singleton for SUNContext and updated all calls into Sundials
2022-08-23 17:13:22 -07:00
Chris Vogl
73bbfda158
using enum types ARKODE_DIRKTableID and ARKODE_ERKTableID instead of int to avoid permissive errors
2022-08-23 17:12:42 -07:00
Tzanio
6d2530775b
Extended copyright to 2022
2022-02-25 10:24:50 -08:00
Veselin Dobrev
9310e05a15
Override appropriately the SetPrintLevel methods in class KINSolver
2021-12-20 16:20:27 -08:00
Adrien M. Bernede
f4dbd3743d
Applying Astyle 3.1
2021-09-03 12:14:24 -07:00
Aaron Fisher
e758c37691
Removed nearly all leading underscores for variable names. Every once in a while one of these will confilct with standard libraries in an oddball compiler and it's best to just avoid this problem alltogether.
2021-05-10 16:06:51 -07:00
Adrien M. Bernede
04fb572359
Let's forget about 2020
2021-01-26 11:55:36 -08:00
Veselin Dobrev
ca7cf33e51
In class CVODESSolver, add a wrapper for CVodeSetMaxNumStepsB
...
and use it in miniapps/adjoint/cvsRoberts_ASAi_dns.cpp to
increase the default value.
2020-10-30 14:48:21 -07:00
Tzanio
d472fe16d9
Changes in the linalg/ directory before the mfem-4.2 release
2020-10-24 19:06:53 -07:00
Julian Andrej
8ed2b92887
remove code duplication for printlevel
2020-10-05 16:33:34 -07:00
Julian Andrej
5161740a87
adapt to new sundials
2020-10-05 16:22:30 -07:00
Julian Andrej
a2dd91f7a8
Merge branch 'master' into jfnk
2020-10-05 15:24:43 -07:00
Julian Andrej
0829c40ef1
simplify JFNK codepath
2020-09-25 14:29:12 -07:00
Julian Andrej
ce0b3e3b20
add support for KINSOL JFNK
2020-09-24 12:48:42 -07:00
Balos, Cody Joe
027d27fdf9
various minor fixes to address reviewer comments:
...
- use wildcard to detect sundials library directory
- add some error strings
- remove dead code
2020-09-22 17:04:10 -07:00
Balos, Cody Joe
c879180508
call HostRead after ::Step to ensure data is up to date on host
2020-09-22 17:01:11 -07:00
Balos, Cody Joe
c36d6ca2b1
sundials-gpu-dev: a couple minor fixes
2020-09-21 08:57:45 -07:00
Balos, Cody Joe
a5bb313e52
Update to SUNDIALS 5.4.0 RC
...
This has no changes to the CPU only code (all changes were in
MFEM_USE_CUDA ifdef). The primary change is that mfem controls the
lifetime of the SUNMemoryHelper, thus the SundialsMemHelper class and
mfem::sunmemHelper were added.
2020-09-11 01:09:55 -07:00
Balos, Cody Joe
a35d0c984d
revert accidental change
2020-09-03 11:55:35 -07:00
Balos, Cody Joe
311eb40ac3
remove TODO comments about ToNVector function
2020-09-03 11:43:01 -07:00
Balos, Cody Joe
3f62a99c64
update N_NewCustom name
2020-08-31 15:54:44 -07:00
Balos, Cody Joe
6f78235cfe
keep sundials backwards compatibility when not using cuda
2020-08-26 13:20:36 -07:00
Balos, Cody Joe
937db1a293
Add support for SUNDIALS GPU features
...
Add support for SUNDIALS CUDA features. These changes will be easily
extendable to support future GPU features in SUNDIALS, e.g. HIP
features. To keep things clean, this creates a SundialsNVector
class to interface with the SUNDIALS N_Vector. This class inherits
from the mfem::Vector class, and follows the pattern used in MFEM
interfaces to other libraries such as PETSc and hypre.
2020-08-26 13:20:36 -07:00
Tzanio
40e633b36f
minor styling
2020-07-14 18:04:38 -07:00
Tzanio
39a6c88595
Various styling edits
2020-07-05 18:41:58 -07:00
Jonathan Wong
85349d3a95
Properly intialize quad integration vectors.
...
Fixed memory errors in ToNVector and initialize in CVODESSolver::RHSB
2020-06-22 23:34:43 -07:00
Jonathan Wong
02f6ca0ef2
Freed the nvector to prevent a memory leak
2020-06-15 15:05:20 -07:00
Jonathan Wong
58997c32bd
initialized N_Vector pointer to struct type to NULL
2020-06-09 14:07:26 -07:00
Jonathan Wong
213b6e51d3
Added documentation for building with cvodes to default files. Changed name from objective sensitivity to quadrature sensitivity for consistency. Added documentation to sundials files.
2020-05-07 21:24:30 -07:00
Jonathan Wong
9a0f991da6
added NumSteps calls which might be useful for controlling aspects of stepsizes
2020-05-07 13:26:35 -07:00
Jonathan Wong
e63ac279c1
Merge branch 'master' of github.com:mfem/mfem into CVODESSolver-dev
...
Fixed merge conflict in linalg/operator.hpp.
Cleaned up linalg/sundials.cpp a little bit.
Reverted defaults.mk change.
2020-03-30 12:49:40 -07:00
Jonathan Wong
8b7f15cdca
revert astyle changes
2020-03-30 12:45:43 -07:00
Jonathan Wong
3f4a6ce0d2
ran astyle
2020-03-25 12:58:46 -07:00
Jonathan Wong
4ee2b18d97
Changed from SetN_Vector to .ToNVector. Fixed implementation as suggested by gardner
...
Added an extra argument to Vector::ToNVector() to better handle parallel vectors
2020-03-25 12:58:33 -07:00
Tzanio
419bd7c6d7
Some edits in linalg/
2020-03-09 20:01:11 -07:00