Skip to content
Snippets Groups Projects
Commit d2b57781 authored by Oliver Sander's avatar Oliver Sander
Browse files

Merge branch 'export-cholmod-factor' into 'master'

Export the cholmod_factor object

See merge request core/dune-istl!455
parents 58fc99f0 e4545673
No related branches found
No related tags found
1 merge request!455Export the cholmod_factor object
Pipeline #41731 passed
......@@ -6,6 +6,10 @@
In some numerical tests with a Stokes system this lead to earlier termination when using the same
termination criterion.
- The `Cholmod` class now provides access to the `cholmod_factor` class that is
used by `CHOLMOD` itself to store the Cholesky factor. This can be used to
use the more advanced features of `CHOLMOD`.
# Release 2.8
- Extended the MatrixMarket IO functions for reading and writing vectors with
......
......@@ -238,7 +238,7 @@ public:
nonZeros, // # of nonzeroes
1, // indices are sorted ( 1 = true)
1, // matrix is "packed" ( 1 = true)
-1, // stype of matrix ( -1 = cosider the lower part only )
-1, // stype of matrix ( -1 = consider the lower part only )
CHOLMOD_REAL, // xtype of matrix ( CHOLMOD_REAL = single array, no complex numbers)
&c_ // cholmod_common ptr
), deleter);
......@@ -337,9 +337,29 @@ public:
return c_;
}
/** \brief The CHOLMOD data structure that stores the factorization
*
* Access to this is necessary for the more advanced features of CHOLMOD.
* You need to know what you are doing!
*/
cholmod_factor& cholmodFactor()
{
return *L_;
}
/** \brief The CHOLMOD data structure that stores the factorization
*
* Access to this is necessary for the more advanced features of CHOLMOD.
* You need to know what you are doing!
*/
const cholmod_factor& cholmodFactor() const
{
return *L_;
}
private:
// create a destrucable unique_ptr
// create a std::unique_ptr to a cholmod_dense object with a deleter
// that calls the appropriate cholmod cleanup routine
auto make_cholmod_dense(cholmod_dense* x, cholmod_common* c)
{
const auto deleter = [c](auto* p) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment