1#ifndef THESIS_ASSEMBLE_BUILD_SYSTEM_MATRIX_H
2#define THESIS_ASSEMBLE_BUILD_SYSTEM_MATRIX_H
10#include <lf/assemble/coomatrix.h>
11#include <lf/assemble/dofhandler.h>
12#include <lf/mesh/entity.h>
13#include <lf/mesh/mesh.h>
14#include <lf/mesh/utils/mesh_data_set.h>
15#include <lf/quad/quad_rule.h>
44std::tuple<lf::assemble::COOMatrix<double>, Eigen::VectorXd>
46 const std::shared_ptr<const lf::mesh::Mesh> &mesh,
48 const std::function<Eigen::Vector2d(
const Eigen::Vector2d &)> &f,
52 bool modified_penalty =
false);
72std::tuple<lf::assemble::COOMatrix<double>, Eigen::VectorXd, Eigen::VectorXd>
74 const std::shared_ptr<const lf::mesh::Mesh> &mesh,
76 const std::function<Eigen::Vector2d(
const Eigen::Vector2d &)> &f,
80 bool modified_penalty =
false);
A general (interface) class for DOF handling, see Lecture Document Paragraph 2.7.4....
Interface class representing a topological entity in a cellular complex
Represents a Quadrature Rule over one of the Reference Elements.
std::tuple< lf::assemble::COOMatrix< double >, Eigen::VectorXd, Eigen::VectorXd > buildSystemMatrixInOutFlow(const std::shared_ptr< const lf::mesh::Mesh > &mesh, const lf::assemble::DofHandler &dofh, const std::function< Eigen::Vector2d(const Eigen::Vector2d &)> &f, const std::function< Eigen::Vector2d(const lf::mesh::Entity &)> &dirichlet_data, double sigma, const lf::quad::QuadRule &quadrule, bool modified_penalty)
Build the system matrix for the stokes system with in- and out flow boundary conditions.
std::tuple< lf::assemble::COOMatrix< double >, Eigen::VectorXd > buildSystemMatrixNoFlow(const std::shared_ptr< const lf::mesh::Mesh > &mesh, const lf::assemble::DofHandler &dofh, const std::function< Eigen::Vector2d(const Eigen::Vector2d &)> &f, const std::function< Eigen::Vector2d(const lf::mesh::Entity &)> &dirichlet_data, double sigma, const lf::quad::QuadRule &quadrule, bool modified_penalty)
Build the system matrix for the stokes system with no flow boundary conditions.