CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Running, Solving & CFD (
-   -   Free Surface Ship Flow (

timfranke February 13, 2008 16:19

Hi, I'm new to OpenFOAM and

I'm new to OpenFOAM and I'm interested in
calculating the flow around ships incl. the
free surface.
Is there already something "ready to use"
for that application?
The 2nd step might be considering dynamic trim
and sinkage, so 6DOF capabilities will be needed.
Is something like that also available?

Best regards,

gkokgr February 14, 2008 07:25

Hi Tim I am facing similar
Hi Tim

I am facing similar issues (and I'm also at the starting point...). I would like to investigate OpenFOAM's potential to deal with this. I cannot help with solid answers ATM, but here are some thoughts:

1. "...The 2nd step might be considering dynamic trim and sinkage, so 6DOF capabilities will be needed....". Are you going after the seakeeping problem/behavior, the increased resistance (i.e. "increased resistance when traveling in a seaway") or to detect differences in the wake pattern (if they are at all detectable...)?
(Since the first step is actually a "leap"*, going after the seakeeping problem in this fashion seems a bit too much...the traditional method is to employ frequency domain methods and from what I understand they yield decent results).
[*: external viscous problem on an unbounded half-space with a priori unknown boundary - the free surface - with non linear boundary conditions...]

2. I think (I am still going through the documentation...) that interFoam may be a suitable solver. A question I still have is about geometry handling and continuity attainability on mesh surfaces. Is it C2?

3. Choice of specific problem formulation? Assuming the "simplest" situation - trying to establish total resistance and form of wake behind a known hull form moving at constant velocity, different options exist:
> Treat this a priori as a steady-state case - assuming that it exists (actually the "steady-state" may be actually an observed average of a fluctuating solution of the true unsteady case as t->oo) or
> Treat the unsteady/transient problem (undisturbed, flat, free surface, hull starting to move from rest @ t=0 to target velocity) while time gets sufficiently large...

4. Proper Domain decomposition? Since this is an external problem, only a portion (containing the hull) of the half space may be examined (and meshed...). One needs to carefully choose the extent of the treated sub-domain and apply suitable matching conditions at the artificial boundaries to reach a realistic simulation.

Best Regards

timfranke February 14, 2008 11:04

Hi George, at the first ste
Hi George,

at the first step I'm interested in predicting
the resistance of a ship. To get that value
right the ship has to have to possibility to
adjust its position depending on the flow forces
that act on the hull.
So 6dof capabilities are only needed for resistance prediction.

Best regards,

eddi February 15, 2008 15:30

To my knowledge OpenFOAM doesn
To my knowledge OpenFOAM doesn't include a surface following mesher (VOF with interface reconstruction) as would be necessary for efficient solution.

Or do you plan to use a phase fraction approach similar to the breaking dam example in the OpenFOAM manual? How would you balance the high/low mesh resolution close to the free surface and to the hull on the one hand side and in the distance on the oher hand side, all this while the free surface moves?


egp February 18, 2008 02:57

Ship flow simulations are defi
Ship flow simulations are definatey possible with rasInterFoam.

Here is a simple example for the Wigley Hull at Fr=0.316. The plot shows wave-elevation contours.

egp February 18, 2008 03:07

One more figure: gamma contou
One more figure: gamma contours at a cross-plane near the bow.

francesco_b February 18, 2008 06:17

Hi Eric, could you please
Hi Eric,

could you please tell us which is your test-case setup? BC, mesh, etc... Is your hull fixed in the mesh? If not how can you move it?

I'm not able to do ship simulations and it would be something really interesting, please give me any hints to achieve your results

Thanks in advance


egp February 18, 2008 15:04

Francesco, You can download

You can download the Wigley Hull example at Look for the file, wigley.tar.gz.

In naval architecture terminology, this problem is set up for the steady resistance problem, i.e., no motion, and no incident waves. However, I am currently working on these issues.


francesco_b February 21, 2008 11:40

Hi Eric, Thank you for the
Hi Eric,

Thank you for the example, very interesting! I'm interested in coupling interFoam with 6DOF solver and icoDyMFoam to make the simulation more realistic and interesting, I'll try to work on it, if you have any suggestions, you are welcome



pablodecastillo February 25, 2008 08:43

Hi Eric, Really nice pics a
Hi Eric,

Really nice pics and interesting results, it is opening a lot of questions, i miss a pic with drag force time history convergence (do you have any?, or routine to get forces in every step?)
Did you try with diferents froude numbers, transom stern?

I am new in OF (i installed the past week), i would like to join to find the best parameters to free surface about bodies. Let me known what mesher are you using.



ivanyao February 25, 2008 10:00

hi i want to modify the cod
i want to modify the code,how can i get the source code? 

openfoam_user November 12, 2008 04:18

Hi, I am currently doing a

I am currently doing a simulation around a planing hull (15 meters) with an incoming flow velocity of 10 m/s.

The mesh was done using GridPro. The 'checkMesh' is OK.

I am using the rasnterFoam solver.

I have re-used the settings of E. Patterson (model scale of wigley hull) with a maximum Courant number of 0.8.

After 10-15 the run crashes (bounding k and epsilon).

So I have decieded to run the case setting off the turbulence (RASProperties and turbulenceProperties files). And the calculation runs well, but very slowly.

So, is it possible to resume how to define (formula) the turbulence parameters for such a case :
- k
- epsilon
- nuTilda
- nut

And what about the initialization of the flow domain ?

Thanks for helping me !


yannocean March 25, 2009 09:30

does not work
I have download the wigley test case and when I launch interFoam or rasinterFoam, I have the following message. Thers is someone who can help me?

| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 1.4.1 |
| \\ / A nd | Web: |
\\/ M anipulation | |

Exec : foamToFieldview9 ./ wigley
Date : Mar 25 2009
Time : 14:16:00
Host :
PID : 18985
Root : /state/partition1/home/hp08003/yandri01/TEST/
Case : wigley
Nprocs : 1
Create time

Create mesh for time = 0
#0 Foam::error::printStack(Foam::Ostream&) in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/lib/linux64GccDPOpt/"
#1 Foam::sigSegv::sigSegvHandler(int) in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/lib/linux64GccDPOpt/"
#2 __restore_rt in "/lib64/tls/"
#3 Foam::polyMesh::initMesh() in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/lib/linux64GccDPOpt/"
#4 Foam::polyMesh::polyMesh(Foam::IOobject const&) in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/lib/linux64GccDPOpt/"
#5 Foam::fvMesh::fvMesh(Foam::IOobject const&) in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/lib/linux64GccDPOpt/"
#6 main in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/applications/bin/linux64GccDPOpt/foamToFieldview9"
#7 __libc_start_main in "/lib64/tls/"
#8 Foam::regIOobject::readIfModified() in "/share/apps/soft/OpenFOAM/OpenFOAM-1.4.1/applications/bin/linux64GccDPOpt/foamToFieldview9"

openfoam_user April 3, 2009 04:50

Hi OpenFOAM users,

I have problems in running free surface computations around ships using grids generated with ICEMCFD Hexa and the rasInterFoam solver . Very soon messages about bounding epsilon and bounding k appear and then the case crashes.

ICEMCFD Hexa is not able to keep orthogonality at the walls (with a kind of elliptic smoothing).

With GridPro meshes I succeed in running this kind of cases. Unfortunatly I do not have GridPro. I think that the mesh of the wigley hull of Paterson was done using GridPro. The wigley hull runs well.

Has someone experienced similar problems with ICEMCFD meshes ?



matteoL May 14, 2009 06:31

Hi stephane,
I am currently having the same issues you posted. I produce my meshes with ICEM (structured hexa) and altough they seems ok and runs well with CFX, they diverge very quickly with Openfoam. I tried both with interFoam and rasinterFoam and in both cases the simulations diverges (let's say that interfoam is a bit more forgiving and tend to diverge more slowly, while rasinterfoam explodes a bit faster..)

Postprocessing the results, it can clearly be observed that the critical area where the simulation diverges are the one where the mesh is not orthogonal (constant/poly/sets/nonorthoFaces... it can be plotted via paraview and VTK with setSet commands.. btw you can observe it also in icem plotting the maxortho quality criteria over a value of about 65.)

Theorically Openfoam should be able to take care of the non-orthogonality via the "nNonOrthogonalCorrectors" parameters but I have tried many value (from 0 to 6) and it doesn't seems to change at all..

I have tried with Patterson parameters and with many others, but i only manage to delay a bit the divergence at best..

Any ideas?

I don't think it is a problem related to the VOF approach since in some cases the critical area are well under the freesurface (thus completely immerged in water and thus sould be the same of a single-phase simulation in that area), but it seems very strange to me that thus this is a general problem because if so it would affect almost all cases...

Is the nonorthogonal correction for some reason not suited to hexa meshes?

Or if the checkmesh reports some non-orthogonal cells, are those over the limit of Openfoam and thus we cannot expect to recover them via the correction?



openfoam_user May 14, 2009 07:05

Hi Matteo, hi OpenFOAM readers,

Until now I haven't solve the problem. Cases computed with ICEMCFD Hexa grids (wigley hull, Series 60) and Eric Paterson settings always diverge !

I don't know which grid software is using E. Paterson. Maybe Gridgen, maybe GridPro !

I would be nice to have the opinion of Eric Paterson about our specific problems. Hoping Eric paterson is reading this thread.

Matteo, I know that you are mainly interested in computing simulations with this kind of geometries, but try to use a more rounded boat to begin. Let me know about an alternative geometry.


egp May 15, 2009 06:35

Hi Stephane & Matteo,

Is it possible for you to post your case at ? If so, I'll try to take a look and see if it is something obvious.

It is probably dangerous to think that the settings from a simple problem like the Wigley hull will be uniformly applicable to all problems. You may need to turn on the limiters for the laplacian and grad calculations, e.g.,

default faceLimited leastSquares 0.5;
default Gauss linear limited 0.33;
default limited 0.33;

and also set divSchemes to upwind until you establish something close the correct pressure and wave field.

Good luck, Eric

P.S. I primarily use Pointwise & Gridgen, from Pointwise Inc. Pointwise has an OpenFOAM parser which makes it particularly nice.

matteoL May 18, 2009 10:07

Hi Eric,
thank you very much for the post!

I have managed to find a way in Icem to control a bit the orthogonality and now checkmesh doesn't complain anymore.

Unfortunately with my old settings the simulation used to diverge as well.

I have then added the schemes correction suggested by Eric and now finally I manage to run it! I still have to check results and so on, but at least it is not exploding!
thank you very much Eric!

A couple more questions:
1)are the limited schemes a sort of under-relaxation and thus at some point I have to switch them off to obtain the correct result or are they just just numerical correction and thus I can leave them on? If the second case: why not leaving them like that as default? and also, I have seen on the user-guide they are some sort of orthogonal correction: what's the difference between these correction and the the non-orthogonal correction step in the fvSolution?

Thanks again,

matteoL July 7, 2009 11:54

Wigley hull and series 60 test case
I am wondering whether anyone has managed to validate rasInterfoam on any test case (i.e. wigley hull or similar) since I have tried to do it with the Series60 case but I am getting results that are not very close at all with the experimental one.

In brief:
-Openfoam predicts a value of pressure drag and viscous drag that is about twice as big as the experimental and CFX one (the CFX one run on the same grid)
-My openfoam case starts as first-order-Upwind and at a certain time switches to second order-SFCD-corrected etc etc..
-I have tried on different grid, a medium one (500 000 cells) and a more refined one (1.5 millions cell). Mesh check is fine and the meshes are produced with ICEM and are hexa-structured
-As turbulence model i am using only Kepsilon since SST was not converging.

Thus, my question is:
Has anyone obtained any good agreement on any test case with Openfoam-rasInterfoam?Prof. Patterson showed before some qualitative very interesting results, are those also quantitevely correct? how do they compare with experimental data?

anyone can point me to some web page or similar where i can find some experimental data about the wigley hull (waterline, watersurface elevation, measurememt conditions, sink and trim)? I cannot find them anywhere.

best regards,

g.redondo November 23, 2009 15:34

wigley simulation with OF1.6
Interfoam has been updated in version 1.6 to use p instead of pd. I've been trying to update the wigley case to 1.6 without success. Did anyone tried to run it in 1.6? Any help would be greatly appreciated.


All times are GMT -4. The time now is 09:52.