Ship Hull Response In cylBumpInterIbFoam Tutorial
Mohsen Irannezhad
Marine Technology/Naval Architecture, Chalmers University of Technology, Gothenburg, Sweden 2016-12-08
Ship Hull Response In cylBumpInterIbFoam Tutorial Mohsen Irannezhad - - PowerPoint PPT Presentation
Ship Hull Response In cylBumpInterIbFoam Tutorial Mohsen Irannezhad Marine Technology/Naval Architecture, Chalmers University of Technology, Gothenburg, Sweden 2016-12-08 1. Introduction 2. Theory Immersed Boundary Method IBM boundary
Marine Technology/Naval Architecture, Chalmers University of Technology, Gothenburg, Sweden 2016-12-08
Advantages
Disadvantages
http://www.tfd.chalmers.se/~hani/kurser/OS_CFD_2015/Hrvo jeJasak/ImmersedBoundary.pdf
e.g. momentum equation
continuous source term – immersed body boundary is not sharply represented
not continuous source term – immersed body boundary is sharply represented
CFIBM
Pros
Easy to implement Good for deforming bodies Good for moving bodies Good for defined mechanical force Good in handling dead-to-live cells
Cons
Accuracy and stability issues Stiff equation for rigid body Bad at high Reynolds numbers
Indirect Forcing DFIBM
Pros
Good for rigid bodies Good in handling dead-to-live cells More control over accuracy and stability
Cons
More difficult to implement Bad at high Reynolds numbers
Direct Forcing DFIBM
Pros
Good for rigid bodies More control over accuracy and stability good at high Reynolds numbers
Cons
More difficult to implement bad in handling dead-to-live cells
to neighboring stencil cells
Pictures http://www.tfd.chalmers.se/~hani/kurser/OS_CFD_2015/HrvojeJasak/ImmersedBoundary.pdf
utility
Two fluids and a rigid body (ibCylinder) interaction VOF approach for free surface simulation
ship to the introduces conditions
1.
Copy cylBumpInterIbFoam tutorial to the run directory
2.
Replace the ibCylinder with DTC-hull in triSurface directory
3.
Define and create a new volume mesh using blockMeshDict dictionary in polyMesh directory
4.
Include immersedBoundaryPolyPatch into boundary in polyMesh directory
5.
Refine the volume mesh around the immersed boundary using refineImmersedBoundaryMesh utility and make a new boundary file (optional)
6.
Modify properties in constant directory
7.
Modify solution control in fvSolution in system directory and continue with…
9. Run the case and post process with paraview
f40NR mkdir -p $FOAM_RUN run cp -r $FOAM_TUTORIALS/immersedBoundary/cylBumpInterIbFoam . cd cylBumpInterIbFoam/constant/triSurface rm ibCylinder.ftr ibCylinder.stl
OF4x cp $FOAM_TUTORIALS/resources/geometry/DTC-scaled.stl.gz $FOAM_RUN run gunzip DTC-scaled.stl.gz surfaceConvert DTC-scaled.stl DTC-scaled.ftr mv DTC-scaled.stl hull.stl mv DTC-scaled.ftr hull.ftr
f40NR run cd cylBumpInterIbFoam gedit constant/polyMesh/blockMeshDict
containing the outlet to the first one
blockMesh gedit constant/polyMesh/boundary
Constant Velocity case
Wave Propagating case
inlet { type groovyBC; valueExpression "(pos().z<=A*cos(-w*time())+0.5*k*A*A*cos(2*(-w*time()))) ? 1 : 0"; variables "l=5;A=0.3;g=vector(0,0,-9.81);k=2*pi/l;w=sqrt(k*mag(g));"; timelines (); }
Inlet { type groovyBC; valueExpression "(pos().z<=A*cos(-w*time())+0.5*k*A*A*cos(2*(-w*time()))) ? vector( A*w*exp(k*pos().z)*cos(-w*time()), 0, A*w*exp(k*pos().z)*sin(- w*time())) : vector(0,0,0)"; variables "l=5;A=0.1;g=vector(0,0,-9.81);k=2*pi/l;w=sqrt(k*mag(g));"; timelines (); }
Time step 90
Time step 120 Time step 120
wave trough reaches the front part wave peak reaches the front part
interDyMIbFoam solver
the forces on the body