33 #ifndef IVECTOR_VEC_FUNCTIONS_H_
34 #define IVECTOR_VEC_FUNCTIONS_H_
40 inline void VecAdd(
double a1, T &v1,
double a2,
const IVector &v2)
42 VecAdd(a1, v1, a2, v2.downcast<T>());
46 inline void VecAdd(
double a1, T &v1,
double a2,
const IVector &v2,
double a3,
const IVector &v3)
48 VecAdd(a1, v1, a2, v2.downcast<T>(), a3, v3.downcast<T>());
52 inline void VecAdd(
double a1, T &v1,
double a2,
const IVector &v2,
double a3,
const IVector &v3,
double a4,
const IVector &v4)
54 VecAdd(a1, v1, a2, v2.downcast<T>(), a3, v3.downcast<T>(), a4, v4.downcast<T>());
60 return VecProd(v1, v2.downcast<T>());
65 void VecAdd(
double a1, IVector &v1,
double a2,
const IVector &v2)
67 v1.vec_add(a1, a2, v2);
70 void VecAdd(
double a1, IVector &v1,
double a2,
const IVector &v2,
double a3,
const IVector &v3)
72 v1.vec_add(a1, a2, v2, a3, v3);
75 void VecAdd(
double a1, IVector &v1,
double a2,
const IVector &v2,
double a3,
const IVector &v3,
double a4,
const IVector &v4)
77 v1.vec_add(a1, a2, v2, a3, v3, a4, v4);
80 double VecProd(
const IVector &v1,
const IVector &v2)
82 return v1.vec_prod(v2);
double VecNorm(const IVector &v1)
Definition: ivector_vec_functions.h:90
double VecProd(T &v1, IVector &v2)
Definition: ivector_vec_functions.h:58
double VecNorm2(const IVector &v1)
Definition: ivector_vec_functions.h:85
void VecAdd(double a1, T &v1, double a2, const IVector &v2)
Definition: ivector_vec_functions.h:40