IFEM 90A354
LagrangeFields3D.h
Go to the documentation of this file.
1// $Id$
2//==============================================================================
12//==============================================================================
13
14#ifndef _LAGRANGE_FIELDS_3D_H
15#define _LAGRANGE_FIELDS_3D_H
16
17#include "Fields.h"
18
19class ASMs3DLag;
20
21
30{
31public:
37 LagrangeFields3D(const ASMs3DLag* patch, const RealArray& v,
38 char basis = 1, const char* name = nullptr);
40 virtual ~LagrangeFields3D() {}
41
42 // Methods to compute field values
43 //================================
44
48 bool valueNode(size_t node, Vector& vals) const;
49
53 bool valueFE(const ItgPoint& x, Vector& vals) const;
54
58 bool gradFE(const ItgPoint& x, Matrix& grad) const;
59
60protected:
61 using IntMat = std::vector<std::vector<int>>;
64 int p1;
65 int p2;
66 int p3;
67};
68
69#endif
Base class for vector fields.
std::vector< Real > RealArray
A real-valued array without algebraic operations.
Definition ImmersedBoundaries.h:32
Driver for assembly of structured 3D Lagrange FE models.
Definition ASMs3DLag.h:27
Base class for vector fields.
Definition Fields.h:35
Class representing an integration point.
Definition ItgPoint.h:25
Class for Lagrange-based finite element vector fields in 3D.
Definition LagrangeFields3D.h:30
int p1
Element order in first parameter direction.
Definition LagrangeFields3D.h:64
Matrix coord
Matrix of nodel coordinates.
Definition LagrangeFields3D.h:62
bool valueFE(const ItgPoint &x, Vector &vals) const
Computes the value at a given local coordinate.
Definition LagrangeFields3D.C:50
int p2
Element order in second parameter direction.
Definition LagrangeFields3D.h:65
bool valueNode(size_t node, Vector &vals) const
Computes the value in a given node/control point.
Definition LagrangeFields3D.C:39
int p3
Element order in third parameter direction.
Definition LagrangeFields3D.h:66
IntMat mnpc
Matrix of element nodes.
Definition LagrangeFields3D.h:63
virtual ~LagrangeFields3D()
Empty destructor.
Definition LagrangeFields3D.h:40
std::vector< std::vector< int > > IntMat
Convenience type.
Definition LagrangeFields3D.h:61
bool gradFE(const ItgPoint &x, Matrix &grad) const
Computes the gradient for a given local coordinate.
Definition LagrangeFields3D.C:75
A vector class with some added algebraic operations.
Definition matrix.h:64