libMesh
include
reduced_basis
transient_rb_assembly_expansion.h
Go to the documentation of this file.
1
// rbOOmit: An implementation of the Certified Reduced Basis method.
2
// Copyright (C) 2009, 2010 David J. Knezevic
3
4
// This file is part of rbOOmit.
5
6
// rbOOmit is free software; you can redistribute it and/or
7
// modify it under the terms of the GNU Lesser General Public
8
// License as published by the Free Software Foundation; either
9
// version 2.1 of the License, or (at your option) any later version.
10
11
// rbOOmit is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
// Lesser General Public License for more details.
15
16
// You should have received a copy of the GNU Lesser General Public
17
// License along with this library; if not, write to the Free Software
18
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
20
#ifndef LIBMESH_TRANSIENT_RB_ASSEMBLY_EXPANSION_H
21
#define LIBMESH_TRANSIENT_RB_ASSEMBLY_EXPANSION_H
22
23
// libMesh includes
24
#include "libmesh/rb_assembly_expansion.h"
25
26
// C++ includes
27
28
namespace
libMesh
29
{
30
40
class
TransientRBAssemblyExpansion
:
public
RBAssemblyExpansion
41
{
42
public
:
43
47
TransientRBAssemblyExpansion
();
48
52
void
perform_M_interior_assembly
(
unsigned
int
q,
53
FEMContext
& context);
54
58
void
perform_M_boundary_assembly
(
unsigned
int
q,
59
FEMContext
& context);
60
65
unsigned
int
get_n_M_terms
()
const
;
66
71
void
attach_M_assembly
(
ElemAssembly
* A_q_assembly);
72
76
ElemAssembly
&
get_M_assembly
(
unsigned
int
q);
77
78
private
:
79
85
std::vector<ElemAssembly *>
_M_assembly_vector
;
86
};
87
88
}
89
90
#endif // LIBMESH_TRANSIENT_RB_ASSEMBLY_EXPANSION_H
libMesh::TransientRBAssemblyExpansion::get_n_M_terms
unsigned int get_n_M_terms() const
Get Q_m, the number of terms in the affine expansion for the bilinear form.
Definition:
transient_rb_assembly_expansion.C:56
libMesh::TransientRBAssemblyExpansion::perform_M_interior_assembly
void perform_M_interior_assembly(unsigned int q, FEMContext &context)
Perform the specified M interior assembly.
Definition:
transient_rb_assembly_expansion.C:34
libMesh
The libMesh namespace provides an interface to certain functionality in the library.
Definition:
factoryfunction.C:55
libMesh::TransientRBAssemblyExpansion::get_M_assembly
ElemAssembly & get_M_assembly(unsigned int q)
Return a reference to the specified M_assembly object.
Definition:
transient_rb_assembly_expansion.C:66
libMesh::TransientRBAssemblyExpansion::attach_M_assembly
void attach_M_assembly(ElemAssembly *A_q_assembly)
Attach ElemAssembly object for the time-derivative (both interior and boundary assembly).
Definition:
transient_rb_assembly_expansion.C:61
libMesh::RBAssemblyExpansion
This class stores the set of ElemAssembly functor objects that define the "parameter-independent expa...
Definition:
rb_assembly_expansion.h:44
libMesh::TransientRBAssemblyExpansion::perform_M_boundary_assembly
void perform_M_boundary_assembly(unsigned int q, FEMContext &context)
Perform the specified M boundary assembly.
Definition:
transient_rb_assembly_expansion.C:45
libMesh::TransientRBAssemblyExpansion::_M_assembly_vector
std::vector< ElemAssembly * > _M_assembly_vector
Vectors storing the function pointers to the assembly routines for the time-derivative operators,...
Definition:
transient_rb_assembly_expansion.h:85
libMesh::TransientRBAssemblyExpansion::TransientRBAssemblyExpansion
TransientRBAssemblyExpansion()
Constructor.
Definition:
transient_rb_assembly_expansion.C:30
libMesh::ElemAssembly
ElemAssembly provides a per-element (interior and boundary) assembly functionality.
Definition:
elem_assembly.h:38
libMesh::TransientRBAssemblyExpansion
This extends RBAssemblyExpansion to provide an assembly expansion for the case of time-dependent PDEs...
Definition:
transient_rb_assembly_expansion.h:40
libMesh::FEMContext
This class provides all data required for a physics package (e.g.
Definition:
fem_context.h:62
Generated on Sat Jan 25 2020 12:06:55 for libMesh by
1.8.16