12 #ifndef MFEM_HYBRIDIZATION
13 #define MFEM_HYBRIDIZATION
15 #include "../config/config.hpp"
20 #include "../linalg/hypre.hpp"
134 void ReduceRHS(
const Vector &b, Vector &b_r)
const;
FiniteElementSpace * c_fes
Array< int > Af_f_offsets
void SetConstraintIntegrator(BilinearFormIntegrator *c_integ)
void GetBDofs(int el, int &num_idofs, Array< int > &b_dofs) const
HypreParMatrix & GetParallelMatrix()
Return the parallel hybridized matrix.
Data type dense matrix using column-major storage.
void Reset()
Destroy the current hybridization matrix while preserving the computed constraint matrix and the set ...
void Finalize()
Finalize the construction of the hybridized matrix.
void AssembleBdrMatrix(int bdr_el, const DenseMatrix &A)
Assemble the boundary element matrix A into the hybridized system matrix.
SparseMatrix & GetMatrix()
Return the serial hybridized matrix.
void ComputeSolution(const Vector &b, const Vector &sol_r, Vector &sol) const
void MultAfInv(const Vector &b, const Vector &lambda, Vector &bf, int mode) const
BilinearFormIntegrator * c_bfi
void AssembleMatrix(int el, const DenseMatrix &A)
Assemble the element matrix A into the hybridized system matrix.
void GetIBDofs(int el, Array< int > &i_dofs, Array< int > &b_dofs) const
~Hybridization()
Destructor.
Array< int > hat_dofs_marker
void ReduceRHS(const Vector &b, Vector &b_r) const
void Init(const Array< int > &ess_tdof_list)
Prepare the Hybridization object for assembly.
Wrapper for hypre's ParCSR matrix class.
Hybridization(FiniteElementSpace *fespace, FiniteElementSpace *c_fespace)
Constructor.