885                                                          {
  887 
  888      if (data.getIndices().size() == 0)
  890 
  892      th.resize(data.getFieldData().size());
 
  893 
  894      double def_VAL[9] = {0, 0, 0};
  895 
  896      switch (type) {
  897      case MBTRI:
  898        for (
unsigned int dd = 0; 
dd < data.getN().size2() / 3; 
dd++) {
 
  899          std::ostringstream ss;
  900          ss << 
"HDIV_FACE_" << side << 
"_" << 
dd;
 
  902              ss.str().c_str(), 3, MB_TYPE_DOUBLE, th[dd],
  903              MB_TAG_CREAT | MB_TAG_SPARSE, def_VAL);
  904        }
  905        break;
  906      case MBTET:
  907        for (
unsigned int dd = 0; 
dd < data.getN().size2() / 3; 
dd++) {
 
  908          std::ostringstream ss;
  909          ss << 
"HDIV_TET_" << 
dd;
 
  911              ss.str().c_str(), 3, MB_TYPE_DOUBLE, th[dd],
  912              MB_TAG_CREAT | MB_TAG_SPARSE, def_VAL);
  913        }
  914        break;
  915      default:
  917                "data inconsistency");
  918      }
  919 
  920      for (unsigned int gg = 0; gg < data.getN().size1(); gg++) {
  921        for (
unsigned int dd = 0; 
dd < data.getN().size2() / 3; 
dd++) {
 
  923                                           &data.getVectorN<3>(gg)(dd, 0));
  924        }
  925      }
  926 
  928    }
#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 ...
@ MOFEM_DATA_INCONSISTENCY
#define MoFEMFunctionReturn(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define CHKERR
Inline error check.
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)