179 {
181
182 if (CN::Dimension(type) < 2)
184
187
188 int nb_gauss_pts = data.
getDiffN().size1();
190
192 div_vec.resize(nb_dofs, 0);
193
196
197 for (size_t gg = 0; gg < nb_gauss_pts; gg++) {
198 for (
size_t dd = 0;
dd != div_vec.size();
dd++) {
199 double w = getGaussPts()(3, gg) * getVolume();
200 dIv += t_base_diff_hdiv(
i,
i) *
w;
201 ++t_base_diff_hdiv;
202 }
203 }
204
206}
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define MoFEMFunctionBegin
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
FTensor::Index< 'i', SPACE_DIM > i
const Tensor2_symmetric_Expr< const ddTensor0< T, Dim, i, j >, typename promote< T, double >::V, Dim, i, j > dd(const Tensor0< T * > &a, const Index< i, Dim > index1, const Index< j, Dim > index2, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
FTensor::Tensor2< FTensor::PackPtr< double *, Tensor_Dim0 *Tensor_Dim1 >, Tensor_Dim0, Tensor_Dim1 > getFTensor2DiffN(FieldApproximationBase base)
Get derivatives of base functions for Hdiv space.
MatrixDouble & getDiffN(const FieldApproximationBase base)
get derivatives of base functions
const VectorDouble & getFieldData() const
get dofs values