galerkin_equal_order/space_time_unsteady_heat_block_preconditionable_elements.h
Go to the documentation of this file.
1// LIC// ====================================================================
2// LIC// This file forms part of oomph-lib, the object-oriented,
3// LIC// multi-physics finite-element library, available
4// LIC// at http://www.oomph-lib.org.
5// LIC//
6// LIC// Copyright (C) 2006-2025 Matthias Heil and Andrew Hazel
7// LIC//
8// LIC// This library is free software; you can redistribute it and/or
9// LIC// modify it under the terms of the GNU Lesser General Public
10// LIC// License as published by the Free Software Foundation; either
11// LIC// version 2.1 of the License, or (at your option) any later version.
12// LIC//
13// LIC// This library is distributed in the hope that it will be useful,
14// LIC// but WITHOUT ANY WARRANTY; without even the implied warranty of
15// LIC// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16// LIC// Lesser General Public License for more details.
17// LIC//
18// LIC// You should have received a copy of the GNU Lesser General Public
19// LIC// License along with this library; if not, write to the Free Software
20// LIC// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21// LIC// 02110-1301 USA.
22// LIC//
23// LIC// The authors may be contacted at oomph-lib@maths.man.ac.uk.
24// LIC//
25// LIC//====================================================================
26// Header file for SpaceTimeUnsteadyHeat elements
27#ifndef OOMPH_SPACE_TIME_UNSTEADY_HEAT_BLOCK_PRECONDITIONABLE_ELEMENTS_HEADER
28#define OOMPH_SPACE_TIME_UNSTEADY_HEAT_BLOCK_PRECONDITIONABLE_ELEMENTS_HEADER
29
30// Config header
31#ifdef HAVE_CONFIG_H
32#include <oomph-lib-config.h>
33#endif
34
35// Space-time block preconditionable elements machinery
39
40////////////////////////////////////////////////////////////////////////////
41////////////////////////////////////////////////////////////////////////////
42////////////////////////////////////////////////////////////////////////////
43
44namespace oomph
45{
46 //======start_of_BlockPrecQUnsteadyHeatSpaceTimeElement====================
47 /// Block preconditionable version of UnsteadyHeatSpaceTimeElement
48 //=========================================================================
49 template<unsigned SPATIAL_DIM, unsigned NNODE_1D>
51 : public virtual QUnsteadyHeatSpaceTimeElement<SPATIAL_DIM, NNODE_1D>,
53 {
54 public:
55 /// Empty constructor
61
62 /// Empty destructor
64
65 /// Overload the pure virtual base class implementation.
66 /// Create a list of pairs for all unknowns in this element,
67 /// so the first entry in each pair contains the global equation
68 /// number of the unknown, while the second one contains the number
69 /// of the "DOF type" that this unknown is associated with.
71 std::list<std::pair<unsigned long, unsigned>>& dof_lookup_list) const;
72 };
73
74 //======start_of_BlockPrecQUnsteadyHeatSpaceTimeElement====================
75 /// Block preconditionable version of UnsteadyHeatSpaceTimeElement
76 //=========================================================================
77 template<unsigned SPATIAL_DIM, unsigned NNODE_1D>
79 : public virtual RefineableQUnsteadyHeatSpaceTimeElement<SPATIAL_DIM,
80 NNODE_1D>,
82 {
83 public:
84 /// Empty constructor
90
91 /// Empty destructor
93
94 /// Overload the pure virtual base class implementation.
95 /// Create a list of pairs for all unknowns in this element,
96 /// so the first entry in each pair contains the global equation
97 /// number of the unknown, while the second one contains the number
98 /// of the "DOF type" that this unknown is associated with.
100 std::list<std::pair<unsigned long, unsigned>>& dof_lookup_list) const;
101 };
102} // End of namespace oomph
103#endif
void get_dof_numbers_for_unknowns(std::list< std::pair< unsigned long, unsigned > > &dof_lookup_list) const
Overload the pure virtual base class implementation. Create a list of pairs for all unknowns in this ...
void get_dof_numbers_for_unknowns(std::list< std::pair< unsigned long, unsigned > > &dof_lookup_list) const
Overload the pure virtual base class implementation. Create a list of pairs for all unknowns in this ...
Block preconditionable space-time element base class. NOTE: It has to derive from GeneralisedElement ...
QUnsteadyHeatSpaceTimeElement elements are quadrilateral/brick- shaped UnsteadyHeat elements with iso...
Refineable version of 2D QUnsteadyHeatSpaceTimeElement elements.
TAdvectionDiffusionReactionElement<NREAGENT,DIM,NNODE_1D> elements are isoparametric triangular DIM-d...
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).