OpenFOAM adopts a novel approach to mesh motion by defining it in terms of
the boundary motion which is extremely robust.
The solver need only define the the motion of the boundary and everything
else will be done automatically. The open architecture of OpenFOAM solver codes
allows quick and efficient implementation: mesh motion can be based on any
solution variable, either local or integrated and by dynamically adjusted during
the run.
Mesh motion is also transparently integrated with top-level models: the model
writer does not see the additional complexity, which is conveniently packaged
within the discretisation operators.