62 {
64 _local_rhs.setZero();
65
66
69 .template topRows<ShapeFunction::MeshElement::n_all_nodes>();
73 .template topRows<ShapeFunction::MeshElement::n_all_nodes>();
77 .template topRows<ShapeFunction::MeshElement::n_all_nodes>();
81 .template topRows<ShapeFunction::MeshElement::n_all_nodes>();
82 unsigned const n_integration_points =
84
85 auto const indices_current_variable =
89 std::vector<double> const local_current_variable =
90 x[process_id]->get(indices_current_variable);
91 std::vector<double> const local_other_variable =
92 x[process_id]->get(indices_other_variable);
93
94 for (unsigned ip = 0; ip < n_integration_points; ip++)
95 {
97 auto const&
N = n_and_weight.N;
98 auto const& w = n_and_weight.weight;
99
100 double current_variable_int_pt = 0.0;
101 double other_variable_int_pt = 0.0;
102
104 current_variable_int_pt);
106 other_variable_int_pt);
108 constant_node_values +
109 coefficient_current_variable_node_values *
110 current_variable_int_pt +
111 coefficient_other_variable_node_values * other_variable_int_pt +
112 coefficient_mixed_variables_node_values *
113 current_variable_int_pt * other_variable_int_pt;
114 _local_rhs.noalias() +=
N * neumann_node_values.dot(N) * w;
115 }
116
117 b.
add(indices_current_variable, _local_rhs);
118 }
void add(IndexType rowId, double v)
add entry
unsigned getNumberOfPoints() const
MeshLib::Element const & _element
NumLib::GenericIntegrationMethod const & _integration_method
std::vector< NAndWeight, Eigen::aligned_allocator< NAndWeight > > const _ns_and_weights
typename Base::NodalVectorType NodalVectorType
void shapeFunctionInterpolate(const NodalValues &, const ShapeMatrix &)
std::vector< GlobalIndexType > getIndices(std::size_t const mesh_item_id, NumLib::LocalToGlobalIndexMap const &dof_table)
virtual Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > getNodalValuesOnElement(MeshLib::Element const &element, double const t) const
Returns a matrix of values for all nodes of the given element.
ParameterLib::Parameter< double > const & coefficient_mixed_variables
std::unique_ptr< NumLib::LocalToGlobalIndexMap > dof_table_boundary_other_variable
ParameterLib::Parameter< double > const & constant
ParameterLib::Parameter< double > const & coefficient_current_variable
ParameterLib::Parameter< double > const & coefficient_other_variable