Toggle navigation
Documentation
Big picture
The finite element method
The data structure
Not-so-quick guide
Optimisation
Order of action functions
Example codes and tutorials
List of example codes and tutorials
Meshing
Solvers
MPI parallel processing
Post-processing/visualisation
Other
Change log
Creating documentation
Coding conventions
Index
FAQ
Get it
Installation guide
Get code from subversion repository
Get code as tar file
Copyright
About
People
Contact/Get involved
Publications
Acknowledgements
Picture show
Go
src
generic
quad_mesh.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// Version 1.0; svn revision $LastChangedRevision$
7
//LIC//
8
//LIC// $LastChangedDate$
9
//LIC//
10
//LIC// Copyright (C) 2006-2016 Matthias Heil and Andrew Hazel
11
//LIC//
12
//LIC// This library is free software; you can redistribute it and/or
13
//LIC// modify it under the terms of the GNU Lesser General Public
14
//LIC// License as published by the Free Software Foundation; either
15
//LIC// version 2.1 of the License, or (at your option) any later version.
16
//LIC//
17
//LIC// This library is distributed in the hope that it will be useful,
18
//LIC// but WITHOUT ANY WARRANTY; without even the implied warranty of
19
//LIC// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
//LIC// Lesser General Public License for more details.
21
//LIC//
22
//LIC// You should have received a copy of the GNU Lesser General Public
23
//LIC// License along with this library; if not, write to the Free Software
24
//LIC// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
25
//LIC// 02110-1301 USA.
26
//LIC//
27
//LIC// The authors may be contacted at oomph-lib@maths.man.ac.uk.
28
//LIC//
29
//LIC//====================================================================
30
// Common base class for all QuadMeshes
31
#ifndef OOMPH_QUAMESH_HEADER
32
#define OOMPH_QUAMESH_HEADER
33
34
// Config header generated by autoconfig
35
#ifdef HAVE_CONFIG_H
36
#include <oomph-lib-config.h>
37
#endif
38
39
#ifdef OOMPH_HAS_MPI
40
//mpi headers
41
#include "mpi.h"
42
#endif
43
44
//oomph-lib includes
45
#include "
Vector.h
"
46
#include "
nodes.h
"
47
#include "
matrices.h
"
48
#include "
mesh.h
"
49
50
namespace
oomph
51
{
52
53
///////////////////////////////////////////////////////////////////////
54
///////////////////////////////////////////////////////////////////////
55
///////////////////////////////////////////////////////////////////////
56
57
58
//================================================================
59
/// Base class for quad meshes (meshes made of 2D quad elements).
60
//================================================================
61
class
QuadMeshBase
:
public
virtual
Mesh
62
{
63
64
public
:
65
66
/// Constructor (empty)
67
QuadMeshBase
() {}
68
69
/// Broken copy constructor
70
QuadMeshBase
(
const
QuadMeshBase
& node)
71
{
72
BrokenCopy::broken_copy
(
"QuadMeshBase"
);
73
}
74
75
/// Broken assignment operator
76
void
operator=
(
const
QuadMeshBase
&)
77
{
78
BrokenCopy::broken_assign
(
"QuadMeshBase"
);
79
}
80
81
/// Destructor (empty)
82
virtual
~QuadMeshBase
(){}
83
84
/// Setup lookup schemes which establish whic elements are located
85
/// next to mesh's boundaries (wrapper to suppress doc).
86
void
setup_boundary_element_info
()
87
{
88
std::ofstream outfile;
89
setup_boundary_element_info
(outfile);
90
}
91
92
/// \short Setup lookup schemes which establish whic elements are located
93
/// next to mesh's boundaries. Doc in outfile (if it's open).
94
void
setup_boundary_element_info
(std::ostream &outfile);
95
96
};
97
98
}
99
100
#endif
101
matrices.h
oomph::BrokenCopy::broken_copy
void broken_copy(const std::string &class_name)
Issue error message and terminate execution.
Definition:
oomph_utilities.cc:107
mesh.h
oomph::QuadMeshBase::operator=
void operator=(const QuadMeshBase &)
Broken assignment operator.
Definition:
quad_mesh.h:76
oomph
Definition:
advection_diffusion_elements.cc:33
oomph::QuadMeshBase::setup_boundary_element_info
void setup_boundary_element_info()
Definition:
quad_mesh.h:86
Vector.h
nodes.h
oomph::QuadMeshBase
Base class for quad meshes (meshes made of 2D quad elements).
Definition:
quad_mesh.h:61
oomph::BrokenCopy::broken_assign
void broken_assign(const std::string &class_name)
Issue error message and terminate execution.
Definition:
oomph_utilities.cc:90
oomph::QuadMeshBase::QuadMeshBase
QuadMeshBase()
Constructor (empty)
Definition:
quad_mesh.h:67
oomph::QuadMeshBase::~QuadMeshBase
virtual ~QuadMeshBase()
Destructor (empty)
Definition:
quad_mesh.h:82
oomph::Mesh
A general mesh class.
Definition:
mesh.h:74
oomph::QuadMeshBase::QuadMeshBase
QuadMeshBase(const QuadMeshBase &node)
Broken copy constructor.
Definition:
quad_mesh.h:70