From: Jake Harmon <jake.harmon@ieee.org>
Date: Mon, 21 Feb 2022 02:32:42 +0000 (-0700)
Subject: Add shape function illustrations for FE_Nedelec
X-Git-Tag: v9.4.0-rc1~434^2
X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9d707226bbd9638696966bec6ae42e6a3d2aeeda;p=dealii.git

Add shape function illustrations for FE_Nedelec
---

diff --git a/doc/doxygen/images/fe_nedelec_shape_function_0_00.png b/doc/doxygen/images/fe_nedelec_shape_function_0_00.png
new file mode 100644
index 0000000000..faeccf52b3
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_0_00.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_0_01.png b/doc/doxygen/images/fe_nedelec_shape_function_0_01.png
new file mode 100644
index 0000000000..d52d37efa9
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_0_01.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_0_02.png b/doc/doxygen/images/fe_nedelec_shape_function_0_02.png
new file mode 100644
index 0000000000..0ebdb5aa76
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_0_02.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_0_03.png b/doc/doxygen/images/fe_nedelec_shape_function_0_03.png
new file mode 100644
index 0000000000..ae88e56cd1
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_0_03.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_00.png b/doc/doxygen/images/fe_nedelec_shape_function_1_00.png
new file mode 100644
index 0000000000..23686baf37
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_00.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_01.png b/doc/doxygen/images/fe_nedelec_shape_function_1_01.png
new file mode 100644
index 0000000000..89a9d3e571
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_01.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_02.png b/doc/doxygen/images/fe_nedelec_shape_function_1_02.png
new file mode 100644
index 0000000000..d52d37efa9
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_02.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_03.png b/doc/doxygen/images/fe_nedelec_shape_function_1_03.png
new file mode 100644
index 0000000000..6e60e046db
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_03.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_04.png b/doc/doxygen/images/fe_nedelec_shape_function_1_04.png
new file mode 100644
index 0000000000..076290c4e4
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_04.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_05.png b/doc/doxygen/images/fe_nedelec_shape_function_1_05.png
new file mode 100644
index 0000000000..4dcc6ac2aa
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_05.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_06.png b/doc/doxygen/images/fe_nedelec_shape_function_1_06.png
new file mode 100644
index 0000000000..a3b3b7c80c
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_06.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_07.png b/doc/doxygen/images/fe_nedelec_shape_function_1_07.png
new file mode 100644
index 0000000000..78bc139f10
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_07.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_08.png b/doc/doxygen/images/fe_nedelec_shape_function_1_08.png
new file mode 100644
index 0000000000..5ad12ff487
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_08.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_09.png b/doc/doxygen/images/fe_nedelec_shape_function_1_09.png
new file mode 100644
index 0000000000..190d154f79
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_09.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_10.png b/doc/doxygen/images/fe_nedelec_shape_function_1_10.png
new file mode 100644
index 0000000000..eb0b34a131
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_10.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_1_11.png b/doc/doxygen/images/fe_nedelec_shape_function_1_11.png
new file mode 100644
index 0000000000..c8d1f0a576
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_1_11.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_00.png b/doc/doxygen/images/fe_nedelec_shape_function_2_00.png
new file mode 100644
index 0000000000..b692c5e071
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_00.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_01.png b/doc/doxygen/images/fe_nedelec_shape_function_2_01.png
new file mode 100644
index 0000000000..025fa8c983
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_01.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_02.png b/doc/doxygen/images/fe_nedelec_shape_function_2_02.png
new file mode 100644
index 0000000000..9a4477329b
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_02.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_03.png b/doc/doxygen/images/fe_nedelec_shape_function_2_03.png
new file mode 100644
index 0000000000..d5b9f64439
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_03.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_04.png b/doc/doxygen/images/fe_nedelec_shape_function_2_04.png
new file mode 100644
index 0000000000..eeb19ceaa5
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_04.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_05.png b/doc/doxygen/images/fe_nedelec_shape_function_2_05.png
new file mode 100644
index 0000000000..caa057b75f
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_05.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_06.png b/doc/doxygen/images/fe_nedelec_shape_function_2_06.png
new file mode 100644
index 0000000000..b9f1204188
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_06.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_07.png b/doc/doxygen/images/fe_nedelec_shape_function_2_07.png
new file mode 100644
index 0000000000..05faf5b4a2
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_07.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_08.png b/doc/doxygen/images/fe_nedelec_shape_function_2_08.png
new file mode 100644
index 0000000000..9e978133c5
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_08.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_09.png b/doc/doxygen/images/fe_nedelec_shape_function_2_09.png
new file mode 100644
index 0000000000..20441e9551
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_09.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_10.png b/doc/doxygen/images/fe_nedelec_shape_function_2_10.png
new file mode 100644
index 0000000000..0ed4acca7a
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_10.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_11.png b/doc/doxygen/images/fe_nedelec_shape_function_2_11.png
new file mode 100644
index 0000000000..16ac979141
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_11.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_12.png b/doc/doxygen/images/fe_nedelec_shape_function_2_12.png
new file mode 100644
index 0000000000..17bac86849
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_12.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_13.png b/doc/doxygen/images/fe_nedelec_shape_function_2_13.png
new file mode 100644
index 0000000000..af0849f9fb
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_13.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_14.png b/doc/doxygen/images/fe_nedelec_shape_function_2_14.png
new file mode 100644
index 0000000000..b66fb34329
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_14.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_15.png b/doc/doxygen/images/fe_nedelec_shape_function_2_15.png
new file mode 100644
index 0000000000..9064a02a56
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_15.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_16.png b/doc/doxygen/images/fe_nedelec_shape_function_2_16.png
new file mode 100644
index 0000000000..facb3626ef
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_16.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_17.png b/doc/doxygen/images/fe_nedelec_shape_function_2_17.png
new file mode 100644
index 0000000000..f17f348535
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_17.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_18.png b/doc/doxygen/images/fe_nedelec_shape_function_2_18.png
new file mode 100644
index 0000000000..b80122d4cf
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_18.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_19.png b/doc/doxygen/images/fe_nedelec_shape_function_2_19.png
new file mode 100644
index 0000000000..3d0bb9736f
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_19.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_20.png b/doc/doxygen/images/fe_nedelec_shape_function_2_20.png
new file mode 100644
index 0000000000..59864bf130
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_20.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_21.png b/doc/doxygen/images/fe_nedelec_shape_function_2_21.png
new file mode 100644
index 0000000000..97446009be
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_21.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_22.png b/doc/doxygen/images/fe_nedelec_shape_function_2_22.png
new file mode 100644
index 0000000000..91b5bd951d
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_22.png differ
diff --git a/doc/doxygen/images/fe_nedelec_shape_function_2_23.png b/doc/doxygen/images/fe_nedelec_shape_function_2_23.png
new file mode 100644
index 0000000000..4a5c6384e2
Binary files /dev/null and b/doc/doxygen/images/fe_nedelec_shape_function_2_23.png differ
diff --git a/include/deal.II/fe/fe_nedelec.h b/include/deal.II/fe/fe_nedelec.h
index 5857a056aa..5ccb72158d 100644
--- a/include/deal.II/fe/fe_nedelec.h
+++ b/include/deal.II/fe/fe_nedelec.h
@@ -139,6 +139,259 @@ DEAL_II_NAMESPACE_OPEN
  * The points needed are those of QGauss<sub>k+1</sub> on each edge and
  * QGauss<sub>k+2</sub> on each face and in the interior of the cell (or none
  * for N<sub>1</sub>).
+ *
+ * <h3> Depictions of shape functions </h3>
+ *
+ * The following subsections depict the shape functions defined by this class on
+ * the unit cell. The figures below illustrate the direction and magnitude of
+ * these shape functions.
+ *
+ * <h4>FE_Nedelec(0)</h4>
+ *
+ * For the lowest order N&eacute;d&eacute;lec element, we have a single shape
+ * function associated with each edge (i.e., the tangential component of each
+ * shape function is non-zero on only one edge).
+ *
+ * In 2D, these shape functions look as follows: <table> <tr> <td
+ * align="center">
+ * @image html fe_nedelec_shape_function_0_00.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_0_01.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(0) element, shape function 0
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(0) element, shape function 1 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_0_02.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_0_03.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(0) element, shape function 2
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(0) element, shape function 3 </td> </tr>
+ * </table>
+ *
+ * <h4>FE_Nedelec(1)</h4>
+ *
+ * For higher order N&eacute;d&eacute;lec cells, we have shape functions
+ * associated with the edges, faces, and the volume.
+ *
+ * In 2D, for example, with FE_Nedelec(1), we have 2 shape functions associated
+ * with each edge, and 4 shape functions associated with the cell, which
+ * correspond to the shape functions with no non-zero tangential components on
+ * the boundary of the cell.
+ *
+ * These shape functions look
+ * as follows: <table> <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_1_00.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_1_01.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(1) element, shape function 0
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(1) element, shape function 1 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_1_02.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_1_03.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(1) element, shape function 2
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(1) element, shape function 3 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_1_04.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_1_05.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(1) element, shape function 4
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(1) element, shape function 5 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_1_06.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_1_07.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(1) element, shape function 6
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(1) element, shape function 7 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_1_08.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_1_09.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(1) element, shape function 8
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(1) element, shape function 9 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_1_10.png
+ * </td>
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_1_11.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(1) element, shape function 10
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(1) element, shape function 11 </td> </table>
+ *
+ * <h4>FE_Nedelec(2)</h4>
+ *
+ * For higher order N&eacute;d&eacute;lec cells, we have shape functions
+ * associated with the edges, faces, and the volume.
+ *
+ * In 2D, with FE_Nedelec(2), we have 3 shape functions associated with each
+ * edge, and 12 shape functions associated with the cell.
+ *
+ * These shape functions look
+ * as follows: <table> <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_00.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_01.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 0
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 1 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_02.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_03.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 2
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 3 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_04.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_05.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 4
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 5 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_06.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_07.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 6
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 7 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_08.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_09.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 8
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 9 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_10.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_11.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 10
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 11 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_12.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_13.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 12
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 13 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_14.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_15.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 14
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 15 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_16.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_17.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 16
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 17 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_18.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_19.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 18
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 19 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_20.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_21.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 20
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 21 </td> </tr>
+ *
+ * <tr> <td align="center">
+ * @image html fe_nedelec_shape_function_2_22.png
+ * </td>
+ *
+ * <td align="center">
+ * @image html fe_nedelec_shape_function_2_23.png
+ * </td> </tr> <tr> <td align="center"> FE_Nedelec(2) element, shape function 22
+ * </td>
+ *
+ * <td align="center"> FE_Nedelec(2) element, shape function 23 </td> </table>
  */
 template <int dim>
 class FE_Nedelec : public FE_PolyTensor<dim>