int AccpmLASymmLinSolve(SymmetricMatrix &A, RealMatrix &X, const RealMatrix &B) { LaLowerTriangMatDouble L(A); char uplo = 'L'; long int n = A.size(0); long int lda = A.inc(0) * A.gdim(0); long int nrhs = B.size(1); long int ldb = B.inc(0) * B.gdim(0); long int info; X.inject(B); F77NAME(dposv) (&uplo, &n, &nrhs, &L(0,0), &lda, &X(0,0), &ldb, &info); if (info > 0) { std::cerr << "AccpmLASymmLinSolve: Symmetric Matrix is not positive-definite." << std::endl; } else if (info < 0) { std::cerr << "AccpmLASymmLinSolve: argument " << -info << " is invalid" << std::endl; } return info; }