16#ifndef dealii_sundials_n_vector_h
17#define dealii_sundials_n_vector_h
21#ifdef DEAL_II_WITH_SUNDIALS
22# include <sundials/sundials_nvector.h>
34 template <
typename VectorType>
44# if DEAL_II_SUNDIALS_VERSION_GTE(6, 0, 0)
69 template <
typename VectorType>
98 template <
typename VectorType>
100 make_nvector_view(VectorType &vector);
115 template <
typename VectorType>
130 template <
typename VectorType>
153 template <
typename VectorType>
165# if DEAL_II_SUNDIALS_VERSION_GTE(6, 0, 0)
217 operator N_Vector() const;
229 std::unique_ptr<_generic_N_Vector,
std::function<
void(N_Vector)>>
NVectorView(VectorType &vector, SUNContext nvector_context)
NVectorView(NVectorView &&) noexcept=default
std::unique_ptr< _generic_N_Vector, std::function< void(N_Vector)> > vector_ptr
NVectorView< VectorType > make_nvector_view(VectorType &vector, SUNContext nvector_context)
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
VectorType * unwrap_nvector(N_Vector v)
const VectorType * unwrap_nvector_const(N_Vector v)