Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
Longxiang Li
Nektar
Commits
3790ce24
Commit
3790ce24
authored
Aug 16, 2016
by
Dave Moxey
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix another Windows compile problem, add some more comments
parent
57a87b1d
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
41 additions
and
9 deletions
+41
-9
library/NekMeshUtils/MeshElements/Edge.h
library/NekMeshUtils/MeshElements/Edge.h
+1
-0
library/NekMeshUtils/MeshElements/Element.cpp
library/NekMeshUtils/MeshElements/Element.cpp
+8
-4
library/NekMeshUtils/MeshElements/Element.h
library/NekMeshUtils/MeshElements/Element.h
+28
-3
library/NekMeshUtils/MeshElements/Face.h
library/NekMeshUtils/MeshElements/Face.h
+3
-1
library/NekMeshUtils/MeshElements/Quadrilateral.h
library/NekMeshUtils/MeshElements/Quadrilateral.h
+1
-1
No files found.
library/NekMeshUtils/MeshElements/Edge.h
View file @
3790ce24
...
...
@@ -170,6 +170,7 @@ public:
return
ret
;
}
/// Make this edge an order @p order edge. @see Element::MakeOrder.
void
MakeOrder
(
int
order
,
SpatialDomains
::
GeometrySharedPtr
geom
,
LibUtilities
::
PointsType
edgeType
,
...
...
library/NekMeshUtils/MeshElements/Element.cpp
View file @
3790ce24
...
...
@@ -71,8 +71,10 @@ Element::Element(ElmtConfig pConf, unsigned int pNumNodes,
* searched and the corresponding edge/face nodes are updated to
* maintain consistency.
*
* @param p Index of the vertex to replace.
* @param pNew New vertex.
* @param p Index of the vertex to replace.
* @param pNew New vertex.
* @param descend If true, we loop over edges and faces and replace the
* corresponding vertices with @p pNew.
*/
void
Element
::
SetVertex
(
unsigned
int
p
,
NodeSharedPtr
pNew
,
bool
descend
)
{
...
...
@@ -125,8 +127,10 @@ void Element::SetVertex(unsigned int p, NodeSharedPtr pNew, bool descend)
* When an edge is replaced, the element faces are also searched and
* the corresponding face edges are updated to maintain consistency.
*
* @param p Index of the edge to replace.
* @param pNew New edge.
* @param p Index of the edge to replace.
* @param pNew New edge.
* @param descend If true, we loop over faces and replace the corresponding
* face edge with @p pNew.
*/
void
Element
::
SetEdge
(
unsigned
int
p
,
EdgeSharedPtr
pNew
,
bool
descend
)
{
...
...
library/NekMeshUtils/MeshElements/Element.h
View file @
3790ce24
...
...
@@ -244,9 +244,11 @@ public:
m_id
=
p
;
}
/// Replace a vertex with another vertex object.
NEKMESHUTILS_EXPORT
void
SetVertex
(
unsigned
int
p
,
NodeSharedPtr
pNew
,
bool
descend
=
true
);
NEKMESHUTILS_EXPORT
void
SetVertex
(
unsigned
int
p
,
NodeSharedPtr
pNew
,
bool
descend
=
true
);
/// Replace an edge with another edge object.
NEKMESHUTILS_EXPORT
void
SetEdge
(
unsigned
int
p
,
EdgeSharedPtr
pNew
,
bool
descend
=
true
);
NEKMESHUTILS_EXPORT
void
SetEdge
(
unsigned
int
p
,
EdgeSharedPtr
pNew
,
bool
descend
=
true
);
/// Replace a face with another face object.
NEKMESHUTILS_EXPORT
void
SetFace
(
unsigned
int
p
,
FaceSharedPtr
pNew
);
/// Set a correspondence between this element and an edge
...
...
@@ -451,7 +453,23 @@ public:
NEKMESHUTILS_EXPORT
int
GetMaxOrder
();
/// Insert interior (i.e. volume) points into this element.
/**
* @brief Insert interior (i.e. volume) points into this element to make the
* geometry an order @p order representation.
*
* @param order The desired polynomial order.
* @param geom The geometry object used to describe the curvature
* mapping.
* @param edgeType The points distribution to use on the volume.
* @param coordDim The coordinate (i.e. space) dimension.
* @param id Counter which should be incremented to supply
* consistent vertex IDs.
* @param justConfig If true, then the configuration Element::m_conf
* will be updated but no nodes will be
* generated. This is used when considering boundary
* elements, which just require copying of face or
* edge interior nodes.
*/
NEKMESHUTILS_EXPORT
virtual
void
MakeOrder
(
int
order
,
SpatialDomains
::
GeometrySharedPtr
geom
,
...
...
@@ -464,6 +482,10 @@ public:
"This function should be implemented at a shape level."
);
}
/**
* @brief Get the edge orientation of @p edge with respect to the local
* element, which lies at edge index @p edgeId.
*/
NEKMESHUTILS_EXPORT
virtual
StdRegions
::
Orientation
GetEdgeOrient
(
int
edgeId
,
EdgeSharedPtr
edge
)
{
...
...
@@ -472,6 +494,9 @@ public:
return
StdRegions
::
eNoOrientation
;
}
/**
* @brief Returns the local index of vertex @p j of face @p i.
*/
NEKMESHUTILS_EXPORT
virtual
int
GetFaceVertex
(
int
i
,
int
j
)
{
ASSERTL0
(
false
,
...
...
library/NekMeshUtils/MeshElements/Face.h
View file @
3790ce24
...
...
@@ -111,7 +111,8 @@ public:
}
/// Assemble a list of nodes on curved face
NEKMESHUTILS_EXPORT
void
GetCurvedNodes
(
std
::
vector
<
NodeSharedPtr
>
&
nodeList
)
const
NEKMESHUTILS_EXPORT
void
GetCurvedNodes
(
std
::
vector
<
NodeSharedPtr
>
&
nodeList
)
const
{
// Treat 2D point distributions differently to 3D.
if
(
m_curveType
==
LibUtilities
::
eNodalTriFekete
||
...
...
@@ -215,6 +216,7 @@ public:
return
s
.
str
();
}
/// Make this face an order @p order face. @see Element::MakeOrder.
void
MakeOrder
(
int
order
,
SpatialDomains
::
GeometrySharedPtr
geom
,
LibUtilities
::
PointsType
pType
,
...
...
library/NekMeshUtils/MeshElements/Quadrilateral.h
View file @
3790ce24
...
...
@@ -114,7 +114,7 @@ template <typename T> struct HOQuadrilateral
void
ReverseX
()
{
int
np
=
(
int
)(
sqrt
(
surfVerts
.
size
())
+
0.5
);
int
np
=
(
int
)(
sqrt
(
(
NekDouble
)
surfVerts
.
size
())
+
0.5
);
for
(
int
i
=
0
;
i
<
np
;
++
i
)
{
for
(
int
j
=
0
;
j
<
np
/
2
;
++
j
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment