From: Jake Harmon 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=refs%2Fpull%2F13427%2Fhead;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 QGaussk+1 on each edge and * QGaussk+2 on each face and in the interior of the cell (or none * for N1). + * + *

Depictions of shape functions

+ * + * 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. + * + *

FE_Nedelec(0)

+ * + * For the lowest order Nédé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: + * + * + * + * + * + * + * + * + * + * + *
+ * @image html fe_nedelec_shape_function_0_00.png + * + * @image html fe_nedelec_shape_function_0_01.png + *
FE_Nedelec(0) element, shape function 0 + * FE_Nedelec(0) element, shape function 1
+ * @image html fe_nedelec_shape_function_0_02.png + * + * @image html fe_nedelec_shape_function_0_03.png + *
FE_Nedelec(0) element, shape function 2 + * FE_Nedelec(0) element, shape function 3
+ * + *

FE_Nedelec(1)

+ * + * For higher order Nédé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: + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
+ * @image html fe_nedelec_shape_function_1_00.png + * + * @image html fe_nedelec_shape_function_1_01.png + *
FE_Nedelec(1) element, shape function 0 + * FE_Nedelec(1) element, shape function 1
+ * @image html fe_nedelec_shape_function_1_02.png + * + * @image html fe_nedelec_shape_function_1_03.png + *
FE_Nedelec(1) element, shape function 2 + * FE_Nedelec(1) element, shape function 3
+ * @image html fe_nedelec_shape_function_1_04.png + * + * @image html fe_nedelec_shape_function_1_05.png + *
FE_Nedelec(1) element, shape function 4 + * FE_Nedelec(1) element, shape function 5
+ * @image html fe_nedelec_shape_function_1_06.png + * + * @image html fe_nedelec_shape_function_1_07.png + *
FE_Nedelec(1) element, shape function 6 + * FE_Nedelec(1) element, shape function 7
+ * @image html fe_nedelec_shape_function_1_08.png + * + * @image html fe_nedelec_shape_function_1_09.png + *
FE_Nedelec(1) element, shape function 8 + * FE_Nedelec(1) element, shape function 9
+ * @image html fe_nedelec_shape_function_1_10.png + * + * @image html fe_nedelec_shape_function_1_11.png + *
FE_Nedelec(1) element, shape function 10 + * FE_Nedelec(1) element, shape function 11
+ * + *

FE_Nedelec(2)

+ * + * For higher order Nédé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: + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
+ * @image html fe_nedelec_shape_function_2_00.png + * + * @image html fe_nedelec_shape_function_2_01.png + *
FE_Nedelec(2) element, shape function 0 + * FE_Nedelec(2) element, shape function 1
+ * @image html fe_nedelec_shape_function_2_02.png + * + * @image html fe_nedelec_shape_function_2_03.png + *
FE_Nedelec(2) element, shape function 2 + * FE_Nedelec(2) element, shape function 3
+ * @image html fe_nedelec_shape_function_2_04.png + * + * @image html fe_nedelec_shape_function_2_05.png + *
FE_Nedelec(2) element, shape function 4 + * FE_Nedelec(2) element, shape function 5
+ * @image html fe_nedelec_shape_function_2_06.png + * + * @image html fe_nedelec_shape_function_2_07.png + *
FE_Nedelec(2) element, shape function 6 + * FE_Nedelec(2) element, shape function 7
+ * @image html fe_nedelec_shape_function_2_08.png + * + * @image html fe_nedelec_shape_function_2_09.png + *
FE_Nedelec(2) element, shape function 8 + * FE_Nedelec(2) element, shape function 9
+ * @image html fe_nedelec_shape_function_2_10.png + * + * @image html fe_nedelec_shape_function_2_11.png + *
FE_Nedelec(2) element, shape function 10 + * FE_Nedelec(2) element, shape function 11
+ * @image html fe_nedelec_shape_function_2_12.png + * + * @image html fe_nedelec_shape_function_2_13.png + *
FE_Nedelec(2) element, shape function 12 + * FE_Nedelec(2) element, shape function 13
+ * @image html fe_nedelec_shape_function_2_14.png + * + * @image html fe_nedelec_shape_function_2_15.png + *
FE_Nedelec(2) element, shape function 14 + * FE_Nedelec(2) element, shape function 15
+ * @image html fe_nedelec_shape_function_2_16.png + * + * @image html fe_nedelec_shape_function_2_17.png + *
FE_Nedelec(2) element, shape function 16 + * FE_Nedelec(2) element, shape function 17
+ * @image html fe_nedelec_shape_function_2_18.png + * + * @image html fe_nedelec_shape_function_2_19.png + *
FE_Nedelec(2) element, shape function 18 + * FE_Nedelec(2) element, shape function 19
+ * @image html fe_nedelec_shape_function_2_20.png + * + * @image html fe_nedelec_shape_function_2_21.png + *
FE_Nedelec(2) element, shape function 20 + * FE_Nedelec(2) element, shape function 21
+ * @image html fe_nedelec_shape_function_2_22.png + * + * @image html fe_nedelec_shape_function_2_23.png + *
FE_Nedelec(2) element, shape function 22 + * FE_Nedelec(2) element, shape function 23
*/ template class FE_Nedelec : public FE_PolyTensor