33 #ifndef __H__UG__LIB_DISC__SPATIAL_DISC__ELEM_DISC__NEUMANN_BOUNDARY___NEUMANN_BOUNDARY_FV__
34 #define __H__UG__LIB_DISC__SPATIAL_DISC__ELEM_DISC__NEUMANN_BOUNDARY___NEUMANN_BOUNDARY_FV__
40 #include "../neumann_boundary_base.h"
44 template<
typename TDomain>
71 using typename base_type::Data;
77 std::string BndSubsets, std::string InnerSubsets,
81 import.set_data(data);
84 template<
typename TElem,
typename TFVGeom>
87 template <
typename TElem,
typename TFVGeom>
89 std::vector<std::vector<number> > vvvLinDef[],
93 std::vector<MathVector<refDim> >*
local_ips();
99 std::vector<MathVector<dim> >
vGloIP;
108 std::string BndSubsets, std::string InnerSubsets)
118 std::string BndSubsets, std::string InnerSubsets)
132 virtual void prepare_setting(
const std::vector<LFEID>& vLfeID,
bool bNonRegularGrid);
147 template<
typename TElem,
typename TFVGeom>
149 template<
typename TElem,
typename TFVGeom>
151 template<
typename TElem,
typename TFVGeom>
153 template<
typename TElem,
typename TFVGeom>
161 template<
typename TElem,
typename TFVGeom>
void register_func();
Definition: smart_pointer.h:108
Type based UserData.
Definition: user_data.h:501
The base class for all geometric objects, such as vertices, edges, faces, volumes,...
Definition: grid_base_objects.h:157
Definition: elem_disc_interface.h:760
Identifier for Local Finite Elements.
Definition: local_finite_element_id.h:98
Definition: local_algebra.h:198
Definition: neumann_boundary_base.h:47
static const int dim
World dimension.
Definition: neumann_boundary_base.h:57
Definition: neumann_boundary_fv.h:47
void register_func()
Definition: neumann_boundary_fv.cpp:463
std::vector< NumberData > m_vNumberData
Definition: neumann_boundary_fv.h:124
void finish_elem_loop()
Definition: neumann_boundary_fv.cpp:266
void prep_elem(const LocalVector &u, GridObject *elem, const ReferenceObjectID roid, const MathVector< dim > vCornerCoords[])
Definition: neumann_boundary_fv.cpp:179
std::vector< BNDNumberData > m_vBNDNumberData
Definition: neumann_boundary_fv.h:125
void add_rhs_elem(LocalVector &d, GridObject *elem, const MathVector< dim > vCornerCoords[])
Definition: neumann_boundary_fv.cpp:197
NeumannBoundaryBase< TDomain > base_type
Base class type.
Definition: neumann_boundary_fv.h:50
void prep_elem_loop(const ReferenceObjectID roid, const int si)
Definition: neumann_boundary_fv.cpp:119
LFEID m_lfeID
current shape function set
Definition: neumann_boundary_fv.h:139
virtual void prepare_setting(const std::vector< LFEID > &vLfeID, bool bNonRegularGrid)
type of trial space for each function used
Definition: neumann_boundary_fv.cpp:53
NeumannBoundaryFV< TDomain > this_type
Base class type.
Definition: neumann_boundary_fv.h:53
static const int dim
World dimension.
Definition: neumann_boundary_fv.h:57
void update_subset_groups()
Definition: neumann_boundary_fv.cpp:101
void register_all_funcs(int order)
int m_si
current inner subset
Definition: neumann_boundary_fv.h:142
static const int _C_
Definition: neumann_boundary_fv.h:157
NeumannBoundaryFV(const char *function)
default constructor
Definition: neumann_boundary_fv.cpp:44
std::vector< VectorData > m_vVectorData
Definition: neumann_boundary_fv.h:126
int m_order
current order of disc scheme
Definition: neumann_boundary_fv.h:136
void add(SmartPtr< CplUserData< number, dim > > data, const char *BndSubsets, const char *InnerSubsets)
Definition: neumann_boundary_fv.cpp:78
ReferenceObjectID
these ids are used to identify the shape of a geometric object.
Definition: grid_base_objects.h:74
base class for user data
Definition: neumann_boundary_base.h:87
Conditional scalar user data.
Definition: neumann_boundary_fv.h:106
BNDNumberData(SmartPtr< CplUserData< number, dim, bool > > functor_, std::string BndSubsets, std::string InnerSubsets)
Definition: neumann_boundary_fv.h:107
SmartPtr< CplUserData< number, dim, bool > > functor
Definition: neumann_boundary_fv.h:111
Unconditional scalar user data.
Definition: neumann_boundary_fv.h:75
NumberData(SmartPtr< CplUserData< number, dim > > data, std::string BndSubsets, std::string InnerSubsets, NeumannBoundaryFV *this_)
Definition: neumann_boundary_fv.h:76
std::vector< MathVector< 3 > > vLocIP_dim3
Definition: neumann_boundary_fv.h:96
std::vector< MathVector< refDim > > * local_ips()
Definition: neumann_boundary_fv.cpp:361
void lin_def(const LocalVector &u, std::vector< std::vector< number > > vvvLinDef[], const size_t nip)
Definition: neumann_boundary_fv.cpp:309
void extract_bip(const TFVGeom &geo)
Definition: neumann_boundary_fv.cpp:332
NeumannBoundaryFV * This
Definition: neumann_boundary_fv.h:100
std::vector< MathVector< 1 > > vLocIP_dim1
Definition: neumann_boundary_fv.h:98
std::vector< MathVector< dim > > vGloIP
Definition: neumann_boundary_fv.h:99
std::vector< MathVector< 2 > > vLocIP_dim2
Definition: neumann_boundary_fv.h:97
Unconditional vector user data.
Definition: neumann_boundary_fv.h:116
VectorData(SmartPtr< CplUserData< MathVector< dim >, dim > > functor_, std::string BndSubsets, std::string InnerSubsets)
Definition: neumann_boundary_fv.h:117
SmartPtr< CplUserData< MathVector< dim >, dim > > functor
Definition: neumann_boundary_fv.h:121