void MatrixSymDiagStd::Mp_StM(
  DMatrixSlice* gms_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs) const
{
  using DenseLinAlgPack::Vp_StV;
  // Assert that the dimensions match up.
  DenseLinAlgPack::Mp_M_assert_sizes( gms_lhs->rows(), gms_lhs->cols(), BLAS_Cpp::no_trans
    , rows(), cols(), trans_rhs );
  // Add to the diagonal
  Vp_StV( &gms_lhs->diag(), alpha, diag_ );
}
inline
void Vp_V(DVectorSlice* vs_lhs, const V& V_rhs) {
  Vp_StV(vs_lhs,1.0,V_rhs);
}