outerProduct(const RScalar<T1>& l, const RComplex<T2>& r)
outerProduct(const RScalar<T1>& l, const RScalar<T2>& r)
outerProduct(const RScalar<T1>& l, const RComplex<T2>& r){  typedef typename BinaryReturn<RScalar<T1>, RComplex<T2>, FnOuterProduct>::Type_t  Ret_t;  // Return   l*conj(r)  return Ret_t( l.elem()*r.real(),	       -l.elem()*r.imag());}