43 if (!maybe_delta || !maybe_delta->
IsDelta())
59 if (!maybe_delta || !maybe_delta->
IsDelta())
124 "invalid element marker for domain linear form "
125 "integrator #" << k <<
", counting from zero");
129 for (i = 0; i <
fes -> GetNE(); i++)
137 fes -> GetElementVDofs (i, vdofs);
138 eltrans =
fes -> GetElementTransformation (i);
164 MFEM_ASSERT(bdr_marker.
Size() == bdr_attr_marker.
Size(),
165 "invalid boundary marker for boundary integrator #"
166 << k <<
", counting from zero");
167 for (
int i = 0; i < bdr_attr_marker.
Size(); i++)
169 bdr_attr_marker[i] |= bdr_marker[i];
173 for (i = 0; i <
fes -> GetNBE(); i++)
176 if (bdr_attr_marker[bdr_attr-1] == 0) {
continue; }
177 fes -> GetBdrElementVDofs (i, vdofs);
178 eltrans =
fes -> GetBdrElementTransformation (i);
208 MFEM_ASSERT(bdr_marker.
Size() == bdr_attr_marker.
Size(),
209 "invalid boundary marker for boundary face integrator #"
210 << k <<
", counting from zero");
211 for (
int i = 0; i < bdr_attr_marker.
Size(); i++)
213 bdr_attr_marker[i] |= bdr_marker[i];
217 for (i = 0; i < mesh->
GetNBE(); i++)
220 if (bdr_attr_marker[bdr_attr-1] == 0) {
continue; }
225 fes -> GetElementVDofs (tr -> Elem1No, vdofs);
253 fes -> GetElementVDofs (tr -> Elem1No, vdofs);
255 fes -> GetElementVDofs (tr -> Elem2No, vdofs2);
291 for (
int i = 0; i < centers.Width(); i++)
295 MFEM_VERIFY(center.
Size() == sdim,
296 "Point dim " << center.
Size() <<
297 " does not match space dim " << sdim);
310 if (elem_id < 0) {
continue; }
int Size() const
Return the logical size of the array.
int GetVSize() const
Return the number of vector dofs, i.e. GetNDofs() x GetVDim().
int GetBdrAttribute(int i) const
Return the attribute of boundary element i.
int GetNBE() const
Returns number of boundary elements.
void GetElementVDofs(int i, Array< int > &vdofs) const
Returns indexes of degrees of freedom in array dofs for i'th element.
Data type dense matrix using column-major storage.
int Size() const
Returns the size of the vector.
FaceElementTransformations * GetInteriorFaceTransformations(int FaceNo)
virtual void UseDevice(bool use_dev) const
Enable execution of Vector operations using the mfem::Device.
Vector & operator=(const double *v)
Copy Size() entries from v.
int GetNumFaces() const
Return the number of faces (3D), edges (2D) or vertices (1D).
double f(const Vector &xvec)
int Append(const T &el)
Append element 'el' to array, resize if necessary.
Mesh * GetMesh() const
Returns the mesh.
T Max() const
Find the maximal element in the array, using the comparison operator < for class T.
FaceElementTransformations * GetBdrFaceTransformations(int BdrElemNo)
bool IsDelta() const
Returns true if the derived class instance uses a delta coefficient.
void AddElementVector(const Array< int > &dofs, const Vector &elemvect)
Add elements of the elemvect Vector to the entries listed in dofs. Negative dof values cause the -dof...
int SpaceDimension() const
ElementTransformation * GetElementTransformation(int i) const
Returns ElementTransformation for the i-th element.
Array< int > bdr_attributes
A list of all unique boundary attributes used by the Mesh.
Class FiniteElementSpace - responsible for providing FEM view of the mesh, mainly managing the set of...
void GetColumnReference(int c, Vector &col)
Abstract class for integrators that support delta coefficients.
Class for integration point with weight.
virtual const FiniteElement * GetFE(int i) const
Returns pointer to the FiniteElement in the FiniteElementCollection associated with i'th element in t...
virtual int FindPoints(DenseMatrix &point_mat, Array< int > &elem_ids, Array< IntegrationPoint > &ips, bool warn=true, InverseElementTransformation *inv_trans=NULL)
Find the ids of the elements that contain the given points, and their corresponding reference coordin...
void MakeRef(Vector &base, int offset, int size)
Reset the Vector to be a reference to a sub-vector of base.
virtual bool UseDevice() const
Return the device flag of the Memory object used by the Vector.
const FiniteElement * GetBE(int i) const
Returns pointer to the FiniteElement in the FiniteElementCollection associated with i'th boundary fac...
int GetAttribute(int i) const
Return the attribute of element i.
Array< int > attributes
A list of all unique element attributes used by the Mesh.