OOFEM 3.0
Loading...
Searching...
No Matches
pfemnumberingschemes.h
Go to the documentation of this file.
1/*
2 *
3 * ##### ##### ###### ###### ### ###
4 * ## ## ## ## ## ## ## ### ##
5 * ## ## ## ## #### #### ## # ##
6 * ## ## ## ## ## ## ## ##
7 * ## ## ## ## ## ## ## ##
8 * ##### ##### ## ###### ## ##
9 *
10 *
11 * OOFEM : Object Oriented Finite Element Code
12 *
13 * Copyright (C) 1993 - 2025 Borek Patzak
14 *
15 *
16 *
17 * Czech Technical University, Faculty of Civil Engineering,
18 * Department of Structural Mechanics, 166 29 Prague, Czech Republic
19 *
20 * This library is free software; you can redistribute it and/or
21 * modify it under the terms of the GNU Lesser General Public
22 * License as published by the Free Software Foundation; either
23 * version 2.1 of the License, or (at your option) any later version.
24 *
25 * This program is distributed in the hope that it will be useful,
26 * but WITHOUT ANY WARRANTY; without even the implied warranty of
27 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
28 * Lesser General Public License for more details.
29 *
30 * You should have received a copy of the GNU Lesser General Public
31 * License along with this library; if not, write to the Free Software
32 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
33 */
34
35#ifndef pfemnumberingschemes_h
36#define pfemnumberingschemes_h
37
39#include "dof.h"
40#include "domain.h"
41#include "dofmanager.h"
42
43namespace oofem {
51{
52protected:
57 int neq;
62
63public:
68
72 virtual void init(Domain *domain, TimeStep *tStep);
73 virtual bool isDefault() const override { return false; }
74 virtual int giveDofEquationNumber(Dof *dof) const override;
75 virtual int giveRequiredNumberOfDomainEquation() const override;
76
78 virtual int giveTotalNumberOfEquations() const;
79
81 virtual int giveTotalNumberOfPrescribedEquations() const;
82
84 virtual void reset();
85};
86
93{
94protected:
96 int numEqs;
99
100public:
104 virtual ~VelocityNumberingScheme();
105
107 void reset() { numEqs = 0; }
108 virtual bool isDefault() const override { return !prescribed; }
109 virtual int giveDofEquationNumber(Dof *dof) const override;
110 virtual int giveRequiredNumberOfDomainEquation() const override { return numEqs; }
111
113 int askNewEquationNumber() { return ++numEqs; }
115 Dof *giveDofToEquationNumber(Domain *d, int equationNumber);
116};
117
126{
127protected:
132 int neq;
133
134public:
139
141 virtual void reset() { neq = 0; }
142
144 virtual void init(Domain *domain);
145
146 virtual int giveDofEquationNumber(Dof *dof) const override;
147 virtual int giveRequiredNumberOfDomainEquation() const override;
148};
149} // end namespace oofem
150#endif // pfemnumberingschemes_h
virtual ~AuxVelocityNumberingScheme()
Destructor.
virtual void reset()
Resets the numbering in order to start numbering again from 1.
IntArray nodalAuxVelocityEquationNumbers
Nodal equation numbers are stored in an IntArray.
virtual int giveRequiredNumberOfDomainEquation() const override
virtual int giveDofEquationNumber(Dof *dof) const override
virtual int giveTotalNumberOfPrescribedEquations() const
Returns total number of prescribed equations.
bool isInitialized
Flag controlling wether the numbering has been initialized or not.
int pres_neq
Last given number of prescribed equation.
IntArray nodalPressureEquationNumbers
Container storing particular equation numbers for each node.
virtual int giveTotalNumberOfEquations() const
Returns total number of equations.
virtual void reset()
Resets the numbering in order to start numbering again from 1.
virtual bool isDefault() const override
virtual int giveDofEquationNumber(Dof *dof) const override
virtual int giveRequiredNumberOfDomainEquation() const override
int neq
Last given number of equation.
virtual ~PressureNumberingScheme()
Destructor.
int askNewEquationNumber()
Asks new equation number.
virtual int giveDofEquationNumber(Dof *dof) const override
virtual ~VelocityNumberingScheme()
Destructor.
virtual int giveRequiredNumberOfDomainEquation() const override
virtual bool isDefault() const override
VelocityNumberingScheme(bool prescribed)
Constructor.
bool prescribed
prescribed equations or not
Dof * giveDofToEquationNumber(Domain *d, int equationNumber)
Returns Dof with passed equation number.
int numEqs
Last given equation number.
void reset()
Resets the numbering in order to start numbering again from 1.

This page is part of the OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak Bořek Patzák
Project e-mail: oofem@fsv.cvut.cz
Generated at for OOFEM by doxygen 1.15.0 written by Dimitri van Heesch, © 1997-2011