The principle challenge in doing this is maintaining and achieving the reliability and desired accuracy of such analysis within realistic time frame.
In order to achieve self-sufficiency and provide state of the art solutions, a team inside NED-Project is being constantly involved in developing inhouse capabilities to aid and improve design aspects of products offered by us. One such effort has been towards implementing numerical analysis of the design at the concept design phase itself. The idea behind is to streamline these activities in prediction and estimation of key performance factor of design replacing semi-empirical prediction methods being used previously. The principle challenge in doing this is maintaining and achieving the reliability and desired accuracy of such analysis within realistic time frame. To achieve such measures, the team has undertaken the task of performing the analysis of existing proven design with the numerical methods (CFD) and verifying them with available experimental results.
One such task was carried out for a TRIMARAN hull of a research vessel intended to carry out measurements and acoustic observations of marine mammals (C-POD). The experimental results for calm water analysis of this hull were available and hence it was considered as a good example for verifying the results obtained using computational fluid dynamics.
The tools used to perform this analysis were Rhino V5, Salome, open CFD code OPENFOAM , Paraview for postprocessing the results and gnuplot. For a fair comparison, the model scales considered for cfd analysis was same as the scale of physical model used for towing tank analysis. The calm water resistance analysis was performed for the intended service speed of the vessel (12 knots). The results obtained showed good agreement with towing tank experiments. The following fig 1. shows the physical model along with the 3D model used for the analysis. Also due to centre plane symmetry, only half hull was simulated and obtained results were multiplied with a factor of 2 for final comparison.
Figure 1 showing the 3d cad model and generated surface mesh in Rhino.
A step by step accounting of procedure followed for undertaking the CFD analysis has been outlined below. For brevity, the detailed description of each process has been omitted.
1. Making the geometry ready for CFD analysis through cleaning, scaling, performing checks such as naked edge analysis and tolerance. The end result being a properly scaled model with water tightness.
2. Generation of surface mesh using inbuilt meshing tools in Rhino V5 with customised meshing parameters. The meshing was performed by splitting the hull geometry as main hull and side hull. Later on they were merged later and checked for edge matching using MatchMeshEdge tool. Moreover the generated mesh was further checked for validity of mesh and identifying any problems associated with it.
3. The obtained .stl mesh then was imported inside prepared case in OpenFOAM. The case was prepared with base as standard DTCHull case provided within tutorial section of standard OpenFOAM environment. A domain of solid hexahedral cells was created using utility blockMesh which acted as computational domain. The ITTC recommended procedure and Guidelines were followed for sizing the domain.
4. The snappyHexMeshDict was modified accordingly to obtained suitable size and proper boundary layer generation around hull. Before operating with snappyHexMesh, the generated domain using blockMesh was further refined locally by defined zones using topoSet utility and refineMesh dictionary.
5. Carefully consideration was given to obtain suitable computational grid with size good enough to capture flow properties of interest while keeping the total volume cell count to minimum. The first cell centre distance to boundary (y+ value) was kept within laminar sub-layer region (Y+ <5). This resulted in a total cell count of 1.35 million cell for the considered model scale analysis.
6. The validity of obtained mesh, was checked using checkMesh utility. The important considerations were maximum cell non-orthogonality, cell skewness, and cell openness. The mesh was found to be ok with no error.
7. In next step the initial and boundary condition were calculated and applied in standard 0 time directory. The calculations were performed in lieu of turbulence model K-omega SST and values such as k and omega were estimated using standard turbulence theory.
8. A domain decomposition for water-air surface was applied using setFields utility which takes setFieldsDict as input file. The interface position was applied after scaling according to model scale.
9. After completion of setup the numerical analysis was conducted using standard multiphase solver interFoam.
Following figures depict the details of meshing, boundary layer profile at free surface level.
Figure 2 computational mesh and boundary profile details of domain at still water level
Results and Verification
In order to accurately estimate the CFD results, both the residuals and force values were monitored constantly to check for convergence of the solution, once the obtained force values became steady (constant up to second decimal place), the simulation was considered to be sufficiently converged and results obtained were analysed. Following figures details certain flow feature obtained after convergence. The results are presented in table 1.
Figure 3 free surface wave profile at vessel speed of 12 knots.
Figure 4 free surface profile interpolated on hull-surface.
Figure 5 Visualisation of flow lines.
Figure 6 Model resistance value obtained through CFD and compared against experimental towing tank results.
Figure 7 Total Pressure projected over hull surface (model scale)
|Test||Model Speed (m/s)||Resistance in [N]|
|Difference in [%]||0||+ 1.1|
Table 1 Obtained Resistance value and comparison with experiment value.