$FOAM_TUTORIALS/compressible/rhoCentralDyMFoam/movingCone
We calculate the flow around a cone-shaped piston moving in a cylindrical tube. The calculation is performed with a simplified model in which a portion of the cylinder is cut out in a wedge shape for one mesh.
The calculations are performed with a density-based solver based on a center-upwind scheme. Therefore, the mass conservation is more accurate, and nonlinear waves such as shock waves can be calculated accurately.
The region "left" is assumed to be open to allow fluid flow in and out, the cylinder surface is set to no-slip wall conditions, and the piston surface (region "movingWall") is set to a fixed flow velocity (0, 0, 0). The piston moves from the region "left" to the region "fixedWall" at 160 m/s. The motion of the mesh is specified in the files constant/dynamicMeshDict and 0/pointMotionUx as follows.
dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ( "libfvMotionSolvers.so" ); solver velocityComponentLaplacian; velocityComponentLaplacianCoeffs { component x; diffusivity directional (1 200 0); }File: constant/dynamicMeshDict
dimensions [0 1 -1 0 0 0 0]; internalField uniform 0; boundaryField { movingWall { type uniformFixedValue; uniformValue constant 160; } farFieldMoving { type slip; } fixedWall { type uniformFixedValue; uniformValue constant 0; } left { type uniformFixedValue; uniformValue constant 0; } farField { type slip; } back { type wedge; } front { type wedge; } }File: 0/pointMotionUx
The meshes are as follows.
The calculation result is as follows.
97.41 seconds *Single, Inter(R) Core(TM) i7-8700 CPU @ 3.20GHz 3.19GHz