diff --git a/utils/api_demos/simpleBeam.dat b/utils/api_demos/simpleBeam.dat
new file mode 100644
index 0000000000000000000000000000000000000000..bf2a61e8c78022cd6e20d61c14438162622128b4
--- /dev/null
+++ b/utils/api_demos/simpleBeam.dat
@@ -0,0 +1,5 @@
+ElasticDomain 7 100.e9 0.3
+EdgeDisplacement 8 0 0
+EdgeDisplacement 8 1 0
+EdgeDisplacement 8 2 0
+EdgeForce 9 100e6 0 0
diff --git a/utils/api_demos/simpleBeam.geo b/utils/api_demos/simpleBeam.geo
new file mode 100644
index 0000000000000000000000000000000000000000..061780a0200d8cf9a38222bb4fc27bee64d8d4ab
--- /dev/null
+++ b/utils/api_demos/simpleBeam.geo
@@ -0,0 +1,26 @@
+Mesh.RecombinationAlgorithm=1;
+Mesh.Algorithm = 8;
+
+unit = 1.0e-02 ;
+
+DefineConstant[ H = {4.5 * unit, Min 1 *unit, Max 8.5 *unit, Step 1*unit, Path "Parameters/Geometry",
+                     ShortHelp "Beam Height"} ] ;
+DefineConstant[ L = {20 * unit, Min 10 *unit, Max 200 *unit, Step 1*unit, Path "Parameters/Geometry",
+                     ShortHelp "Beam Width"} ] ;
+DefineConstant[ lc = {2 * unit, Min .1 *unit, Max 10 *unit, Step .1*unit, Path "Parameters/Geometry",
+                     ShortHelp "Mesh Size"} ] ;
+
+Point(1) = {0, 0, 0, lc};
+Point(2) = {H, 0, 0, lc};
+Point(3) = {H, L, 0, lc};
+Point(4) = {0, L, 0, lc};
+Line(1) = {4, 3};
+Line(2) = {3, 2};
+Line(3) = {2, 1};
+Line(4) = {1, 4};
+Line Loop(5) = {2, 3, 4, 1};
+Plane Surface(6) = {5};
+Physical Surface(7) = {6};
+Physical Line(8) = {1};
+Physical Line(9) = {3};
+Recombine Surface {6};