#include "petscvec.h" #include #include template class VectorP { public: void dot_product(VectorP& vecA, VectorP& vecB, T& prod) { VecDot(vecA.x, vecB.x, &prod); } private: Vec x; }; int main() { VectorP > a, b; std::vector p(2, 0.0); a.dot_product(a, b, p[1]); return 0; }