7#include <boost/iterator/transform_iterator.hpp>
9#include "include/Sfx_DefineTypes.h"
72 using namespace boost;
74 std::function<double(
const NodalValue&)> w_getA = [](
const NodalValue& aVal) ->
double {
return std::get<1>(aVal.m_tpl); };
75 std::function<double(
const NodalValue&)> w_getQ = [](
const NodalValue& aVal) ->
double {
return std::get<2>(aVal.m_tpl); };
76 std::function<double(
const NodalValue&)> w_getH = [](
const NodalValue& aVal) ->
double {
return std::get<3>(aVal.m_tpl); };
84 return std::vector<double>(make_transform_iterator(
m_vecNodalVarArray.begin(), w_getA),
90 return std::vector<double>(make_transform_iterator(
m_vecNodalVarArray.begin(), w_getQ),
96 return std::vector<double>(make_transform_iterator(
m_vecNodalVarArray.begin(), w_getH),
102 std::cerr <<
"Cannot return an invalid type in GlobalDiscretization\n";
103 return std::vector<float64>();
Global Domain (part of global discretization) list of elements and geomeric nodes used by numerical m...
Definition dbpp_Omega.h:19
auto end()
Definition dbpp_Uh.h:49
friend std::ostream & operator<<(std::ostream &, Uh &)
output stream operator
NodalValue & operator[](int32 nn)
Accessor.
Definition dbpp_Uh.h:122
auto rend() const
Definition dbpp_Uh.h:52
const_pointer const_iterator
Definition dbpp_Uh.h:36
const value_type * const_pointer
Definition dbpp_Uh.h:35
std::size_t total_node_no() const
Definition dbpp_Uh.h:133
auto rbegin()
Definition dbpp_Uh.h:51
auto crbegin() const
Definition dbpp_Uh.h:50
std::reverse_iterator< iterator > reverse_iterator
Definition dbpp_Uh.h:40
vec_nval::value_type value_type
Definition dbpp_Uh.h:32
std::reverse_iterator< const_iterator > const_reverse_iterator
Definition dbpp_Uh.h:41
vec_nval & vecNodalVarArray()
Getter.
Definition dbpp_Uh.h:111
pointer iterator
Definition dbpp_Uh.h:34
value_type & reference
Definition dbpp_Uh.h:37
ptrdiff_t range_diff_type
Definition dbpp_Uh.h:39
vec_nval m_vecNodalVarArray
Definition dbpp_Uh.h:147
const value_type & const_reference
Definition dbpp_Uh.h:38
std::vector< double > to_stdVector(eNodalField aNvalComp=eNodalField::A) const
Helper to retrieve component of nodal variable.
Definition dbpp_Uh.h:70
auto cbegin() const
Iterator access.
Definition dbpp_Uh.h:46
auto begin()
Definition dbpp_Uh.h:47
auto cend() const
Definition dbpp_Uh.h:48
std::size_t m_totalNodeNo
Definition dbpp_Uh.h:146
NodalTpl< unsigned, float64, float64, float64 > NodalValue
Nodal Variable is the "Basis" of numerical method approximation.
Definition dbpp_Uh.h:26
Uh()
default ctor
Definition dbpp_Uh.cpp:17
std::vector< NodalValue > vec_nval
STL-container like interface (range)
Definition dbpp_Uh.h:31
const vec_nval & vecNodalVarArray() const
Getter.
Definition dbpp_Uh.h:116
auto crend() const
Definition dbpp_Uh.h:53
int32 ndf
Definition dbpp_Uh.h:145
value_type * pointer
Definition dbpp_Uh.h:33
Definition DamBreakProb.h:15
eNodalVarComp
Definition dbpp_Enumerations.h:15
double float64
Definition dbpp_LDeltaOperator.h:12
eNodalField
Definition dbpp_Enumerations.h:24
@ A
Definition dbpp_Enumerations.h:25
@ H
Definition dbpp_Enumerations.h:27
@ Q
Definition dbpp_Enumerations.h:26
Implementation for nodal variable concept used in our application (use of variadic template).
Definition dbpp_NodalTpl.hpp:47