17#include <cusp/array1d.h>
29template <
typename LinearOperator,
30 typename MatrixOrVector1,
31 typename MatrixOrVector2>
33 const MatrixOrVector1& B,
39 cusp::detail::device::MVmultiply(A, B, C);
42template <
typename LinearOperator,
43 typename MatrixOrVector1,
44 typename MatrixOrVector2>
46 const MatrixOrVector1& B,
52 cusp::detail::device::OVmultiply(A, B, C);
55template <
typename MatrixOrVector,
56 typename MatrixOrVector1,
57 typename MatrixOrVector2>
58void MVdot(
const MatrixOrVector& A,
59 const MatrixOrVector1& B,
65 cusp::detail::device::MVdot(A, B, C);
68template <
typename ValueType,
69 typename MatrixOrVector1,
70 typename MatrixOrVector2>
72 const MatrixOrVector1& X,
74 const MatrixOrVector1& Y,
79 cusp::detail::device::axpby(A, X, B, Y, Z);
void MVdot(const MatrixOrVector &A, const MatrixOrVector1 &B, MatrixOrVector2 &C, cusp::device_memory, cusp::device_memory, cusp::device_memory)
void MVmultiply(const LinearOperator &A, const MatrixOrVector1 &B, MatrixOrVector2 &C, cusp::device_memory, cusp::device_memory, cusp::device_memory)
void axpby_array(const ValueType &A, const MatrixOrVector1 &X, const ValueType &B, const MatrixOrVector1 &Y, MatrixOrVector2 &Z, cusp::device_memory, cusp::device_memory)
void OVmultiply(const LinearOperator &A, const MatrixOrVector1 &B, MatrixOrVector2 &C, cusp::device_memory, cusp::device_memory, cusp::device_memory)