GEOSX
HypreInterface.hpp
Go to the documentation of this file.
1 /*
2  * ------------------------------------------------------------------------------------------------------------
3  * SPDX-License-Identifier: LGPL-2.1-only
4  *
5  * Copyright (c) 2018-2020 Lawrence Livermore National Security LLC
6  * Copyright (c) 2018-2020 The Board of Trustees of the Leland Stanford Junior University
7  * Copyright (c) 2018-2020 Total, S.A
8  * Copyright (c) 2019- GEOSX Contributors
9  * All rights reserved
10  *
11  * See top level LICENSE, COPYRIGHT, CONTRIBUTORS, NOTICE, and ACKNOWLEDGEMENTS files for details.
12  * ------------------------------------------------------------------------------------------------------------
13  */
14 
19 #ifndef GEOSX_LINEARALGEBRA_INTERFACES_HYPREINTERFACE_HPP_
20 #define GEOSX_LINEARALGEBRA_INTERFACES_HYPREINTERFACE_HPP_
21 
25 #include "linearAlgebra/solvers/PreconditionerBase.hpp"
26 
27 #include <memory>
28 
29 namespace geosx
30 {
31 
37 {
44  static void initialize( int & argc, char * * & argv );
45 
49  static void finalize();
50 
56  static std::unique_ptr< PreconditionerBase< HypreInterface > >
58 
65  static std::unique_ptr< PreconditionerBase< HypreInterface > >
67  array1d< HypreVector > const & nearNullKernel );
68 
75 
76 };
77 
78 } /* namespace geosx */
79 
80 #endif /*GEOSX_LINEARALGEBRA_INTERFACES_HYPREINTERFACE_HPP_*/
Wrapper class for hypre&#39;s ParVector.
Definition: HypreVector.hpp:55
Wrapper class for hypre&#39;s ParCSRMatrix.
Definition: HypreMatrix.hpp:58
static std::unique_ptr< PreconditionerBase< HypreInterface > > createPreconditioner(LinearSolverParameters params)
Create a hypre-based preconditioner object.
This class holds aliases based on the Hypre library.
Set of parameters for a linear solver or preconditioner.
static void finalize()
Finalizes the MPI environment for the Hypre library.
This class creates and provides basic support for Hypre solvers.
Definition: HypreSolver.hpp:35
static void initialize(int &argc, char **&argv)
Initializes the MPI environment for the Hypre library.
This class provides a fixed dimensional resizeable array interface in addition to an interface simila...
Definition: Array.hpp:55