42 #ifndef EPETRA_EXT_POLYNOMIAL_VECTOR_TRAITS_H 43 #define EPETRA_EXT_POLYNOMIAL_VECTOR_TRAITS_H 45 #include "Teuchos_PolynomialTraits.hpp" 46 #include "Teuchos_RCP.hpp" 47 #include "Epetra_Vector.h" 58 class PolynomialTraits<Epetra_Vector> {
68 static inline Teuchos::RCP<coeff_type>
clone(
const coeff_type& c) {
69 return Teuchos::rcp(
new Epetra_Vector(c));
73 static inline void copy(
const coeff_type& x, coeff_type* y) {
78 static inline void assign(coeff_type* y,
const scalar_type& alpha) {
83 static inline void update(coeff_type* y,
const coeff_type& x,
84 const scalar_type& beta) {
85 y->Update(1.0, x, beta);
92 #endif // EPETRA_EXT_POLYNOMIAL_VECTOR_TRAITS_Hx static void update(coeff_type *y, const coeff_type &x, const scalar_type &beta)
y = x + beta*y
Epetra_Vector coeff_type
Typename of coefficients.
static void assign(coeff_type *y, const scalar_type &alpha)
Assign a scalar to a coefficient.
static void copy(const coeff_type &x, coeff_type *y)
Copy a coefficient.
double scalar_type
Typename of scalars.
static Teuchos::RCP< coeff_type > clone(const coeff_type &c)
Clone a coefficient.