Operator tp collect data from elements on the side of Edge/Face.
More...
Operator tp collect data from elements on the side of Edge/Face.
- Examples
- mofem/tutorials/vec-6_dg_kirchhoff_plate/plate.cpp.
Definition at line 109 of file plate.cpp.
◆ OpCalculateSideData()
| OpCalculateSideData::OpCalculateSideData |
( |
std::string |
field_name, |
|
|
std::string |
col_field_name |
|
) |
| |
◆ doWork()
- Examples
- mofem/tutorials/vec-6_dg_kirchhoff_plate/plate.cpp.
Definition at line 433 of file plate.cpp.
434 {
436
437 const auto nb_in_loop = getFEMethod()->nInTheLoop;
438
439 auto clear = [](auto nb) {
443 };
444
445 if (
type == MBVERTEX) {
446 areaMap[nb_in_loop] = getMeasure();
447 senseMap[nb_in_loop] = getSkeletonSense();
448 if (!nb_in_loop) {
449 clear(0);
450 clear(1);
453 }
454 }
455
456 const auto nb_dofs = data.
getIndices().size();
457 if (nb_dofs) {
460 data.
getN(BaseDerivatives::FirstDerivative));
462 data.
getN(BaseDerivatives::SecondDerivative));
463 }
464
466}
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
std::array< std::vector< MatrixDouble >, 2 > diff2BaseSideMap
std::array< std::vector< MatrixDouble >, 2 > diffBaseSideMap
std::array< double, 2 > areaMap
std::array< std::vector< VectorInt >, 2 > indicesSideMap
indices on rows for left hand-side
std::array< int, 2 > senseMap
MatrixDouble & getN(const FieldApproximationBase base)
get base functions this return matrix (nb. of rows is equal to nb. of Gauss pts, nb....
const VectorInt & getIndices() const
Get global indices of degrees of freedom on entity.
The documentation for this struct was generated from the following file: