71 const Teuchos::SerialDenseMatrix<ordinal_type, value_type>& Input,
72 Teuchos::SerialDenseMatrix<ordinal_type, value_type>& Result,
77 Teuchos::LAPACK<ordinal_type, value_type> lapack;
80 Teuchos::SerialDenseMatrix<ordinal_type, value_type> L(
A);
90 Teuchos::SerialDenseMatrix<ordinal_type, value_type> D(n,n);
98 Teuchos::SerialDenseMatrix<ordinal_type, value_type> U(
A);
106 Result.assign(Input);
109 Teuchos::SerialDenseMatrix<ordinal_type, value_type> M(n,n);
110 M.multiply(Teuchos::NO_TRANS,Teuchos::NO_TRANS,1.0, L, D, 0.0);
113 lapack.TRTRS(
'L',
'N',
'N', M.numRows(), 1, M.values(), M.stride(), Result.values(), Result.stride(),&info);
116 lapack.TRTRS(
'U',
'N',
'N', U.numRows(), 1, U.values(), U.stride(), Result.values(), Result.stride(),&info);
120 lapack.TRTRS(
'L',
'N',
'N', L.numRows(), 1, L.values(), L.stride(), Result.values(), Result.stride(),&info);