diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean
new file mode 100755
index 0000000000..daafdf90aa
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean
@@ -0,0 +1,16 @@
+#!/bin/sh
+cd ${0%/*} || exit 1 # run from this directory
+
+# Source tutorial run functions
+. $WM_PROJECT_DIR/bin/tools/CleanFunctions
+
+cd wingFlutter_snappyHexMesh
+cleanCase
+
+cd ../wingFlutter2D_simpleFoam
+cleanCase
+
+cd ../wingFlutter2D_pimpleDyMFoam
+cleanCase
+rm -rf 0
+
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun
new file mode 100755
index 0000000000..23f224782e
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun
@@ -0,0 +1,29 @@
+#!/bin/sh
+cd ${0%/*} || exit 1 # run from this directory
+
+# Source tutorial run functions
+. $WM_PROJECT_DIR/bin/tools/RunFunctions
+
+# Make 3D mesh in slab of cells.
+cd wingFlutter_snappyHexMesh
+runApplication blockMesh
+runApplication snappyHexMesh -overwrite
+
+# Make a 2D mesh by extruding a patch and solve to steady state.
+cd ../wingFlutter2D_simpleFoam
+runApplication extrudeMesh
+runApplication createPatch -overwrite
+runApplication simpleFoam
+
+# Copy the mesh from the steady state case and map the results to a
+# mesh motion case, then solve transient.
+cd ../wingFlutter2D_pimpleDyMFoam
+cp -r ../wingFlutter2D_simpleFoam/constant/polyMesh/* constant/polyMesh/
+cp -r 0.org 0
+runApplication mapFields ../wingFlutter2D_simpleFoam -sourceTime latestTime -consistent
+mv 0/pointDisplacement.unmapped 0/pointDisplacement
+runApplication decomposePar
+runParallel pimpleDyMFoam 3
+runApplication reconstructPar
+
+# ----------------------------------------------------------------- end-of-file
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U
new file mode 100644
index 0000000000..345f30007b
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U
@@ -0,0 +1,45 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volVectorField;
+ location "0";
+ object U;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 1 -1 0 0 0 0];
+
+internalField uniform $flowVelocity;
+
+boundaryField
+{
+ #include "include/fixedInlet"
+
+ outlet
+ {
+ type inletOutlet;
+ inletValue uniform (0 0 0);
+ value $internalField;
+ }
+
+ wing
+ {
+ type movingWallVelocity;
+ value uniform (0 0 0);
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet
new file mode 100644
index 0000000000..ccf1d6e897
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet
@@ -0,0 +1,15 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+
+inlet
+{
+ type fixedValue;
+ value $internalField;
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches
new file mode 100644
index 0000000000..70336f846e
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches
@@ -0,0 +1,24 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+
+topAndBottom
+{
+ type slip;
+}
+
+front
+{
+ type empty
+}
+
+back
+{
+ type empty;
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions
new file mode 100644
index 0000000000..e0d098096a
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions
@@ -0,0 +1,15 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+
+flowVelocity (100 0 0);
+pressure 0;
+turbulentKE 37;
+turbulentOmega 32;
+#inputMode merge
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k
new file mode 100644
index 0000000000..8ba642effb
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k
@@ -0,0 +1,44 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ object k;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 2 -2 0 0 0 0];
+
+internalField uniform $turbulentKE;
+
+boundaryField
+{
+ #include "include/fixedInlet"
+
+ outlet
+ {
+ type inletOutlet;
+ inletValue $internalField;
+ value $internalField;
+ }
+
+ wing
+ {
+ type kqRWallFunction;
+ value $internalField;
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut
new file mode 100644
index 0000000000..27bfad4f39
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut
@@ -0,0 +1,38 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ location "0";
+ object nut;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+dimensions [0 2 -1 0 0 0 0];
+
+internalField uniform 0;
+
+boundaryField
+{
+ wing
+ {
+ type nutkWallFunction;
+ value uniform 0;
+ }
+
+ "(front|back|topAndBottom|inlet|outlet)"
+ {
+ type calculated;
+ value uniform 0;
+ }
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega
new file mode 100644
index 0000000000..2024b25ef7
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega
@@ -0,0 +1,44 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ object epsilon;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 0 -1 0 0 0 0];
+
+internalField uniform $turbulentOmega;
+
+boundaryField
+{
+ #include "include/fixedInlet"
+
+ outlet
+ {
+ type inletOutlet;
+ inletValue $internalField;
+ value $internalField;
+ }
+
+ wing
+ {
+ type omegaWallFunction;
+ value $internalField;
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p
new file mode 100644
index 0000000000..78a5d15299
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p
@@ -0,0 +1,44 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ object p;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 2 -2 0 0 0 0];
+
+internalField uniform $pressure;
+
+boundaryField
+{
+ inlet
+ {
+ type zeroGradient;
+ }
+
+ outlet
+ {
+ type fixedValue;
+ value $internalField;
+ }
+
+ wing
+ {
+ type zeroGradient;
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement
new file mode 100644
index 0000000000..f51ea94a8d
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement
@@ -0,0 +1,120 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class pointVectorField;
+ location "0.01";
+ object pointDisplacement;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+dimensions [0 1 0 0 0 0 0];
+
+internalField uniform (0 0 0);
+
+boundaryField
+{
+ wing
+ {
+ type sixDoFRigidBodyDisplacement;
+ mass 22.9;
+ centreOfMass (0.4974612746 -0.01671895744 0.125);
+ momentOfInertia (1.958864357 3.920839234 2.057121362);
+ orientation
+ (
+ 0.9953705935 0.09611129781 0
+ -0.09611129781 0.9953705935 0
+ 0 0 1
+ );
+ velocity (0 0 0);
+ acceleration (0 0 0);
+ angularMomentum (0 0 -0.5);
+ torque (0 0 0);
+ rhoName rhoInf;
+ rhoInf 1;
+ g (0 -9.81 0);
+ report on;
+ constraints
+ {
+ maxIterations 500;
+
+ fixedLine1
+ {
+ sixDoFRigidBodyMotionConstraint fixedLine;
+ tolerance 1e-9;
+ relaxationFactor 0.7;
+ fixedLineCoeffs
+ {
+ refPoint (0.25 0.007 0.125);
+ direction (0 1 0);
+ }
+ }
+
+ fixedAxis1
+ {
+ sixDoFRigidBodyMotionConstraint fixedAxis;
+ tolerance 1e-06;
+ relaxationFactor 0.7;
+ fixedAxisCoeffs
+ {
+ axis ( 0 0 1 );
+ }
+ }
+ }
+ restraints
+ {
+ verticalSpring
+ {
+ sixDoFRigidBodyMotionRestraint linearSpring;
+
+ linearSpringCoeffs
+ {
+ anchor (0.25 0.007 0.125);
+ refAttachmentPt (0.25 0.007 0.125);
+ stiffness 4000;
+ damping 2;
+ restLength 0;
+ }
+ }
+ axialSpring
+ {
+ sixDoFRigidBodyMotionRestraint linearAxialAngularSpring;
+
+ linearAxialAngularSpringCoeffs
+ {
+ axis (0 0 1);
+ stiffness 700;
+ damping 0.5;
+ referenceOrientation $orientation;
+ }
+ }
+ }
+ value uniform (0 0 0);
+ }
+
+ front
+ {
+ type empty;
+ }
+
+ back
+ {
+ type empty;
+ }
+
+ ".*"
+ {
+ type fixedValue;
+ value uniform (0 0 0);
+ }
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties
new file mode 100644
index 0000000000..4e21ca67e4
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties
@@ -0,0 +1,25 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "constant";
+ object RASProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+RASModel kOmegaSST;
+
+turbulence on;
+
+printCoeffs on;
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict
new file mode 100644
index 0000000000..986a599c5f
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict
@@ -0,0 +1,26 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object motionProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+dynamicFvMesh dynamicMotionSolverFvMesh;
+
+motionSolverLibs ("libfvMotionSolvers.so");
+
+solver displacementLaplacian;
+
+diffusivity inverseDistance (wing);
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary
new file mode 100644
index 0000000000..87c839b5cc
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary
@@ -0,0 +1,58 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: dev |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class polyBoundaryMesh;
+ location "constant/polyMesh";
+ object boundary;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+6
+(
+ topAndBottom
+ {
+ type patch;
+ nFaces 150;
+ startFace 76473;
+ }
+ inlet
+ {
+ type patch;
+ nFaces 48;
+ startFace 76623;
+ }
+ outlet
+ {
+ type patch;
+ nFaces 48;
+ startFace 76671;
+ }
+ front
+ {
+ type empty;
+ nFaces 38129;
+ startFace 76719;
+ }
+ back
+ {
+ type empty;
+ nFaces 38129;
+ startFace 114848;
+ }
+ wing
+ {
+ type wall;
+ nFaces 778;
+ startFace 152977;
+ }
+)
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties
new file mode 100644
index 0000000000..a9d8bf659c
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties
@@ -0,0 +1,22 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object transportProperties;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+transportModel Newtonian;
+
+nu nu [0 2 -1 0 0 0 0] 1e-05;
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties
new file mode 100644
index 0000000000..f6753662e2
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties
@@ -0,0 +1,21 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "constant";
+ object turbulenceProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+simulationType RASModel;
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict
new file mode 100644
index 0000000000..83a4748d21
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict
@@ -0,0 +1,72 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object controlDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+application pimpleDyMFoam;
+
+startFrom latestTime;
+
+startTime 0;
+
+stopAt endTime;
+
+endTime 1;
+
+deltaT 1e-5;
+
+writeControl adjustableRunTime;
+
+writeInterval 5e-3;
+
+purgeWrite 0;
+
+writeFormat ascii;
+
+writePrecision 10;
+
+writeCompression off;
+
+timeFormat general;
+
+timePrecision 6;
+
+runTimeModifiable true;
+
+adjustTimeStep yes;
+
+maxCo 0.9;
+
+libs ("libforces.so");
+
+functions
+{
+ forces
+ {
+ type forces;
+ functionObjectLibs ( "libforces.so" );
+ outputControl timeStep;
+ outputInterval 10;
+ patches (wing);
+ pName p;
+ UName U;
+ rhoName rhoInf;
+ log true;
+ rhoInf 1;
+ CofR (0.25 0.007 0.125);
+ }
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict
new file mode 100644
index 0000000000..2dc0a0a25e
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict
@@ -0,0 +1,45 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object decomposeParDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+numberOfSubdomains 3;
+
+method simple;
+
+simpleCoeffs
+{
+ n ( 1 3 1 );
+ delta 0.001;
+}
+
+hierarchicalCoeffs
+{
+ n ( 3 2 1 );
+ delta 0.001;
+ order xyz;
+}
+
+manualCoeffs
+{
+ dataFile "cellDecomposition";
+}
+
+metisCoeffs
+{
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes
new file mode 100644
index 0000000000..2bee15799d
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes
@@ -0,0 +1,59 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object fvSchemes;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+ddtSchemes
+{
+ default Euler;
+}
+
+gradSchemes
+{
+ default Gauss linear;
+ grad(p) Gauss linear;
+ grad(U) Gauss linear;
+}
+
+divSchemes
+{
+ default none;
+ div(phi,U) Gauss linearUpwind grad(U);
+ div(phi,k) Gauss limitedLinear 1;
+ div(phi,omega) Gauss limitedLinear 1;
+ div((nuEff*dev(grad(U).T()))) Gauss linear;
+}
+
+laplacianSchemes
+{
+ default Gauss linear limited 0.5;
+}
+
+interpolationSchemes
+{
+ default linear;
+}
+
+snGradSchemes
+{
+ default corrected;
+}
+
+fluxRequired
+{
+ default no;
+ p;
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution
new file mode 100644
index 0000000000..038b442397
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution
@@ -0,0 +1,88 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object fvSolution;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+solvers
+{
+ p
+ {
+ solver GAMG;
+ tolerance 1e-7;
+ relTol 0.01;
+ smoother GaussSeidel;
+ nPreSweeps 0;
+ nPostSweeps 2;
+ cacheAgglomeration on;
+ agglomerator faceAreaPair;
+ nCellsInCoarsestLevel 10;
+ mergeLevels 1;
+ }
+
+ pFinal
+ {
+ solver GAMG;
+ tolerance 1e-7;
+ relTol 0;
+ smoother GaussSeidel;
+ nPreSweeps 0;
+ nPostSweeps 2;
+ cacheAgglomeration on;
+ agglomerator faceAreaPair;
+ nCellsInCoarsestLevel 10;
+ mergeLevels 1;
+ }
+
+ "(U|k|omega)"
+ {
+ solver PBiCG;
+ preconditioner DILU;
+ tolerance 1e-06;
+ relTol 0;
+ }
+
+ cellDisplacement
+ {
+ solver GAMG;
+ tolerance 1e-5;
+ relTol 0;
+ smoother GaussSeidel;
+ cacheAgglomeration true;
+ nCellsInCoarsestLevel 10;
+ agglomerator faceAreaPair;
+ mergeLevels 1;
+ }
+}
+
+PIMPLE
+{
+ nOuterCorrectors 2;
+ nCorrectors 1;
+ nNonOrthogonalCorrectors 0;
+}
+
+relaxationFactors
+{
+ p 0.3;
+ U 0.7;
+ k 0.7;
+ omega 0.7;
+}
+
+cache
+{
+ grad(U);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U
new file mode 100644
index 0000000000..bd35fcfb40
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U
@@ -0,0 +1,45 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volVectorField;
+ location "0";
+ object U;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 1 -1 0 0 0 0];
+
+internalField uniform $flowVelocity;
+
+boundaryField
+{
+ #include "include/fixedInlet"
+
+ outlet
+ {
+ type inletOutlet;
+ inletValue uniform (0 0 0);
+ value $internalField;
+ }
+
+ wing
+ {
+ type fixedValue;
+ value uniform (0 0 0);
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet
new file mode 100644
index 0000000000..ccf1d6e897
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet
@@ -0,0 +1,15 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+
+inlet
+{
+ type fixedValue;
+ value $internalField;
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches
new file mode 100644
index 0000000000..70336f846e
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches
@@ -0,0 +1,24 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+
+topAndBottom
+{
+ type slip;
+}
+
+front
+{
+ type empty
+}
+
+back
+{
+ type empty;
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions
new file mode 100644
index 0000000000..e0d098096a
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions
@@ -0,0 +1,15 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+
+flowVelocity (100 0 0);
+pressure 0;
+turbulentKE 37;
+turbulentOmega 32;
+#inputMode merge
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k
new file mode 100644
index 0000000000..8ba642effb
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k
@@ -0,0 +1,44 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ object k;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 2 -2 0 0 0 0];
+
+internalField uniform $turbulentKE;
+
+boundaryField
+{
+ #include "include/fixedInlet"
+
+ outlet
+ {
+ type inletOutlet;
+ inletValue $internalField;
+ value $internalField;
+ }
+
+ wing
+ {
+ type kqRWallFunction;
+ value $internalField;
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut
new file mode 100644
index 0000000000..27bfad4f39
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut
@@ -0,0 +1,38 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ location "0";
+ object nut;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+dimensions [0 2 -1 0 0 0 0];
+
+internalField uniform 0;
+
+boundaryField
+{
+ wing
+ {
+ type nutkWallFunction;
+ value uniform 0;
+ }
+
+ "(front|back|topAndBottom|inlet|outlet)"
+ {
+ type calculated;
+ value uniform 0;
+ }
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega
new file mode 100644
index 0000000000..2024b25ef7
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega
@@ -0,0 +1,44 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ object epsilon;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 0 -1 0 0 0 0];
+
+internalField uniform $turbulentOmega;
+
+boundaryField
+{
+ #include "include/fixedInlet"
+
+ outlet
+ {
+ type inletOutlet;
+ inletValue $internalField;
+ value $internalField;
+ }
+
+ wing
+ {
+ type omegaWallFunction;
+ value $internalField;
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p
new file mode 100644
index 0000000000..78a5d15299
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p
@@ -0,0 +1,44 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class volScalarField;
+ object p;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+#include "include/initialConditions"
+
+dimensions [0 2 -2 0 0 0 0];
+
+internalField uniform $pressure;
+
+boundaryField
+{
+ inlet
+ {
+ type zeroGradient;
+ }
+
+ outlet
+ {
+ type fixedValue;
+ value $internalField;
+ }
+
+ wing
+ {
+ type zeroGradient;
+ }
+
+ #include "include/frontBackTopBottomPatches"
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties
new file mode 100644
index 0000000000..4e21ca67e4
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties
@@ -0,0 +1,25 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "constant";
+ object RASProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+RASModel kOmegaSST;
+
+turbulence on;
+
+printCoeffs on;
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties
new file mode 100644
index 0000000000..bbb18ba9e6
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties
@@ -0,0 +1,47 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object extrudeProperties;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+// What to extrude:
+// patch : from patch of another case ('sourceCase')
+
+constructFrom patch;
+sourceCase "../wingFlutter_snappyHexMesh";
+sourcePatches (front);
+
+// If construct from patch: patch to use for back (can be same as sourcePatch)
+exposedPatchName back;
+
+// Flip surface normals before usage.
+flipNormals false;
+
+//- Linear extrusion in point-normal direction
+extrudeModel linearNormal;
+
+nLayers 1;
+
+expansionRatio 1.0;
+
+linearNormalCoeffs
+{
+ thickness 0.05;
+}
+
+// Do front and back need to be merged? Usually only makes sense for 360
+// degree wedges.
+mergeFaces false;
+
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary
new file mode 100644
index 0000000000..87c839b5cc
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary
@@ -0,0 +1,58 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: dev |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class polyBoundaryMesh;
+ location "constant/polyMesh";
+ object boundary;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+6
+(
+ topAndBottom
+ {
+ type patch;
+ nFaces 150;
+ startFace 76473;
+ }
+ inlet
+ {
+ type patch;
+ nFaces 48;
+ startFace 76623;
+ }
+ outlet
+ {
+ type patch;
+ nFaces 48;
+ startFace 76671;
+ }
+ front
+ {
+ type empty;
+ nFaces 38129;
+ startFace 76719;
+ }
+ back
+ {
+ type empty;
+ nFaces 38129;
+ startFace 114848;
+ }
+ wing
+ {
+ type wall;
+ nFaces 778;
+ startFace 152977;
+ }
+)
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties
new file mode 100644
index 0000000000..a9d8bf659c
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties
@@ -0,0 +1,22 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object transportProperties;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+transportModel Newtonian;
+
+nu nu [0 2 -1 0 0 0 0] 1e-05;
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict
new file mode 100644
index 0000000000..7e8f0995ed
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict
@@ -0,0 +1,67 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object controlDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+application simpleFoam;
+
+startFrom latestTime;
+
+startTime 0;
+
+stopAt endTime;
+
+endTime 3000;
+
+deltaT 1;
+
+writeControl runTime;
+
+writeInterval 100;
+
+purgeWrite 0;
+
+writeFormat ascii;
+
+writePrecision 6;
+
+writeCompression off;
+
+timeFormat general;
+
+timePrecision 6;
+
+runTimeModifiable true;
+
+functions
+{
+ forces
+ {
+ type forces;
+ functionObjectLibs ( "libforces.so" );
+ outputControl timeStep;
+ outputInterval 10;
+ patches (wing);
+ pName p;
+ UName U;
+ rhoName rhoInf;
+ log true;
+ rhoInf 1;
+ CofR (0.4974612746 -0.01671895744 0.125);
+ }
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict
new file mode 100644
index 0000000000..b75b8e1075
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict
@@ -0,0 +1,49 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object createPatchDict;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+// Tolerance used in matching faces. Absolute tolerance is span of
+// face times this factor. To load incorrectly matches meshes set this
+// to a higher value.
+matchTolerance 1E-3;
+
+// Do a synchronisation of coupled points after creation of any patches.
+// Note: this does not work with points that are on multiple coupled patches
+// with transformations.
+pointSync true;
+
+// Patches to create.
+patches
+(
+ {
+ // Name of new patch
+ name wing;
+
+ // Type of new patch
+ patchInfo
+ {
+ type wall;
+ }
+
+ // How to construct: either from 'patches' or 'set'
+ constructFrom patches;
+
+ // If constructFrom = patches : names of patches. Wildcards allowed.
+ patches ( wing_5degrees.obj_WALL10 );
+ }
+);
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes
new file mode 100644
index 0000000000..2eb6038d7f
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes
@@ -0,0 +1,59 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object fvSchemes;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+ddtSchemes
+{
+ default steadyState;
+}
+
+gradSchemes
+{
+ default Gauss linear;
+ grad(p) Gauss linear;
+ grad(U) Gauss linear;
+}
+
+divSchemes
+{
+ default none;
+ div(phi,U) Gauss linearUpwind grad(U);
+ div(phi,k) Gauss upwind;
+ div(phi,omega) Gauss upwind;
+ div((nuEff*dev(grad(U).T()))) Gauss linear;
+}
+
+laplacianSchemes
+{
+ default Gauss linear corrected;
+}
+
+interpolationSchemes
+{
+ default linear;
+}
+
+snGradSchemes
+{
+ default corrected;
+}
+
+fluxRequired
+{
+ default no;
+ p;
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution
new file mode 100644
index 0000000000..e99098b5b9
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution
@@ -0,0 +1,79 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object fvSolution;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+solvers
+{
+ p
+ {
+ solver GAMG;
+ tolerance 1e-7;
+ relTol 0.1;
+ smoother GaussSeidel;
+ nPreSweeps 0;
+ nPostSweeps 2;
+ cacheAgglomeration on;
+ agglomerator faceAreaPair;
+ nCellsInCoarsestLevel 10;
+ mergeLevels 1;
+ }
+
+ U
+ {
+ solver smoothSolver;
+ smoother GaussSeidel;
+ tolerance 1e-8;
+ relTol 0.1;
+ nSweeps 1;
+ }
+
+ k
+ {
+ solver smoothSolver;
+ smoother GaussSeidel;
+ tolerance 1e-8;
+ relTol 0.1;
+ nSweeps 1;
+ }
+
+ omega
+ {
+ solver smoothSolver;
+ smoother GaussSeidel;
+ tolerance 1e-8;
+ relTol 0.1;
+ nSweeps 1;
+ }
+}
+
+SIMPLE
+{
+ nNonOrthogonalCorrectors 0;
+}
+
+relaxationFactors
+{
+ p 0.3;
+ U 0.7;
+ k 0.7;
+ omega 0.7;
+}
+
+cache
+{
+ grad(U);
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict
new file mode 100644
index 0000000000..1a5ba112ca
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict
@@ -0,0 +1,74 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object blockMeshDict;
+}
+
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+convertToMeters 1;
+
+vertices
+(
+ (-2.5 -4.8 -0.1)
+ ( 10 -4.8 -0.1)
+ ( 10 4.8 -0.1)
+ (-2.5 4.8 -0.1)
+ (-2.5 -4.8 0.1)
+ ( 10 -4.8 0.1)
+ ( 10 4.8 0.1)
+ (-2.5 4.8 0.1)
+);
+
+blocks
+(
+ hex (0 1 2 3 4 5 6 7) (75 48 1) simpleGrading (1 1 1)
+);
+
+edges
+(
+);
+
+patches
+(
+ patch topAndBottom
+ (
+ (3 7 6 2)
+ (1 5 4 0)
+ )
+
+ patch inlet
+ (
+ (0 4 7 3)
+ )
+
+ patch outlet
+ (
+ (2 6 5 1)
+ )
+
+ empty front
+ (
+ (4 5 6 7)
+ )
+
+ empty back
+ (
+ (0 3 2 1)
+ )
+);
+
+mergePatchPairs
+(
+);
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary
new file mode 100644
index 0000000000..450937dc95
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary
@@ -0,0 +1,58 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: dev |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class polyBoundaryMesh;
+ location "constant/polyMesh";
+ object boundary;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+6
+(
+ topAndBottom
+ {
+ type patch;
+ nFaces 150;
+ startFace 2098769;
+ }
+ inlet
+ {
+ type patch;
+ nFaces 48;
+ startFace 2098919;
+ }
+ outlet
+ {
+ type patch;
+ nFaces 48;
+ startFace 2098967;
+ }
+ front
+ {
+ type empty;
+ nFaces 38129;
+ startFace 2099015;
+ }
+ back
+ {
+ type empty;
+ nFaces 38120;
+ startFace 2137144;
+ }
+ wing_5degrees.obj_WALL10
+ {
+ type wall;
+ nFaces 49792;
+ startFace 2175264;
+ }
+)
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj
new file mode 100644
index 0000000000..4be2aac5f2
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj
@@ -0,0 +1,1054 @@
+# Wavefront OBJ file written 2010-05-13T09:12:43
+o wing_5degrees
+
+# points : 520
+# faces : 520
+# zones : 1
+# 0 WALL10 (nFaces: 520)
+
+#
+v 1.00488 -0.0890722 -0.5
+v 1.00488 -0.0890722 0.5
+v 0.999453 -0.0870827 0.5
+v 0.999453 -0.0870827 -0.5
+v 0.993747 -0.0849908 0.5
+v 0.993747 -0.0849908 -0.5
+v 0.98776 -0.0827959 0.5
+v 0.98776 -0.0827959 -0.5
+v 0.981475 -0.0804834 0.5
+v 0.981475 -0.0804834 -0.5
+v 0.974878 -0.0780483 0.5
+v 0.974878 -0.0780483 -0.5
+v 0.967936 -0.075535 0.5
+v 0.967936 -0.075535 -0.5
+v 0.960671 -0.0728297 0.5
+v 0.960671 -0.0728297 -0.5
+v 0.952986 -0.070149 0.5
+v 0.952986 -0.070149 -0.5
+v 0.944915 -0.067332 0.5
+v 0.944915 -0.067332 -0.5
+v 0.936442 -0.064377 0.5
+v 0.936442 -0.064377 -0.5
+v 0.927543 -0.0612777 0.5
+v 0.927543 -0.0612777 -0.5
+v 0.918171 -0.0581074 0.5
+v 0.918171 -0.0581074 -0.5
+v 0.908345 -0.0547308 0.5
+v 0.908345 -0.0547308 -0.5
+v 0.897978 -0.0513371 0.5
+v 0.897978 -0.0513371 -0.5
+v 0.887113 -0.0477115 0.5
+v 0.887113 -0.0477115 -0.5
+v 0.875671 -0.0440076 0.5
+v 0.875671 -0.0440076 -0.5
+v 0.863634 -0.0401898 0.5
+v 0.863634 -0.0401898 -0.5
+v 0.850988 -0.0362043 0.5
+v 0.850988 -0.0362043 -0.5
+v 0.837677 -0.0321259 0.5
+v 0.837677 -0.0321259 -0.5
+v 0.8237 -0.0278406 0.5
+v 0.8237 -0.0278406 -0.5
+v 0.808997 -0.0234314 0.5
+v 0.808997 -0.0234314 -0.5
+v 0.793536 -0.0188824 0.5
+v 0.793536 -0.0188824 -0.5
+v 0.777248 -0.0142896 0.5
+v 0.777248 -0.0142896 -0.5
+v 0.760144 -0.00947585 0.5
+v 0.760144 -0.00947585 -0.5
+v 0.742148 -0.0045544 0.5
+v 0.742148 -0.0045544 -0.5
+v 0.723207 0.000449948 0.5
+v 0.723207 0.000449948 -0.5
+v 0.703296 0.00561154 0.5
+v 0.703296 0.00561154 -0.5
+v 0.682345 0.010854 0.5
+v 0.682345 0.010854 -0.5
+v 0.660295 0.0161554 0.5
+v 0.660295 0.0161554 -0.5
+v 0.637103 0.0215548 0.5
+v 0.637103 0.0215548 -0.5
+v 0.606829 0.0282606 0.5
+v 0.606829 0.0282606 -0.5
+v 0.578018 0.0343978 0.5
+v 0.578018 0.0343978 -0.5
+v 0.550557 0.0397874 0.5
+v 0.550557 0.0397874 -0.5
+v 0.524436 0.0447356 0.5
+v 0.524436 0.0447356 -0.5
+v 0.499549 0.0490421 0.5
+v 0.499549 0.0490421 -0.5
+v 0.475869 0.05291 0.5
+v 0.475869 0.05291 -0.5
+v 0.45334 0.0563729 0.5
+v 0.45334 0.0563729 -0.5
+v 0.431911 0.059484 0.5
+v 0.431911 0.059484 -0.5
+v 0.411518 0.0621876 0.5
+v 0.411518 0.0621876 -0.5
+v 0.392118 0.0645445 0.5
+v 0.392118 0.0645445 -0.5
+v 0.373644 0.0664046 0.5
+v 0.373644 0.0664046 -0.5
+v 0.356081 0.0680196 0.5
+v 0.356081 0.0680196 -0.5
+v 0.339375 0.0692961 0.5
+v 0.339375 0.0692961 -0.5
+v 0.323487 0.0702815 0.5
+v 0.323487 0.0702815 -0.5
+v 0.308383 0.0710035 0.5
+v 0.308383 0.0710035 -0.5
+v 0.294024 0.0714698 0.5
+v 0.294024 0.0714698 -0.5
+v 0.28038 0.0717809 0.5
+v 0.28038 0.0717809 -0.5
+v 0.267416 0.0719191 0.5
+v 0.267416 0.0719191 -0.5
+v 0.255099 0.0718222 0.5
+v 0.255099 0.0718222 -0.5
+v 0.243399 0.0716511 0.5
+v 0.243399 0.0716511 -0.5
+v 0.232288 0.0713208 0.5
+v 0.232288 0.0713208 -0.5
+v 0.221735 0.0709249 0.5
+v 0.221735 0.0709249 -0.5
+v 0.211715 0.0704338 0.5
+v 0.211715 0.0704338 -0.5
+v 0.202202 0.0698513 0.5
+v 0.202202 0.0698513 -0.5
+v 0.19317 0.0692271 0.5
+v 0.19317 0.0692271 -0.5
+v 0.184599 0.0685108 0.5
+v 0.184599 0.0685108 -0.5
+v 0.176464 0.0677409 0.5
+v 0.176464 0.0677409 -0.5
+v 0.168741 0.0669472 0.5
+v 0.168741 0.0669472 -0.5
+v 0.161418 0.0660755 0.5
+v 0.161418 0.0660755 -0.5
+v 0.154469 0.0651852 0.5
+v 0.154469 0.0651852 -0.5
+v 0.145493 0.0640314 0.5
+v 0.145493 0.0640314 -0.5
+v 0.136995 0.0627463 0.5
+v 0.136995 0.0627463 -0.5
+v 0.128932 0.0614383 0.5
+v 0.128932 0.0614383 -0.5
+v 0.121282 0.0601525 0.5
+v 0.121282 0.0601525 -0.5
+v 0.114049 0.0587416 0.5
+v 0.114049 0.0587416 -0.5
+v 0.107186 0.0573482 0.5
+v 0.107186 0.0573482 -0.5
+v 0.100675 0.0559871 0.5
+v 0.100675 0.0559871 -0.5
+v 0.0945147 0.0545794 0.5
+v 0.0945147 0.0545794 -0.5
+v 0.0886858 0.0531426 0.5
+v 0.0886858 0.0531426 -0.5
+v 0.0831659 0.0517083 0.5
+v 0.0831659 0.0517083 -0.5
+v 0.0779342 0.0503006 0.5
+v 0.0779342 0.0503006 -0.5
+v 0.072975 0.0489224 0.5
+v 0.072975 0.0489224 -0.5
+v 0.0682798 0.0475559 0.5
+v 0.0682798 0.0475559 -0.5
+v 0.0638499 0.0461601 0.5
+v 0.0638499 0.0461601 -0.5
+v 0.0596656 0.0447577 0.5
+v 0.0596656 0.0447577 -0.5
+v 0.055694 0.0434126 0.5
+v 0.055694 0.0434126 -0.5
+v 0.0519364 0.0420932 0.5
+v 0.0519364 0.0420932 -0.5
+v 0.0484053 0.0407363 0.5
+v 0.0484053 0.0407363 -0.5
+v 0.0450779 0.0393756 0.5
+v 0.0450779 0.0393756 -0.5
+v 0.0419215 0.0380722 0.5
+v 0.0419215 0.0380722 -0.5
+v 0.0389288 0.0368211 0.5
+v 0.0389288 0.0368211 -0.5
+v 0.036102 0.0355928 0.5
+v 0.036102 0.0355928 -0.5
+v 0.0334425 0.034368 0.5
+v 0.0334425 0.034368 -0.5
+v 0.0309496 0.0331356 0.5
+v 0.0309496 0.0331356 -0.5
+v 0.0286117 0.0319047 0.5
+v 0.0286117 0.0319047 -0.5
+v 0.0264077 0.0307022 0.5
+v 0.0264077 0.0307022 -0.5
+v 0.0243248 0.02954 0.5
+v 0.0243248 0.02954 -0.5
+v 0.0223665 0.0284014 0.5
+v 0.0223665 0.0284014 -0.5
+v 0.0205353 0.0272716 0.5
+v 0.0205353 0.0272716 -0.5
+v 0.0188204 0.0261581 0.5
+v 0.0188204 0.0261581 -0.5
+v 0.0172057 0.0250781 0.5
+v 0.0172057 0.0250781 -0.5
+v 0.015681 0.0240389 0.5
+v 0.015681 0.0240389 -0.5
+v 0.0142472 0.0230307 0.5
+v 0.0142472 0.0230307 -0.5
+v 0.0129051 0.0220434 0.5
+v 0.0129051 0.0220434 -0.5
+v 0.0116567 0.0210699 0.5
+v 0.0116567 0.0210699 -0.5
+v 0.0105044 0.0201047 0.5
+v 0.0105044 0.0201047 -0.5
+v 0.00944864 0.0191444 0.5
+v 0.00944864 0.0191444 -0.5
+v 0.00847997 0.0181956 0.5
+v 0.00847997 0.0181956 -0.5
+v 0.00758214 0.0172702 0.5
+v 0.00758214 0.0172702 -0.5
+v 0.00674204 0.0163779 0.5
+v 0.00674204 0.0163779 -0.5
+v 0.00595671 0.0155186 0.5
+v 0.00595671 0.0155186 -0.5
+v 0.00523198 0.0146848 0.5
+v 0.00523198 0.0146848 -0.5
+v 0.00457157 0.0138701 0.5
+v 0.00457157 0.0138701 -0.5
+v 0.00397503 0.0130721 0.5
+v 0.00397503 0.0130721 -0.5
+v 0.00343506 0.0122936 0.5
+v 0.00343506 0.0122936 -0.5
+v 0.0029443 0.0115379 0.5
+v 0.0029443 0.0115379 -0.5
+v 0.0024965 0.010807 0.5
+v 0.0024965 0.010807 -0.5
+v 0.00209053 0.0101012 0.5
+v 0.00209053 0.0101012 -0.5
+v 0.00172938 0.00941821 0.5
+v 0.00172938 0.00941821 -0.5
+v 0.00141481 0.00875662 0.5
+v 0.00141481 0.00875662 -0.5
+v 0.00114703 0.00811509 0.5
+v 0.00114703 0.00811509 -0.5
+v 0.000922634 0.00749375 0.5
+v 0.000922634 0.00749375 -0.5
+v 0.00073432 0.00689421 0.5
+v 0.00073432 0.00689421 -0.5
+v 0.000575606 0.00631745 0.5
+v 0.000575606 0.00631745 -0.5
+v 0.000441178 0.00576428 0.5
+v 0.000441178 0.00576428 -0.5
+v 0.000326628 0.00523494 0.5
+v 0.000326628 0.00523494 -0.5
+v 0.000229331 0.00472926 0.5
+v 0.000229331 0.00472926 -0.5
+v 0.000147968 0.00424663 0.5
+v 0.000147968 0.00424663 -0.5
+v 8.13071e-05 0.00378656 0.5
+v 8.13071e-05 0.00378656 -0.5
+v 2.81186e-05 0.00334838 0.5
+v 2.81186e-05 0.00334838 -0.5
+v -1.28053e-05 0.00293132 0.5
+v -1.28053e-05 0.00293132 -0.5
+v -4.26138e-05 0.00253464 0.5
+v -4.26138e-05 0.00253464 -0.5
+v -6.24104e-05 0.00215753 0.5
+v -6.24104e-05 0.00215753 -0.5
+v -7.32354e-05 0.00179922 0.5
+v -7.32354e-05 0.00179922 -0.5
+v -7.6066e-05 0.00145891 0.5
+v -7.6066e-05 0.00145891 -0.5
+v -7.18149e-05 0.00113574 0.5
+v -7.18149e-05 0.00113574 -0.5
+v -6.13265e-05 0.000828962 0.5
+v -6.13265e-05 0.000828962 -0.5
+v -4.5388e-05 0.000537894 0.5
+v -4.5388e-05 0.000537894 -0.5
+v -2.47174e-05 0.000261729 0.5
+v -2.47174e-05 0.000261729 -0.5
+v 0.999428 -0.0886333 -0.5
+v 0.999428 -0.0886333 0.5
+v 0 0 0.5
+v 0 0 -0.5
+v 3.07731e-05 -0.000269468 0.5
+v 3.07731e-05 -0.000269468 -0.5
+v 6.87839e-05 -0.000551758 0.5
+v 6.87839e-05 -0.000551758 -0.5
+v 0.00011487 -0.000847395 0.5
+v 0.00011487 -0.000847395 -0.5
+v 0.000169958 -0.00115699 0.5
+v 0.000169958 -0.00115699 -0.5
+v 0.000235006 -0.00148084 0.5
+v 0.000235006 -0.00148084 -0.5
+v 0.000311085 -0.00181947 0.5
+v 0.000311085 -0.00181947 -0.5
+v 0.000399343 -0.00217329 0.5
+v 0.000399343 -0.00217329 -0.5
+v 0.000501006 -0.00254265 0.5
+v 0.000501006 -0.00254265 -0.5
+v 0.000617405 -0.00292793 0.5
+v 0.000617405 -0.00292793 -0.5
+v 0.000749918 -0.00332928 0.5
+v 0.000749918 -0.00332928 -0.5
+v 0.000900098 -0.00374706 0.5
+v 0.000900098 -0.00374706 -0.5
+v 0.00106951 -0.00418123 0.5
+v 0.00106951 -0.00418123 -0.5
+v 0.00125981 -0.00463173 0.5
+v 0.00125981 -0.00463173 -0.5
+v 0.00147278 -0.00509836 0.5
+v 0.00147278 -0.00509836 -0.5
+v 0.00171023 -0.00558073 0.5
+v 0.00171023 -0.00558073 -0.5
+v 0.0019741 -0.00607866 0.5
+v 0.0019741 -0.00607866 -0.5
+v 0.00226657 -0.00659235 0.5
+v 0.00226657 -0.00659235 -0.5
+v 0.00258985 -0.00712192 0.5
+v 0.00258985 -0.00712192 -0.5
+v 0.00294625 -0.00766749 0.5
+v 0.00294625 -0.00766749 -0.5
+v 0.0033381 -0.00822888 0.5
+v 0.0033381 -0.00822888 -0.5
+v 0.00376858 -0.00880495 0.5
+v 0.00376858 -0.00880495 -0.5
+v 0.00424144 -0.00939356 0.5
+v 0.00424144 -0.00939356 -0.5
+v 0.0047608 -0.00999197 0.5
+v 0.0047608 -0.00999197 -0.5
+v 0.00533108 -0.0105969 0.5
+v 0.00533108 -0.0105969 -0.5
+v 0.00595465 -0.0112076 0.5
+v 0.00595465 -0.0112076 -0.5
+v 0.00663108 -0.0118268 0.5
+v 0.00663108 -0.0118268 -0.5
+v 0.00735864 -0.0124589 0.5
+v 0.00735864 -0.0124589 -0.5
+v 0.00813479 -0.0131082 0.5
+v 0.00813479 -0.0131082 -0.5
+v 0.00896315 -0.0137726 0.5
+v 0.00896315 -0.0137726 -0.5
+v 0.00985143 -0.0144449 0.5
+v 0.00985143 -0.0144449 -0.5
+v 0.0108089 -0.0151156 0.5
+v 0.0108089 -0.0151156 -0.5
+v 0.0118417 -0.0157801 0.5
+v 0.0118417 -0.0157801 -0.5
+v 0.0129485 -0.0164439 0.5
+v 0.0129485 -0.0164439 -0.5
+v 0.0141258 -0.0171158 0.5
+v 0.0141258 -0.0171158 -0.5
+v 0.0153717 -0.0178024 0.5
+v 0.0153717 -0.0178024 -0.5
+v 0.0166914 -0.0185005 0.5
+v 0.0166914 -0.0185005 -0.5
+v 0.0180921 -0.0192037 0.5
+v 0.0180921 -0.0192037 -0.5
+v 0.01958 -0.019908 0.5
+v 0.01958 -0.019908 -0.5
+v 0.0211576 -0.0206151 0.5
+v 0.0211576 -0.0206151 -0.5
+v 0.0228265 -0.0213288 0.5
+v 0.0228265 -0.0213288 -0.5
+v 0.0245895 -0.0220523 0.5
+v 0.0245895 -0.0220523 -0.5
+v 0.0264506 -0.0227868 0.5
+v 0.0264506 -0.0227868 -0.5
+v 0.028415 -0.0235332 0.5
+v 0.028415 -0.0235332 -0.5
+v 0.0304905 -0.0242814 0.5
+v 0.0304905 -0.0242814 -0.5
+v 0.0326872 -0.0250146 0.5
+v 0.0326872 -0.0250146 -0.5
+v 0.0350128 -0.0257258 0.5
+v 0.0350128 -0.0257258 -0.5
+v 0.0374672 -0.0264333 0.5
+v 0.0374672 -0.0264333 -0.5
+v 0.0400497 -0.0271566 0.5
+v 0.0400497 -0.0271566 -0.5
+v 0.0427704 -0.0278802 0.5
+v 0.0427704 -0.0278802 -0.5
+v 0.0456434 -0.0285739 0.5
+v 0.0456434 -0.0285739 -0.5
+v 0.0486731 -0.0292495 0.5
+v 0.0486731 -0.0292495 -0.5
+v 0.0518554 -0.0299566 0.5
+v 0.0518554 -0.0299566 -0.5
+v 0.0551966 -0.030697 0.5
+v 0.0551966 -0.030697 -0.5
+v 0.0587179 -0.0314085 0.5
+v 0.0587179 -0.0314085 -0.5
+v 0.062431 -0.032078 0.5
+v 0.062431 -0.032078 -0.5
+v 0.0663314 -0.0327743 0.5
+v 0.0663314 -0.0327743 -0.5
+v 0.0704248 -0.033514 0.5
+v 0.0704248 -0.033514 -0.5
+v 0.0747335 -0.0342256 0.5
+v 0.0747335 -0.0342256 -0.5
+v 0.0792714 -0.0348902 0.5
+v 0.0792714 -0.0348902 -0.5
+v 0.0840416 -0.0355492 0.5
+v 0.0840416 -0.0355492 -0.5
+v 0.089054 -0.0362103 0.5
+v 0.089054 -0.0362103 -0.5
+v 0.0943226 -0.0368627 0.5
+v 0.0943226 -0.0368627 -0.5
+v 0.0998603 -0.0375041 0.5
+v 0.0998603 -0.0375041 -0.5
+v 0.105679 -0.0381355 0.5
+v 0.105679 -0.0381355 -0.5
+v 0.111793 -0.0387575 0.5
+v 0.111793 -0.0387575 -0.5
+v 0.118218 -0.0393567 0.5
+v 0.118218 -0.0393567 -0.5
+v 0.124968 -0.0399429 0.5
+v 0.124968 -0.0399429 -0.5
+v 0.132055 -0.0405782 0.5
+v 0.132055 -0.0405782 -0.5
+v 0.1395 -0.0411771 0.5
+v 0.1395 -0.0411771 -0.5
+v 0.147326 -0.041699 0.5
+v 0.147326 -0.041699 -0.5
+v 0.15451 -0.0421969 0.5
+v 0.15451 -0.0421969 -0.5
+v 0.162054 -0.042698 0.5
+v 0.162054 -0.042698 -0.5
+v 0.16998 -0.0431596 0.5
+v 0.16998 -0.0431596 -0.5
+v 0.178305 -0.0435984 0.5
+v 0.178305 -0.0435984 -0.5
+v 0.187045 -0.0440696 0.5
+v 0.187045 -0.0440696 -0.5
+v 0.196223 -0.0445349 0.5
+v 0.196223 -0.0445349 -0.5
+v 0.205864 -0.0449725 0.5
+v 0.205864 -0.0449725 -0.5
+v 0.215985 -0.045448 0.5
+v 0.215985 -0.045448 -0.5
+v 0.226615 -0.0458797 0.5
+v 0.226615 -0.0458797 -0.5
+v 0.237778 -0.0463184 0.5
+v 0.237778 -0.0463184 -0.5
+v 0.249497 -0.0468156 0.5
+v 0.249497 -0.0468156 -0.5
+v 0.261804 -0.0472732 0.5
+v 0.261804 -0.0472732 -0.5
+v 0.274727 -0.0477637 0.5
+v 0.274727 -0.0477637 -0.5
+v 0.288294 -0.0483182 0.5
+v 0.288294 -0.0483182 -0.5
+v 0.302542 -0.0488257 0.5
+v 0.302542 -0.0488257 -0.5
+v 0.317502 -0.0493844 0.5
+v 0.317502 -0.0493844 -0.5
+v 0.33321 -0.0499788 0.5
+v 0.33321 -0.0499788 -0.5
+v 0.349702 -0.0506056 0.5
+v 0.349702 -0.0506056 -0.5
+v 0.367015 -0.0513872 0.5
+v 0.367015 -0.0513872 -0.5
+v 0.385192 -0.0522281 0.5
+v 0.385192 -0.0522281 -0.5
+v 0.404277 -0.0531254 0.5
+v 0.404277 -0.0531254 -0.5
+v 0.424316 -0.0540817 0.5
+v 0.424316 -0.0540817 -0.5
+v 0.445357 -0.0550979 0.5
+v 0.445357 -0.0550979 -0.5
+v 0.467451 -0.0560874 0.5
+v 0.467451 -0.0560874 -0.5
+v 0.490649 -0.0571824 0.5
+v 0.490649 -0.0571824 -0.5
+v 0.51501 -0.0582757 0.5
+v 0.51501 -0.0582757 -0.5
+v 0.540585 -0.0594903 0.5
+v 0.540585 -0.0594903 -0.5
+v 0.567439 -0.0607815 0.5
+v 0.567439 -0.0607815 -0.5
+v 0.595635 -0.0621304 0.5
+v 0.595635 -0.0621304 -0.5
+v 0.625242 -0.0635352 0.5
+v 0.625242 -0.0635352 -0.5
+v 0.649433 -0.0648334 0.5
+v 0.649433 -0.0648334 -0.5
+v 0.672415 -0.0660494 0.5
+v 0.672415 -0.0660494 -0.5
+v 0.694245 -0.0672674 0.5
+v 0.694245 -0.0672674 -0.5
+v 0.714979 -0.0684936 0.5
+v 0.714979 -0.0684936 -0.5
+v 0.734678 -0.0696472 0.5
+v 0.734678 -0.0696472 -0.5
+v 0.753392 -0.070724 0.5
+v 0.753392 -0.070724 -0.5
+v 0.771162 -0.0718742 0.5
+v 0.771162 -0.0718742 -0.5
+v 0.788046 -0.0729552 0.5
+v 0.788046 -0.0729552 -0.5
+v 0.804086 -0.0739668 0.5
+v 0.804086 -0.0739668 -0.5
+v 0.819316 -0.0750462 0.5
+v 0.819316 -0.0750462 -0.5
+v 0.833785 -0.076061 0.5
+v 0.833785 -0.076061 -0.5
+v 0.847532 -0.0770175 0.5
+v 0.847532 -0.0770175 -0.5
+v 0.86059 -0.0779215 0.5
+v 0.86059 -0.0779215 -0.5
+v 0.872998 -0.0787716 0.5
+v 0.872998 -0.0787716 -0.5
+v 0.884776 -0.079698 0.5
+v 0.884776 -0.079698 -0.5
+v 0.89597 -0.0805061 0.5
+v 0.89597 -0.0805061 -0.5
+v 0.906605 -0.0812554 0.5
+v 0.906605 -0.0812554 -0.5
+v 0.916704 -0.0820352 0.5
+v 0.916704 -0.0820352 -0.5
+v 0.926301 -0.0827494 0.5
+v 0.926301 -0.0827494 -0.5
+v 0.935409 -0.0835384 0.5
+v 0.935409 -0.0835384 -0.5
+v 0.944071 -0.0841575 0.5
+v 0.944071 -0.0841575 -0.5
+v 0.952294 -0.0848264 0.5
+v 0.952294 -0.0848264 -0.5
+v 0.960109 -0.0854166 0.5
+v 0.960109 -0.0854166 -0.5
+v 0.967527 -0.0860602 0.5
+v 0.967527 -0.0860602 -0.5
+v 0.97458 -0.0865997 0.5
+v 0.97458 -0.0865997 -0.5
+v 0.981277 -0.0871547 0.5
+v 0.981277 -0.0871547 -0.5
+v 0.987637 -0.0876912 0.5
+v 0.987637 -0.0876912 -0.5
+v 0.993684 -0.0881407 0.5
+v 0.993684 -0.0881407 -0.5
+#
+
+#
+g WALL10
+f 1 2 3
+f 3 4 1
+f 4 3 5
+f 5 6 4
+f 6 5 7
+f 7 8 6
+f 8 7 9
+f 9 10 8
+f 10 9 11
+f 11 12 10
+f 12 11 13
+f 13 14 12
+f 14 13 15
+f 15 16 14
+f 16 15 17
+f 17 18 16
+f 18 17 19
+f 19 20 18
+f 20 19 21
+f 21 22 20
+f 22 21 23
+f 23 24 22
+f 24 23 25
+f 25 26 24
+f 26 25 27
+f 27 28 26
+f 28 27 29
+f 29 30 28
+f 30 29 31
+f 31 32 30
+f 32 31 33
+f 33 34 32
+f 34 33 35
+f 35 36 34
+f 36 35 37
+f 37 38 36
+f 38 37 39
+f 39 40 38
+f 40 39 41
+f 41 42 40
+f 42 41 43
+f 43 44 42
+f 44 43 45
+f 45 46 44
+f 46 45 47
+f 47 48 46
+f 48 47 49
+f 49 50 48
+f 50 49 51
+f 51 52 50
+f 52 51 53
+f 53 54 52
+f 54 53 55
+f 55 56 54
+f 56 55 57
+f 57 58 56
+f 58 57 59
+f 59 60 58
+f 60 59 61
+f 61 62 60
+f 62 61 63
+f 63 64 62
+f 64 63 65
+f 65 66 64
+f 66 65 67
+f 67 68 66
+f 68 67 69
+f 69 70 68
+f 70 69 71
+f 71 72 70
+f 72 71 73
+f 73 74 72
+f 74 73 75
+f 75 76 74
+f 76 75 77
+f 77 78 76
+f 78 77 79
+f 79 80 78
+f 80 79 81
+f 81 82 80
+f 82 81 83
+f 83 84 82
+f 84 83 85
+f 85 86 84
+f 86 85 87
+f 87 88 86
+f 88 87 89
+f 89 90 88
+f 90 89 91
+f 91 92 90
+f 92 91 93
+f 93 94 92
+f 94 93 95
+f 95 96 94
+f 96 95 97
+f 97 98 96
+f 98 97 99
+f 99 100 98
+f 100 99 101
+f 101 102 100
+f 102 101 103
+f 103 104 102
+f 104 103 105
+f 105 106 104
+f 106 105 107
+f 107 108 106
+f 108 107 109
+f 109 110 108
+f 110 109 111
+f 111 112 110
+f 112 111 113
+f 113 114 112
+f 114 113 115
+f 115 116 114
+f 116 115 117
+f 117 118 116
+f 118 117 119
+f 119 120 118
+f 120 119 121
+f 121 122 120
+f 122 121 123
+f 123 124 122
+f 124 123 125
+f 125 126 124
+f 126 125 127
+f 127 128 126
+f 128 127 129
+f 129 130 128
+f 130 129 131
+f 131 132 130
+f 132 131 133
+f 133 134 132
+f 134 133 135
+f 135 136 134
+f 136 135 137
+f 137 138 136
+f 138 137 139
+f 139 140 138
+f 140 139 141
+f 141 142 140
+f 142 141 143
+f 143 144 142
+f 144 143 145
+f 145 146 144
+f 146 145 147
+f 147 148 146
+f 148 147 149
+f 149 150 148
+f 150 149 151
+f 151 152 150
+f 152 151 153
+f 153 154 152
+f 154 153 155
+f 155 156 154
+f 156 155 157
+f 157 158 156
+f 158 157 159
+f 159 160 158
+f 160 159 161
+f 161 162 160
+f 162 161 163
+f 163 164 162
+f 164 163 165
+f 165 166 164
+f 166 165 167
+f 167 168 166
+f 168 167 169
+f 169 170 168
+f 170 169 171
+f 171 172 170
+f 172 171 173
+f 173 174 172
+f 174 173 175
+f 175 176 174
+f 176 175 177
+f 177 178 176
+f 178 177 179
+f 179 180 178
+f 180 179 181
+f 181 182 180
+f 182 181 183
+f 183 184 182
+f 184 183 185
+f 185 186 184
+f 186 185 187
+f 187 188 186
+f 188 187 189
+f 189 190 188
+f 190 189 191
+f 191 192 190
+f 192 191 193
+f 193 194 192
+f 194 193 195
+f 195 196 194
+f 196 195 197
+f 197 198 196
+f 198 197 199
+f 199 200 198
+f 200 199 201
+f 201 202 200
+f 202 201 203
+f 203 204 202
+f 204 203 205
+f 205 206 204
+f 206 205 207
+f 207 208 206
+f 208 207 209
+f 209 210 208
+f 210 209 211
+f 211 212 210
+f 212 211 213
+f 213 214 212
+f 214 213 215
+f 215 216 214
+f 216 215 217
+f 217 218 216
+f 218 217 219
+f 219 220 218
+f 220 219 221
+f 221 222 220
+f 222 221 223
+f 223 224 222
+f 224 223 225
+f 225 226 224
+f 226 225 227
+f 227 228 226
+f 228 227 229
+f 229 230 228
+f 230 229 231
+f 231 232 230
+f 232 231 233
+f 233 234 232
+f 234 233 235
+f 235 236 234
+f 236 235 237
+f 237 238 236
+f 238 237 239
+f 239 240 238
+f 240 239 241
+f 241 242 240
+f 242 241 243
+f 243 244 242
+f 244 243 245
+f 245 246 244
+f 246 245 247
+f 247 248 246
+f 248 247 249
+f 249 250 248
+f 250 249 251
+f 251 252 250
+f 252 251 253
+f 253 254 252
+f 254 253 255
+f 255 256 254
+f 256 255 257
+f 257 258 256
+f 258 257 259
+f 259 260 258
+f 261 262 2
+f 2 1 261
+f 260 259 263
+f 263 264 260
+f 264 263 265
+f 265 266 264
+f 266 265 267
+f 267 268 266
+f 268 267 269
+f 269 270 268
+f 270 269 271
+f 271 272 270
+f 272 271 273
+f 273 274 272
+f 274 273 275
+f 275 276 274
+f 276 275 277
+f 277 278 276
+f 278 277 279
+f 279 280 278
+f 280 279 281
+f 281 282 280
+f 282 281 283
+f 283 284 282
+f 284 283 285
+f 285 286 284
+f 286 285 287
+f 287 288 286
+f 288 287 289
+f 289 290 288
+f 290 289 291
+f 291 292 290
+f 292 291 293
+f 293 294 292
+f 294 293 295
+f 295 296 294
+f 296 295 297
+f 297 298 296
+f 298 297 299
+f 299 300 298
+f 300 299 301
+f 301 302 300
+f 302 301 303
+f 303 304 302
+f 304 303 305
+f 305 306 304
+f 306 305 307
+f 307 308 306
+f 308 307 309
+f 309 310 308
+f 310 309 311
+f 311 312 310
+f 312 311 313
+f 313 314 312
+f 314 313 315
+f 315 316 314
+f 316 315 317
+f 317 318 316
+f 318 317 319
+f 319 320 318
+f 320 319 321
+f 321 322 320
+f 322 321 323
+f 323 324 322
+f 324 323 325
+f 325 326 324
+f 326 325 327
+f 327 328 326
+f 328 327 329
+f 329 330 328
+f 330 329 331
+f 331 332 330
+f 332 331 333
+f 333 334 332
+f 334 333 335
+f 335 336 334
+f 336 335 337
+f 337 338 336
+f 338 337 339
+f 339 340 338
+f 340 339 341
+f 341 342 340
+f 342 341 343
+f 343 344 342
+f 344 343 345
+f 345 346 344
+f 346 345 347
+f 347 348 346
+f 348 347 349
+f 349 350 348
+f 350 349 351
+f 351 352 350
+f 352 351 353
+f 353 354 352
+f 354 353 355
+f 355 356 354
+f 356 355 357
+f 357 358 356
+f 358 357 359
+f 359 360 358
+f 360 359 361
+f 361 362 360
+f 362 361 363
+f 363 364 362
+f 364 363 365
+f 365 366 364
+f 366 365 367
+f 367 368 366
+f 368 367 369
+f 369 370 368
+f 370 369 371
+f 371 372 370
+f 372 371 373
+f 373 374 372
+f 374 373 375
+f 375 376 374
+f 376 375 377
+f 377 378 376
+f 378 377 379
+f 379 380 378
+f 380 379 381
+f 381 382 380
+f 382 381 383
+f 383 384 382
+f 384 383 385
+f 385 386 384
+f 386 385 387
+f 387 388 386
+f 388 387 389
+f 389 390 388
+f 390 389 391
+f 391 392 390
+f 392 391 393
+f 393 394 392
+f 394 393 395
+f 395 396 394
+f 396 395 397
+f 397 398 396
+f 398 397 399
+f 399 400 398
+f 400 399 401
+f 401 402 400
+f 402 401 403
+f 403 404 402
+f 404 403 405
+f 405 406 404
+f 406 405 407
+f 407 408 406
+f 408 407 409
+f 409 410 408
+f 410 409 411
+f 411 412 410
+f 412 411 413
+f 413 414 412
+f 414 413 415
+f 415 416 414
+f 416 415 417
+f 417 418 416
+f 418 417 419
+f 419 420 418
+f 420 419 421
+f 421 422 420
+f 422 421 423
+f 423 424 422
+f 424 423 425
+f 425 426 424
+f 426 425 427
+f 427 428 426
+f 428 427 429
+f 429 430 428
+f 430 429 431
+f 431 432 430
+f 432 431 433
+f 433 434 432
+f 434 433 435
+f 435 436 434
+f 436 435 437
+f 437 438 436
+f 438 437 439
+f 439 440 438
+f 440 439 441
+f 441 442 440
+f 442 441 443
+f 443 444 442
+f 444 443 445
+f 445 446 444
+f 446 445 447
+f 447 448 446
+f 448 447 449
+f 449 450 448
+f 450 449 451
+f 451 452 450
+f 452 451 453
+f 453 454 452
+f 454 453 455
+f 455 456 454
+f 456 455 457
+f 457 458 456
+f 458 457 459
+f 459 460 458
+f 460 459 461
+f 461 462 460
+f 462 461 463
+f 463 464 462
+f 464 463 465
+f 465 466 464
+f 466 465 467
+f 467 468 466
+f 468 467 469
+f 469 470 468
+f 470 469 471
+f 471 472 470
+f 472 471 473
+f 473 474 472
+f 474 473 475
+f 475 476 474
+f 476 475 477
+f 477 478 476
+f 478 477 479
+f 479 480 478
+f 480 479 481
+f 481 482 480
+f 482 481 483
+f 483 484 482
+f 484 483 485
+f 485 486 484
+f 486 485 487
+f 487 488 486
+f 488 487 489
+f 489 490 488
+f 490 489 491
+f 491 492 490
+f 492 491 493
+f 493 494 492
+f 494 493 495
+f 495 496 494
+f 496 495 497
+f 497 498 496
+f 498 497 499
+f 499 500 498
+f 500 499 501
+f 501 502 500
+f 502 501 503
+f 503 504 502
+f 504 503 505
+f 505 506 504
+f 506 505 507
+f 507 508 506
+f 508 507 509
+f 509 510 508
+f 510 509 511
+f 511 512 510
+f 512 511 513
+f 513 514 512
+f 514 513 515
+f 515 516 514
+f 516 515 517
+f 517 518 516
+f 518 517 519
+f 519 520 518
+f 520 519 262
+f 262 261 520
+#
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict
new file mode 100644
index 0000000000..1259284a3d
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict
@@ -0,0 +1,50 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object controlDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+application snappyHexMesh;
+
+startFrom latestTime;
+
+startTime 0;
+
+stopAt endTime;
+
+endTime 100;
+
+deltaT 1;
+
+writeControl runTime;
+
+writeInterval 1;
+
+purgeWrite 0;
+
+writeFormat ascii;
+
+writePrecision 6;
+
+writeCompression off;
+
+timeFormat general;
+
+timePrecision 6;
+
+runTimeModifiable true;
+
+}
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict
new file mode 100644
index 0000000000..2dc0a0a25e
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict
@@ -0,0 +1,45 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object decomposeParDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+numberOfSubdomains 3;
+
+method simple;
+
+simpleCoeffs
+{
+ n ( 1 3 1 );
+ delta 0.001;
+}
+
+hierarchicalCoeffs
+{
+ n ( 3 2 1 );
+ delta 0.001;
+ order xyz;
+}
+
+manualCoeffs
+{
+ dataFile "cellDecomposition";
+}
+
+metisCoeffs
+{
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes
new file mode 100644
index 0000000000..ae2773bf84
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes
@@ -0,0 +1,70 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object fvSchemes;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+ddtSchemes
+{
+ default Euler;
+}
+
+gradSchemes
+{
+ default Gauss linear;
+}
+
+divSchemes
+{
+ default none;
+ div(phi,U) Gauss limitedLinearV 1;
+ div(phi,k) Gauss upwind;
+ div(phi,epsilon) Gauss upwind;
+ div(phi,R) Gauss upwind;
+ div(R) Gauss linear;
+ div(phid,p) Gauss limitedLinear 1;
+ div(phiU,p) Gauss limitedLinear 1;
+ div(phi,e) Gauss limitedLinear 1;
+ div((muEff*dev2(grad(U).T()))) Gauss linear;
+}
+
+laplacianSchemes
+{
+ default none;
+ laplacian(muEff,U) Gauss linear limited 0.5;
+ laplacian(DkEff,k) Gauss linear limited 0.5;
+ laplacian(DREff,R) Gauss linear limited 0.5;
+ laplacian(DepsilonEff,epsilon) Gauss linear limited 0.5;
+ laplacian((rho*(1|A(U))),p) Gauss linear limited 0.5;
+ laplacian(alphaEff,e) Gauss linear limited 0.5;
+}
+
+interpolationSchemes
+{
+ default linear;
+}
+
+snGradSchemes
+{
+ default corrected;
+}
+
+fluxRequired
+{
+ default no;
+ p;
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution
new file mode 100644
index 0000000000..d85a6d5e98
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution
@@ -0,0 +1,51 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ location "system";
+ object fvSolution;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+solvers
+{
+ p
+ {
+ solver PBiCG;
+ preconditioner DILU;
+ tolerance 1e-12;
+ relTol 0;
+ }
+
+ rho
+ {
+ solver PCG;
+ preconditioner DIC;
+ tolerance 1e-08;
+ relTol 0;
+ }
+
+ "(U|e|k|epsilon|R)"
+ {
+ $p;
+ tolerance 1e-08;
+ relTol 0;
+ }
+}
+
+PISO
+{
+ nCorrectors 2;
+ nNonOrthogonalCorrectors 2;
+}
+
+
+// ************************************************************************* //
diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict
new file mode 100644
index 0000000000..2300d79207
--- /dev/null
+++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict
@@ -0,0 +1,326 @@
+/*--------------------------------*- C++ -*----------------------------------*\
+| ========= | |
+| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
+| \\ / O peration | Version: 1.6 |
+| \\ / A nd | Web: http://www.OpenFOAM.org |
+| \\/ M anipulation | |
+\*---------------------------------------------------------------------------*/
+FoamFile
+{
+ version 2.0;
+ format ascii;
+ class dictionary;
+ object snappyHexMeshDict;
+}
+// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
+
+// Which of the steps to run
+castellatedMesh true;
+snap true;
+addLayers true;
+
+
+// Geometry. Definition of all surfaces. All surfaces are of class
+// searchableSurface.
+// Surfaces are used
+// - to specify refinement for any mesh cell intersecting it
+// - to specify refinement for any mesh cell inside/outside/near
+// - to 'snap' the mesh boundary to the surface
+geometry
+{
+ wing_5degrees.obj
+ {
+ type triSurfaceMesh;
+ }
+
+ refinementBox
+ {
+ type searchableBox;
+ min (-1 -1 -1);
+ max ( 5 1 1);
+ }
+};
+
+
+
+// Settings for the castellatedMesh generation.
+castellatedMeshControls
+{
+
+ // Refinement parameters
+ // ~~~~~~~~~~~~~~~~~~~~~
+
+ // If local number of cells is >= maxLocalCells on any processor
+ // switches from from refinement followed by balancing
+ // (current method) to (weighted) balancing before refinement.
+ maxLocalCells 1000000;
+
+ // Overall cell limit (approximately). Refinement will stop immediately
+ // upon reaching this number so a refinement level might not complete.
+ // Note that this is the number of cells before removing the part which
+ // is not 'visible' from the keepPoint. The final number of cells might
+ // actually be a lot less.
+ maxGlobalCells 2000000;
+
+ // The surface refinement loop might spend lots of iterations refining just a
+ // few cells. This setting will cause refinement to stop if <= minimumRefine
+ // are selected for refinement. Note: it will at least do one iteration
+ // (unless the number of cells to refine is 0)
+ minRefinementCells 100;
+
+ // Number of buffer layers between different levels.
+ // 1 means normal 2:1 refinement restriction, larger means slower
+ // refinement.
+ nCellsBetweenLevels 6;
+
+
+
+ // Explicit feature edge refinement
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ // Specifies a level for any cell intersected by its edges.
+ // This is a featureEdgeMesh, read from constant/triSurface for now.
+ features ();
+
+
+
+ // Surface based refinement
+ // ~~~~~~~~~~~~~~~~~~~~~~~~
+
+ // Specifies two levels for every surface. The first is the minimum level,
+ // every cell intersecting a surface gets refined up to the minimum level.
+ // The second level is the maximum level. Cells that 'see' multiple
+ // intersections where the intersections make an
+ // angle > resolveFeatureAngle get refined up to the maximum level.
+
+ refinementSurfaces
+ {
+ wing_5degrees.obj
+ {
+ // Surface-wise min and max refinement level
+ level (6 6);
+ }
+ }
+
+ // Resolve sharp angles on fridges
+ resolveFeatureAngle 30;
+
+
+ // Region-wise refinement
+ // ~~~~~~~~~~~~~~~~~~~~~~
+
+ // Specifies refinement level for cells in relation to a surface. One of
+ // three modes
+ // - distance. 'levels' specifies per distance to the surface the
+ // wanted refinement level. The distances need to be specified in
+ // descending order.
+ // - inside. 'levels' is only one entry and only the level is used. All
+ // cells inside the surface get refined up to the level. The surface
+ // needs to be closed for this to be possible.
+ // - outside. Same but cells outside.
+
+ refinementRegions
+ {
+ refinementBox
+ {
+ mode inside;
+ levels ((1e15 3));
+ }
+ }
+
+
+ // Mesh selection
+ // ~~~~~~~~~~~~~~
+
+ // After refinement patches get added for all refinementSurfaces and
+ // all cells intersecting the surfaces get put into these patches. The
+ // section reachable from the locationInMesh is kept.
+ // NOTE: This point should never be on a face, always inside a cell, even
+ // after refinement.
+ locationInMesh (-0.5 0 0);
+
+
+ // Whether any faceZones (as specified in the refinementSurfaces)
+ // are only on the boundary of corresponding cellZones or also allow
+ // free-standing zone faces. Not used if there are no faceZones.
+ allowFreeStandingZoneFaces true;
+}
+
+
+
+// Settings for the snapping.
+snapControls
+{
+ //- Number of patch smoothing iterations before finding correspondence
+ // to surface
+ nSmoothPatch 3;
+
+ //- Relative distance for points to be attracted by surface feature point
+ // or edge. True distance is this factor times local
+ // maximum edge length.
+ tolerance 4.0;
+
+ //- Number of mesh displacement relaxation iterations.
+ nSolveIter 30;
+
+ //- Maximum number of snapping relaxation iterations. Should stop
+ // before upon reaching a correct mesh.
+ nRelaxIter 5;
+}
+
+
+
+// Settings for the layer addition.
+addLayersControls
+{
+ // Are the thickness parameters below relative to the undistorted
+ // size of the refined cell outside layer (true) or absolute sizes (false).
+ relativeSizes true;
+
+ // Per final patch (so not geometry!) the layer information
+ layers
+ {
+ "wing.*"
+ {
+ nSurfaceLayers 3;
+ }
+ }
+
+ // Expansion factor for layer mesh
+ expansionRatio 1.3;
+
+ //- Wanted thickness of final added cell layer. If multiple layers
+ // is the
+ // thickness of the layer furthest away from the wall.
+ // Relative to undistorted size of cell outside layer.
+ // is the thickness of the layer furthest away from the wall.
+ // See relativeSizes parameter.
+ finalLayerThickness 0.7;
+
+ //- Minimum thickness of cell layer. If for any reason layer
+ // cannot be above minThickness do not add layer.
+ // Relative to undistorted size of cell outside layer.
+ // See relativeSizes parameter.
+ minThickness 0.25;
+
+ //- If points get not extruded do nGrow layers of connected faces that are
+ // also not grown. This helps convergence of the layer addition process
+ // close to features.
+ nGrow 0;
+
+
+ // Advanced settings
+
+ //- When not to extrude surface. 0 is flat surface, 90 is when two faces
+ // make straight angle.
+ featureAngle 60;
+
+ //- Maximum number of snapping relaxation iterations. Should stop
+ // before upon reaching a correct mesh.
+ nRelaxIter 5;
+
+ // Number of smoothing iterations of surface normals
+ nSmoothSurfaceNormals 1;
+
+ // Number of smoothing iterations of interior mesh movement direction
+ nSmoothNormals 3;
+
+ // Smooth layer thickness over surface patches
+ nSmoothThickness 10;
+
+ // Stop layer growth on highly warped cells
+ maxFaceThicknessRatio 0.5;
+
+ // Reduce layer growth where ratio thickness to medial
+ // distance is large
+ maxThicknessToMedialRatio 0.3;
+
+ // Angle used to pick up medial axis points
+ // Note: changed(corrected) w.r.t 16x! 90 degrees corresponds to 130 in 16x.
+ minMedianAxisAngle 90;
+
+ // Create buffer region for new layer terminations
+ nBufferCellsNoExtrude 0;
+
+
+ // Overall max number of layer addition iterations. The mesher will exit
+ // if it reaches this number of iterations; possibly with an illegal
+ // mesh.
+ nLayerIter 50;
+}
+
+
+
+// Generic mesh quality settings. At any undoable phase these determine
+// where to undo.
+meshQualityControls
+{
+ //- Maximum non-orthogonality allowed. Set to 180 to disable.
+ maxNonOrtho 65;
+
+ //- Max skewness allowed. Set to <0 to disable.
+ maxBoundarySkewness 20;
+ maxInternalSkewness 4;
+
+ //- Max concaveness allowed. Is angle (in degrees) below which concavity
+ // is allowed. 0 is straight face, <0 would be convex face.
+ // Set to 180 to disable.
+ maxConcave 80;
+
+ //- Minimum pyramid volume. Is absolute volume of cell pyramid.
+ // Set to a sensible fraction of the smallest cell volume expected.
+ // Set to very negative number (e.g. -1E30) to disable.
+ minVol 1e-13;
+
+ //- Minimum tet volume. Is absolute volume of the tet formed by the
+ // face-centre decomposition triangle and the cell centre.
+ // Set to a sensible fraction of the smallest cell volume expected.
+ // Set to very negative number (e.g. -1E30) to disable.
+ minTetVol 1e-20;
+
+ //- Minimum face area. Set to <0 to disable.
+ minArea -1;
+
+ //- Minimum face twist. Set to <-1 to disable. dot product of face normal
+ //- and face centre triangles normal
+ minTwist 0.05;
+
+ //- minimum normalised cell determinant
+ //- 1 = hex, <= 0 = folded or flattened illegal cell
+ minDeterminant 0.001;
+
+ //- minFaceWeight (0 -> 0.5)
+ minFaceWeight 0.05;
+
+ //- minVolRatio (0 -> 1)
+ minVolRatio 0.01;
+
+ //must be >0 for Fluent compatibility
+ minTriangleTwist -1;
+
+
+ // Advanced
+
+ //- Number of error distribution iterations
+ nSmoothScale 4;
+ //- amount to scale back displacement at error points
+ errorReduction 0.75;
+}
+
+
+// Advanced
+
+// Flags for optional output
+// 0 : only write final meshes
+// 1 : write intermediate meshes
+// 2 : write volScalarField with cellLevel for postprocessing
+// 4 : write current intersections as .obj files
+debug 0;
+
+
+// Merge tolerance. Is fraction of overall bounding box of initial mesh.
+// Note: the write tolerance needs to be higher than this.
+mergeTolerance 1E-6;
+
+
+// ************************************************************************* //