DOLFIN
DOLFIN C++ interface
Toggle main menu visibility
Loading...
Searching...
No Matches
dolfin
fem
MultiMeshAssembler.h
1
// Copyright (C) 2013-2014 Anders Logg
2
//
3
// This file is part of DOLFIN.
4
//
5
// DOLFIN is free software: you can redistribute it and/or modify
6
// it under the terms of the GNU Lesser General Public License as published by
7
// the Free Software Foundation, either version 3 of the License, or
8
// (at your option) any later version.
9
//
10
// DOLFIN is distributed in the hope that it will be useful,
11
// but WITHOUT ANY WARRANTY; without even the implied warranty of
12
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
// GNU Lesser General Public License for more details.
14
//
15
// You should have received a copy of the GNU Lesser General Public License
16
// along with DOLFIN. If not, see <http://www.gnu.org/licenses/>.
17
//
18
// First added: 2013-09-12
19
// Last changed: 2015-01-08
20
21
#ifndef __MultiMesh_ASSEMBLER_H
22
#define __MultiMesh_ASSEMBLER_H
23
24
#include "AssemblerBase.h"
25
#include "Assembler.h"
26
27
namespace
dolfin
28
{
29
30
// Forward declarations
31
class
GenericTensor
;
32
class
MultiMeshForm
;
33
36
37
class
MultiMeshAssembler
:
public
AssemblerBase
38
{
39
public
:
40
42
MultiMeshAssembler
();
43
50
void
assemble
(
GenericTensor
& A,
const
MultiMeshForm
& a);
51
58
bool
extend_cut_cell_integration
;
59
60
private
:
61
62
// Assemble over uncut cells
63
void
_assemble_uncut_cells(
GenericTensor
& A,
const
MultiMeshForm
& a);
64
65
// Assemble over cut cells
66
void
_assemble_cut_cells(
GenericTensor
& A,
const
MultiMeshForm
& a);
67
68
// Assemble over uncut exterior facets
69
void
_assemble_uncut_exterior_facets(
GenericTensor
& A,
const
MultiMeshForm
& a);
70
71
// Assemble over interface
72
void
_assemble_interface(
GenericTensor
& A,
const
MultiMeshForm
& a);
73
74
// Assemble over overlap
75
void
_assemble_overlap(
GenericTensor
& A,
const
MultiMeshForm
& a);
76
77
// Initialize global tensor
78
void
_init_global_tensor(
GenericTensor
& A,
const
MultiMeshForm
& a);
79
80
};
81
82
}
83
84
#endif
dolfin::AssemblerBase::AssemblerBase
AssemblerBase()
Constructor.
Definition
AssemblerBase.h:46
dolfin::GenericTensor
A common interface for arbitrary rank tensors.
Definition
GenericTensor.h:49
dolfin::MultiMeshAssembler::MultiMeshAssembler
MultiMeshAssembler()
Constructor.
Definition
MultiMeshAssembler.cpp:45
dolfin::MultiMeshAssembler::extend_cut_cell_integration
bool extend_cut_cell_integration
Definition
MultiMeshAssembler.h:58
dolfin::MultiMeshAssembler::assemble
void assemble(GenericTensor &A, const MultiMeshForm &a)
Definition
MultiMeshAssembler.cpp:51
dolfin::MultiMeshForm
Definition
MultiMeshForm.h:41
dolfin
Definition
adapt.h:30
Generated by
1.17.0