PrismElement[{{i11,i12,i13,i14,i15,i16},…,{in1,in2,in3,in4,in5,in6}}]
represents n linear prism elements ek with incidents {ik1,ik2,ik3,ik4,ik5,ik6}.
PrismElement[{{i11,…,i115},…,{in1,…,in15}}]
represents n quadratic prism elements ek with incidents {ik1,…,ik15}.
PrismElement[{e1,…,en},{m1,…,mn}]
represents n prism elements ek and n integer markers mk.
PrismElement
PrismElement[{{i11,i12,i13,i14,i15,i16},…,{in1,in2,in3,in4,in5,in6}}]
represents n linear prism elements ek with incidents {ik1,ik2,ik3,ik4,ik5,ik6}.
PrismElement[{{i11,…,i115},…,{in1,…,in15}}]
represents n quadratic prism elements ek with incidents {ik1,…,ik15}.
PrismElement[{e1,…,en},{m1,…,mn}]
represents n prism elements ek and n integer markers mk.
Details and Options
- PrismElement is used to represent prism mesh elements in ElementMesh.
- PrismElement can be used as an input to ToElementMesh.
- Incidents ik,j are integers that index an array of spatial coordinates. The coordinates referenced by ek={ik1,…} are the nodes of the k
prism. - The first six incidents ik1, ik2, ik3, ik4, ik5 and ik6 are always vertices.
- For quadratic prism elements, the next nine incidents are mid-side nodes of possibly curved edges.
- Linear elements are order-1 elements and quadratic elements are order-2 elements.
- In PrismElement[{e1,…,en}], all elements ek need to be of the same order.
- The prism in PrismElement[{e1,…,en}] will share common nodes, edges and faces, but these cannot intersect with each other, or for second-order prisms, with themselves.
- The nodes for a linear and a quadratic prism are shown:
- For a PrismElement, the face incidents must be counterclockwise. An element {i1,i2,i3,i4,i5,i6} has the face incidents {i1,i2,i3,0}, {i4,i5,i6,0}, {i2,i5,i6,i3}, {i3,i6,i4,i1} and {i1,i4,i5,i2} for the five faces.
- The prism element is known in the finite element method as a serendipity element.
- Prism elements can be used to extrude 2D triangle meshes into 3D.
- Prism elements can connect tetrahedron and hexahedron elements in the same mesh.
Examples
open all close allBasic Examples (1)
Generalizations & Extensions (4)
The base coordinates of the linear element:
c = MeshElementBaseCoordinates[PrismElement, 1]The base incidents of the linear element:
e = PrismElement[{MeshElementBaseIncidents[PrismElement, 1]}]A mesh with a linear unit element:
mesh = ToElementMesh["Coordinates" -> c, "MeshElements" -> {e}]Visualization of the linear unit element:
Show[mesh["Wireframe"],
mesh["Wireframe"["MeshElement" -> "PointElements", "MeshElementStyle" -> Directive[Red, PointSize[0.02]], "MeshElementIDStyle" -> Blue]]]The base coordinates of the quadratic element:
c = MeshElementBaseCoordinates[PrismElement, 2]The base incidents of the quadratic element:
e = PrismElement[{MeshElementBaseIncidents[PrismElement, 2]}]mesh = ToElementMesh["Coordinates" -> c, "MeshElements" -> {e}]Show[mesh["Wireframe"],
mesh["Wireframe"["MeshElement" -> "PointElements", "MeshElementStyle" -> Directive[Red, PointSize[0.02]], "MeshElementIDStyle" -> Blue]]]The base face incidents of the linear element:
e = MeshElementBaseFaceIncidents[PrismElement, 1]The base face incidents of the quadratic element:
e = MeshElementBaseFaceIncidents[PrismElement, 2]Applications (2)
Prism elements can be used to extrude a two-dimensional triangle mesh to three dimensions. Create and visualize a 2D first-order mesh:
mesh2D = ToElementMesh[Annulus[], "MeshOrder" -> 1];
mesh2D["Wireframe"]Extract the coordinates of the 2D mesh, add a third dimension in the
-direction and extrude the coordinates in the
-direction:
coords = mesh2D["Coordinates"];
nc1 = Join[coords, ConstantArray[0., {Length[coords], 1}], 2];
nc2 = Join[coords, ConstantArray[0.1, {Length[coords], 1}], 2];
inci = ElementIncidents[mesh2D["MeshElements"]][[1]];Create and visualize the 3D prism element mesh:
mesh = ToElementMesh["Coordinates" -> Join[nc1, nc2], "MeshElements" -> {PrismElement[Join[inci, Length[coords] + inci, 2]]}]
mesh["Wireframe"]Combine a prism and a tetrahedron element with markers:
mesh = ToElementMesh["Coordinates" -> {{0, 0, -1}, {1, 0, -1}, {0, 1, -1}, {0, 0, 1}, {1, 0, 1}, {0, 1, 1}, {1 / 2, 1 / 2, -2}}, "MeshElements" -> {PrismElement[{{1, 2, 3, 4, 5, 6}}, {1}], TetrahedronElement[{{1, 3, 2, 7}}, {1}]}]Visualize the mesh with the elements' markers:
mesh["Wireframe"["MeshElement" -> "MeshElements", "MeshElementMarkerStyle" -> Red, Boxed -> False]]Possible Issues (6)
The incidents must be of the appropriate length:
PrismElement[{{3, 4, 7}, {4, 8, 7}, {7, 9, 12}, {7, 8, 9}}]The incident order cannot be mixed:
PrismElement[{{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21}}]The incidents must be lists of integers:
PrismElement[{{a, 2, 3, 4, 5, 6}}]The number of markers must match the number of incidents:
PrismElement[{{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}}, {1, 1, 2}]Markers must be a vector of integers:
PrismElement[{{1, 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}}, {1, a}]When possible, noninteger markers will be converted to integers:
PrismElement[{{1., 2, 3, 4, 5, 6}, {7, 8, 9, 10, 11, 12}}, {1, 2.}]Related Guides
Text
Wolfram Research (2021), PrismElement, Wolfram Language function, https://reference.wolfram.com/language/FEMDocumentation/ref/PrismElement.html.
CMS
Wolfram Language. 2021. "PrismElement." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/FEMDocumentation/ref/PrismElement.html.
APA
Wolfram Language. (2021). PrismElement. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/FEMDocumentation/ref/PrismElement.html
BibTeX
@misc{reference.wolfram_2026_prismelement, author="Wolfram Research", title="{PrismElement}", year="2021", howpublished="\url{https://reference.wolfram.com/language/FEMDocumentation/ref/PrismElement.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_prismelement, organization={Wolfram Research}, title={PrismElement}, year={2021}, url={https://reference.wolfram.com/language/FEMDocumentation/ref/PrismElement.html}, note=[Accessed: 13-June-2026]}