localInnerproduct(const PVector<T1,N,C>& s1, const PVector<T1,N,C>& s2)
localInnerproduct(const PVector<T1,N,C>& s1, const PVector<T2,N,C>& s2)
localInnerproduct(const PVector<T1,N,C>& s1, const PVector<T1,N,C>& s2){  typename BinaryReturn<PVector<T1,N,C>, PVector<T2,N,C>, FnLocalInnerproduct>::Type_t  d;  d.elem() = localInnerproduct(s1.elem(0), s2.elem(0));  for(int i=1; i < N; ++i)    d.elem() += localInnerproduct(s1.elem(i), s2.elem(i));  return d;}