Esempio n. 1
0
void VectorTemplate<T>::getSubVectorCopy(int i,MyT& a) const
{
  Assert(&a != this);
  Assert(isValidIndex(i));
  Assert(isValidIndex(i+a.n-1));
  gen_array_equal(a.getStart(),a.stride, getStart()+stride*i,stride, a.n);
}
Esempio n. 2
0
void VectorTemplate<T>::copySubVector(int i,const MyT& a)
{
  Assert(this != &a);
  Assert(isValidIndex(i));
  Assert(isValidIndex(i+a.n-1));
	gen_array_equal(getStart()+i*stride,stride, a.getStart(),a.stride, a.n);
}
Esempio n. 3
0
const VectorTemplate<T>& VectorTemplate<T>::operator = (const MyT& a)
{
  if(this == &a) return *this;
  if(n!=a.n) resize(a.n);
  gen_array_equal(getStart(),stride, a.getStart(),a.stride, n);
  return *this;
}
Esempio n. 4
0
T VectorTemplate<T>::dot(const MyT& a) const
{
  CHECKEMPTY();
  Assert(size()==a.size());
  return gen_array_dot(getStart(),stride, a.getStart(),a.stride, n);
}
Esempio n. 5
0
void VectorTemplate<T>::setNegative(const MyT& a)
{
  CHECKRESIZE(a.n);
  gen_array_negate(getStart(),stride, a.getStart(),a.stride, n);
}
Esempio n. 6
0
void VectorTemplate<T>::madd(const MyT& v, T c)
{
	Assert(size() == v.size());
  gen_array_madd(getStart(),stride, v.getStart(),v.stride, c,n);
}
Esempio n. 7
0
void VectorTemplate<T>::dec(const MyT& v)
{
	Assert(size() == v.size());
  gen_array_dec(getStart(),stride, v.getStart(),v.stride, n);
}
Esempio n. 8
0
void VectorTemplate<T>::axpby(T a,const MyT& x,T b,const MyT& y)
{
  Assert(x.n == y.n);
  CHECKRESIZE(x.n);
  gen_array_axpby(getStart(),stride, a, x.getStart(),x.stride, b, y.getStart(),y.stride,n);
}
Esempio n. 9
0
void VectorTemplate<T>::div(const MyT& a, T c)
{
	CHECKRESIZE(a.n);
	gen_array_div(getStart(),stride, a.getStart(),a.stride, c, n);
}
Esempio n. 10
0
void VectorTemplate<T>::sub(const MyT& a, const MyT& b)
{
  Assert(a.size() == b.size());
  CHECKRESIZE(a.n);
	gen_array_sub(getStart(),stride, a.getStart(),a.stride, b.getStart(),b.stride, n);
}
Esempio n. 11
0
void VectorTemplate<T>::copy(const MyT& a)
{
  if(this == &a) return;
  CHECKRESIZE(a.n);
  gen_array_equal(getStart(),stride, a.getStart(),a.stride, n);
}