Loading [MathJax]/extensions/tex2jax.js
Fluid structure interaction suite
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
stokes.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2022 by Luca Heltai
4 //
5 // This file is part of the FSI-suite platform, based on the deal.II library.
6 //
7 // The FSI-suite platform is free software; you can use it, redistribute it,
8 // and/or modify it under the terms of the GNU Lesser General Public License as
9 // published by the Free Software Foundation; either version 3.0 of the License,
10 // or (at your option) any later version. The full text of the license can be
11 // found in the file LICENSE at the top level of the FSI-suite platform
12 // distribution.
13 //
14 // ---------------------------------------------------------------------
15 #ifndef pdes_stokes_h
16 #define pdes_stokes_h
17 
18 #include "parsed_lac/amg.h"
19 #include "parsed_lac/ilu.h"
21 #include "parsed_tools/constants.h"
22 #include "pdes/linear_problem.h"
23 
24 namespace PDEs
25 {
26  using namespace dealii;
27 
31  template <int dim, class LacType>
32  class Stokes : public LinearProblem<dim, dim, LacType>
33  {
34  public:
39  Stokes();
40 
44  virtual ~Stokes() = default;
45 
47 
49 
51 
52  protected:
56  virtual void
57  assemble_system_one_cell(
58  const typename DoFHandler<dim>::active_cell_iterator &cell,
59  ScratchData &scratch,
60  CopyData &copy) override;
61 
65  virtual void
66  solve() override;
67 
69  typename LacType::AMG schur_preconditioner;
71 
72 
75  };
76 
77  namespace MPI
78  {
79  template <int dim>
81  }
82 
83  namespace Serial
84  {
85  template <int dim>
87  }
88 } // namespace PDEs
89 #endif
Construct a LinearProblem.
Solve the Stokes problem, in parallel.
Definition: stokes.h:33
LacType::AMG schur_preconditioner
Definition: stokes.h:69
ParsedTools::Constants constants
Definition: stokes.h:68
ParsedLAC::InverseOperator schur_solver
Definition: stokes.h:70
typename LinearProblem< dim, dim, LacType >::CopyData CopyData
Definition: stokes.h:48
const FEValuesExtractors::Vector velocity
Definition: stokes.h:73
typename LinearProblem< dim, dim, LacType >::ScratchData ScratchData
Definition: stokes.h:46
const FEValuesExtractors::Scalar pressure
Definition: stokes.h:74
virtual ~Stokes()=default
Destroy the Stokes object.
typename LinearProblem< dim, dim, LacType >::VectorType VectorType
Definition: stokes.h:50
A factory that can generate inverse operators according to parameter files.
A wrapper for physical constants to be shared among functions and classes.
Definition: constants.h:44
PDEs::Stokes< dim, LAC::LAdealii > Stokes
Definition: stokes.h:86
We collect in this namespace all PDEs that are relevant to Fluid Structure Interaction Problems.