d.elem(i) = adjMultiply(l.elem(), r.elem(i));
{ d.elem(i) = adjMultiply(l.elem(0,i), r.elem(0)); for(int j=1; j < N; ++j) d.elem(i) += adjMultiply(l.elem(j,i), r.elem(j)); }
adjMultiply(const PScalar<T1>& l, const PVector<T2,N,C>& r){  typename BinaryReturn<PScalar<T1>, PVector<T2,N,C>, OpAdjMultiply>::Type_t  d;  for(int i=0; i < N; ++i)    d.elem(i) = adjMultiply(l.elem(), r.elem(i));  return d;}