HArD::Core3D
Hybrid Arbitrary Degree::Core 3D - Library to implement 3D schemes with vertex, edge, face and cell polynomials as unknowns
Public Types | Public Member Functions | List of all members
HArDCore3D::Brinkman Struct Reference

Structure for Brinkman model. More...

#include <hho-brinkman.hpp>

Public Types

typedef Eigen::SparseMatrix< double > SystemMatrixType
 
typedef std::function< VectorRd(const VectorRd &)> MomentumForcingTermType
 
typedef std::function< double(const VectorRd &)> CompressibilityForcingTermType
 
typedef std::function< VectorRd(const VectorRd &)> VelocityType
 
typedef std::function< MatrixRd(const VectorRd &)> VelocityGradientType
 
typedef std::function< double(const VectorRd &)> PressureType
 
typedef std::function< VectorRd(const VectorRd &)> PressureGradientType
 

Public Member Functions

 Brinkman (const VHHOSpace &vhho_space, const GlobalDOFSpace &p_space, const BoundaryConditions &BC, bool use_threads, std::ostream &output=std::cout)
 Constructor. More...
 
void assembleLinearSystem (const MomentumForcingTermType &f, const CompressibilityForcingTermType &g, const BrinkmanParameters &para, const VelocityType &u, Eigen::VectorXd &UDir)
 Assemble the global system
More...
 
size_t nloc_sc_u () const
 Returns the local number of velocity statically condensed DOFs. More...
 
size_t nloc_sc_p () const
 Returns the local number of pressure statically condensed DOFs. More...
 
size_t numSCDOFs_u () const
 Returns the number of velocity statically condensed DOFs. More...
 
size_t numSCDOFs_p () const
 Returns the number of pressure statically condensed DOFs. More...
 
size_t numSCDOFs () const
 Returns the number of statically condensed DOFs. More...
 
size_t numDirDOFs () const
 Returns the number of Dirichlet DOFs. More...
 
size_t dimVelocity () const
 Returns the dimension of velocity space. More...
 
size_t dimPressure () const
 Returns the dimension of pressure space. More...
 
size_t numNonSCDOFs () const
 Returns the number of DOFs after SC and with Lagrange multiplier, but before eliminating Dirichlet DOFs. More...
 
size_t sizeSystem () const
 Returns the size of the final system with Lagrange multiplier, after application of SC and removal of Dirichlet BCs. More...
 
const VHHOSpace & vhhospace () const
 Returns the velocity space. More...
 
const GlobalDOFSpace & pspace () const
 Returns the pressure space. More...
 
const Mesh & mesh () const
 Returns the mesh. More...
 
const SystemMatrixType & systemMatrix () const
 Returns the linear system matrix. More...
 
SystemMatrixType & systemMatrix ()
 Returns the linear system matrix. More...
 
const Eigen::VectorXd & systemVector () const
 Returns the linear system right-hand side vector. More...
 
Eigen::VectorXd & systemVector ()
 Returns the linear system right-hand side vector. More...
 
const std::pair< double, double > & stabilizationParameter () const
 Returns the stabilization parameter (scaling) More...
 
std::pair< double, double > & stabilizationParameter ()
 Returns the stabilization parameter. More...
 
const SystemMatrixType & scMatrix () const
 Returns the static condensation recovery operator. More...
 
Eigen::VectorXd & scVector ()
 Returns the static condensation rhs. More...
 
Eigen::VectorXd interpolate (const VelocityType &u, const PressureType &p, const int doe_cell=-1, const int doe_face=-1) const
 Interpolates velocity and pressure. More...
 
std::vector< BrinkmanNorms > computeBrinkmanNorms (const std::vector< Eigen::VectorXd > &list_dofs, const BrinkmanParameters &para) const
 Compute the discrete energy norm of a family of vectors representing the dofs. More...
 
std::vector< double > pressureVertexValues (const Eigen::VectorXd &p) const
 Create vertex values for the pressure (from the element values), for plotting. More...
 
std::pair< double, double > computeConditionNum () const
 Computes the condition number of the matrix. More...
 
std::pair< double, double > computeFlux (const Eigen::VectorXd &u, const std::pair< std::vector< VectorRd >, VectorRd > &surf) const
 Compute the velocity flux (integral of u.n) across a given surface, and the area of the surface, assumed to be star-shaped with respect the barycenter of its vertices. More...
 

Detailed Description

Structure for Brinkman model.

The global unknowns are in the following order:


The documentation for this struct was generated from the following files: