Home
About Us
Publications
Developers
Installation
Examples
Documentation
SomeWebsiteLogo
Home
About Us
Publications
Developers
Installation
Examples
Documentation
include
libmesh
sibling_coupling.h
Go to the documentation of this file.
1
// The libMesh Finite Element Library.
2
// Copyright (C) 2002-2018 Benjamin S. Kirk, John W. Peterson, Roy H. Stogner
3
4
// This library is free software; you can redistribute it and/or
5
// modify it under the terms of the GNU Lesser General Public
6
// License as published by the Free Software Foundation; either
7
// version 2.1 of the License, or (at your option) any later version.
8
9
// This library is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
// Lesser General Public License for more details.
13
14
// You should have received a copy of the GNU Lesser General Public
15
// License along with this library; if not, write to the Free Software
16
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
18
19
20
#ifndef LIBMESH_SIBLING_COUPLING_H
21
#define LIBMESH_SIBLING_COUPLING_H
22
23
// Local Includes
24
#include "
libmesh/ghosting_functor.h
"
25
26
namespace
libMesh
27
{
28
39
class
SiblingCoupling
:
public
GhostingFunctor
40
{
41
public
:
42
46
SiblingCoupling
() :
47
_dof_coupling
(nullptr) {}
48
49
// Change coupling matrix after construction
50
void
set_dof_coupling
(
const
CouplingMatrix
* dof_coupling)
51
{
_dof_coupling
= dof_coupling; }
52
57
virtual
void
operator()
(
const
MeshBase::const_element_iterator
& range_begin,
58
const
MeshBase::const_element_iterator
& range_end,
59
processor_id_type
p,
60
map_type
& coupled_elements);
61
62
private
:
63
64
const
CouplingMatrix
*
_dof_coupling
;
65
};
66
67
}
// namespace libMesh
68
69
#endif // LIBMESH_SIBLING_COUPLING_H
libMesh::GhostingFunctor
Definition:
ghosting_functor.h:136
libMesh::MeshBase::const_element_iterator
Definition:
mesh_base.h:1527
libMesh::SiblingCoupling::set_dof_coupling
void set_dof_coupling(const CouplingMatrix *dof_coupling)
Definition:
sibling_coupling.h:50
libMesh::processor_id_type
uint8_t processor_id_type
Definition:
id_types.h:99
libMesh
Definition:
default_coupling.C:31
libMesh::SiblingCoupling::SiblingCoupling
SiblingCoupling()
Definition:
sibling_coupling.h:46
libMesh::GhostingFunctor::map_type
std::unordered_map< const Elem *, const CouplingMatrix * > map_type
Definition:
ghosting_functor.h:154
libMesh::SiblingCoupling::_dof_coupling
const CouplingMatrix * _dof_coupling
Definition:
sibling_coupling.h:64
libMesh::SiblingCoupling
Definition:
sibling_coupling.h:39
ghosting_functor.h
libMesh::SiblingCoupling::operator()
virtual void operator()(const MeshBase::const_element_iterator &range_begin, const MeshBase::const_element_iterator &range_end, processor_id_type p, map_type &coupled_elements)
Definition:
sibling_coupling.C:29
libMesh::CouplingMatrix
Defines the coupling between variables of a System.
Definition:
coupling_matrix.h:54
generated by