Professional Documents
Culture Documents
1/07)
UNIVERSITI TEKNOLOGI MALAYSIA
ii) The Library of Universiti Teknologi Malaysia has the right to make copies for the
purpose of research only.
iii) The Library has the right to make copies of the thesis for academic exchange.
Certified by:
950507017178
MR NASRUDIN BIN HAJI ISMAIL
(NEW IC NO/PASSPORT) NAME OF SUPERVISOR
NOTES: * Date:
If the thesis2016
20 JUNE is CONFIDENTAL or RESTRICTED, please
Date: attach with
20 JUNE the letter from
2016
the organization with period and reasons for confidentiality or restriction.
We hereby declare that we have read this thesis and in our opinion this thesis is
sufficient in terms of scope and quality for the the award of Bachelor of Engineering
(Naval Architecture and Offshore Engineering).
Tandatangan : ………………………….........
Nama Penyelia : MR NASRUDIN BIN HAJI ISMAIL
Tarikh : 12 JUNE 2018
PREDICTIONS OF WAVE PATTERN AND HULL PERFORMANCE OF
MODEL MTC 092 HULL FORM USING OPENFOAM
JUNE 2018
ii
I declare that this thesis entitled “Predictions of Wave Pattern and Hull
Performance of Model MTC 092 Hull Form Using OpenFOAM” is the result
of my own research except as cited in the references. The thesis has not been
accepted for any degree and it is not concurrently submitted of any other
degree.
Tandatangan : ....................................................
Nama Penulis : UMMU SAIYIDAH NAJIHAH BINTI ZAINUDIN
Tarikh : 12 JUNE 2018
iii
Specially dedicated to
...
ACKNOWLEDGEMENT
First of all, thanks to Allah S.W.T for the wisdom he bestowed upon me,
the strength, good health and blessing from him that make me able to complete
this thesis.
This thesis becomes a reality with the kind support and help of many
individuals. I would like to extend my sincere thanks to all of them.
ABSTRACT
The prediction of hull resistance has become an important part in the ship
design industry. There is also of interest to investigate the wave pattern of the
hull to get desirable resistance properties. To make an accurate prediction of hull
resistance is very essential because it related to choose an appropriate engine
power of the propulsion unit. Thus, this research is to predict the performance of
model MTC 092 hull by simulating wave patterns around this hull form.
Secondly is to analyze the computed flow field which is expected to yield hull
resistance and free-surface wave pattern which will be compared with the model
testing results. Initially, a conceptual framework study of the predictions of wave
pattern and hull performance by using OpenFOAM was done from previous
research. Next, the MTC 092 model is modelled by using AutoCAD based on
the lines plan and particulars data given. Then, the model is exported into the
OpenFOAM by undergoing the resistance simulation such that the wave pattern
and resistance value is determined respectively. The result in terms of hull
performance is focusing on the resistance part which will be analyze using 𝑘 −
𝑤 SST method and it will be compared with the resistance experiment result.
The wave pattern of MTC 092 model in simulation will be compared to the wave
pattern of experimental data specifically on plan view. In conclusion, the
contribution of this study be able to increase the type research by using
OpenFOAM from previous study. The suggestion for ship design industry is that
the using of computational fluid dynamics (CFD) toolbox in predict of the hull
form performance shall be expanded in Malaysia so that they could improve their
vessel design process, reduce the production time and cost.
vi
ABSTRAK
Your text begins here Ramalan kepada rintangan badan kapal telah menjadi
sebahagian perkara yang penting dalam industry reka bentuk kapal. Terdapat juga satu
kajian yang menarik iaitu kajian terhadap pola gelombang ombak yang dapat
mengambarkan sifat rintangan kepada sebuah kapal. Ramalan yang tepat terhadap
rintangan sesebuah kapal adalah sangat penting kerana ia nya berkait dengan
pemilihan kuasa enjin untuk unit propusi. Oleh itu, objektif kajian dalam projek ini
adalah untuk meramal prestasi bentuk badan model MTC 092 dengan mensimulasikan
corak gelombang di sekitar bentuk badan kapal. Keduanya, adalah untuk menganalisis
medan aliran yang dijangka menghasilkan rintangan bentuk badan model dan corak
gelombang pada permukaan bebas yang akan dibandingkan dengan keputusan ujian
model. Pertamanya, konsep kajian mengenai ramalan corak gelombang dan prestasi
bentuk badan kapal dengan menggunakan OpenFOAM telah dilakukan dari
penyelidikan yang terdahulu. Seterusnya, model MTC 092 ini dimodelkan semula
dengan menggunakan AutoCAD berdasrkan pelan garis dan butiran data yang
diberikan. Kemudian, model itu dieksport ke dalam OPenFOAM untuk disimulasi
rintangan supaya corak gelombang dan nilai rintangan dapat ditentukan. Hasilnya dari
segi prestasi sebuah kapal, kajian ini hanya memfokuskan kepada rintangan bentuk
badan yang akan dianalisis mengunakan kaedah k-w SST dan hasinya akan
dibandingkan dengan keputusan dari eksperimen data. Corak gelombang juga akan
dibandingkan dengan corak gelombang dari eksperimen data walau bagaimana pun
ianya hanya dibandingkan dari pandangan atas. Kesimpulanya, penglibatan kajian ini
dapat meningkatkan jumlah jenis penyelidikan dengan menggunakan OpenFOAM
dari kajian terdahulu, Cadangan untuk industry reka bentuk kapal adalah penggunan
kotak alat dinamik cecair (CFD) haruslah diperkembangkan di Malaysia agar mereka
dapat memperbaiki proses reka bentuk kapal mereka, mengurangkan masa dan kos
pengeluaran.
vii
TABLE OF CONTENT
DECLARATION ii
DEDICATION iii
ACKNOWLEDGEMENT iv
ABSTRACT v
ABSTRAK vi
TABLE OF CONTENT vii
LIST OF TABLE x
LIST OF FIGURE xi
LIST OF APPENDIX xiv
INTRODUCTION 1
1 INTRODUCTION 1
Introduction 1
Overview 1
Problem Statement 2
Objective 2
Scope 3
2 LITERATURE REVIEW 4
Introduction 4
Planing Hulls 4
Ship Resistance 5
Total Hull Resistance (𝑹𝑻) 5
viii
3 METHODOLOGY 29
Introduction 29
Overall Process of the Project. 30
Experiment Setup. 31
Equipment or Apparatus for Resistance Test.
32
Procedure for Resistance Test. 35
The Process of Simulation 40
3.3.3.1 Pre-processing. 42
3.3.3.2 Solving 48
3.3.3.3 Post Processing 51
ix
REFERENCES 69
APPENDIXES A – C 71 - 97
x
LIST OF TABLE
LIST OF FIGURE
LIST OF APPENDIX
Introduction
This thesis is about predictions of wave pattern and hull performance of model
MTC 092 hull form using OpenFOAM. This chapter will overview of the study,
problem statement, objective and scope of the study.
Overview
Model MTC 092 has been used in this study to predict the wave pattern and
hull performance. Hull form model MTC 092 is planning hull which widely used
around the world for recreational and other purposes. There many types of vessel that
used planning hull such as patrol boats, sportfishing vessels, service craft and for sport
competitions. This model MTC 092 is a high-speed vessel since the craft operating
with Froude number (Fn) larger than 0.4.
After that, this paper will be discussed any rises issues throughout the study of
prediction of wave pattern and hull performance of hull form model MTC 092. This
paper also will be presented the process flow and observation of the study to predict
the hull resistance and wave pattern of model MTC 092.
2
Problem Statement
ii) The accuracy of the result from open source software when compared to
the towing tank result.
Objective
ii) To analyse of the computed flow field is expected to yield hull resistance,
free-surface wave pattern which will be compared with the model testing
results.
3
Scope
i) Using MTC092 hull: This model hull has been put through scale model
testing at MTC.
ii) Hull performance evaluation will be focusing only on wave pattern and
hull resistance.
Introduction
This chapter discusses the literature study that has correlation to the wave
pattern and hull performance by using OpenFOAM. Selected previous methods
applied to the study were reviewed in this chapter. The key area of the study includes
ship resistance, wave pattern, OpenFOAM simulation, RANS equation and Linux
operating system.
Planing Hulls
Planing hull are typically fast patrol boats, racing boats, search, rescue boats
and fast small passenger ferries. Planing hull designs should normally be used for high-
speed vessels only that has Froude number more than 0.3. Figure 2.1 showed the
example of planning hull:
5
Ship Resistance
As a ship moves through the calm water, the ship will experienced a force
acting opposite to its direction of motion which this force called as total hull resistance
(R_T). This resistance is used to calculate a ship’s effective horsepower. Other than
that, the total hull resistance also functions of many factors such as ship speed, hull
form and ship power (Hudson et al., 2017).
The Resistance of a ship at the given speed is the force that required to tow the
ship at a certain speed in calm water which assuming there is no interference from the
towing ship (Lewis, 1989). However, the total resistance 𝑅 𝑇 of the ship could be split
into two components that are frictional resistance 𝑅𝐹 and residuary resistance 𝑅𝑅 . It
can be concluded that the total resistance can be separated into four components which
independently of each other. The total resistance components are as shown in table
2.1 below:
The components of wave making resistance, eddy resistance and air resistance
are commonly known as residuary resistance. However, one of the main component
of residuary resistance is wave making resistance can be proved by Figure 2.3 below:
Where
Dimensionless Coefficients
𝐶𝑇 = 𝐶𝑉 + 𝐶𝑊
As seen above the air resistance is not represented in dimensionless form, this
is because this dimensionless form of resistance produced of model testing and most
of models do not have superstructures. Hence, the air resistance is assumed as zero or
neglect the air resistance.
9
As said before, total hull resistance is a function of hull form, ship speed and
water properties, the coefficient of total hull resistance is found form the following
equation:
𝑅𝑇
𝐶𝑇 =
1 2
2 𝜌𝑉 𝑆
Besides that, naval architect also use a dimensionless form of velocity called the “
Froude number” (𝐹𝑛 ) which is one of the pioneers in ship model testing.
𝑉
𝐹𝑛 =
√𝑔𝐿
A pressure distribution normal to the body of ship as the fluid flows around the
body as shows in Figure 2.4 a body submerged in an ideal (inviscid) fluid. In ideal
fluid these pressure forced are equal to the body experiences with no resistance
(Anthony et al., 2017).
10
Figure 2.4 Ideal flow around a submerged body (Anthony et al., 2017).
However, water is not an ideal fluid and therefore the body will experience
resistance. Figure 2.5 shows a hull submerged in a real fluid with viscosity. The fluid
particles that cling to the body was resulting a formation of a boundary layer where
the flow rapidly changes speed from zero speed at the side of the body to the free
stream speed (Anthony et al. 2017).
Figure 2.5 : Flow around a body submerged in water (Anthony et al., 2017)
There two forms of resistance happen which are friction resistance and viscous
pressure resistance. Friction arises from the shear stresses in the fluid and acts
tangential to the body meanwhile viscous pressure resistance acts normal to the body.
Friction Resistance
The friction of the water is acting over the entire wetted surface of the hull
causes of a net force that opposing the ship’s motion. This frictional resistance is a
11
function of the hull’s wetted surface area, surface roughness and water viscosity. Even
though water has low viscosity, water also produces a significant friction force which
opposing the ship motion.
Wave-Making Resistance
The two significances type of flow occur when a streamlined body moves in a
straight horizontal line at constant speed in the water that are flow occur depending on
the transverse speed and to the Reynolds number. At the boundary layer of the hull,
the flow will act as a force on the body against the motion. Since the fluid is in direct
contact with the body surface, the motion produced at the fluid in the close vicinity is
in the same direction of the body moving. After that, the result in a layer of water will
gradually thicker from the bow to the stern and the boundary layer flow leaves the
body behind it in the form of frictional wake which moves in the same direction as the
body.
Besides that, it can be stated that the type behaviour of flow depending on local
Reynold number is better than depending on local speed. When the Reynold number
increase, the laminar breaks down, the fluid mixes transversally in eddying motion and
the resistance will increase (Lewis.,1989). This flow is called turbulent. Commonly,
the ship condition flow in the boundary layer is always in turbulent. After that, to make
12
sure the flow produce by the boundary layer of the model is turbulent flow, turbulence
inducers are attached to the model such as sand strips as shown figure 2.6 below.
Figure 2.6 The turbulent inducers (sand strips) at the bow of MTC 092.
The flow of fluid around a body can be divided into two general types of flow
which are laminar flow and turbulent flow. This two type flow of fluid related on the
extent of the viscous resistance that the type of flow it is experiencing (Volker., 2012).
A typical flow pattern around a ship’s hull showing laminar and turbulent flow is
shown in Figure 2.7.
Figure 2.7 Typical water flow pattern around a ship’s hull (Volker., 2012).
13
Laminar flow is characterized by fluid flow along the smooth lines in an order
minimal amount of frictional resistance. For a typical type of ship, laminar flow exists
for only a very small distance along the hull. As water flows along the hull, the laminar
flow begins to break down and become chaotic and well mixed. This chaotic behaviour
is referred to as turbulent flow and the transition from laminar to turbulent flow occurs
at the transition point shown in Figure 2.7.
Reynolds-averaged Navier-Stokes
The momentary velocity component is u, the time-averaged value is named u and the
fluctuating velocity has the letter 𝑢̅. After that with help of this definition the
decomposition can mathematically be written as:
𝑢 = 𝑢̅ + 𝑢′ , 𝑤 = ̅̅̅
𝑤 + 𝑤′ , 𝑣 = 𝑣̅ + 𝑣′ , 𝑝 = 𝑝̅ + 𝑝′ Eqn. 2.31
Analogously for the density and the temperature which considered as constant are
shown below:
𝜌 = 𝜌̅ + 𝜌′ , 𝑇 = 𝑇̅ + 𝑇′ Eqn. 2.32
The chosen averaging method takes the mean values at a fix place in space and
averaged over a time span that is large enough for the mean values to be independent
of it.
1 𝑡 +𝑡𝑡
𝑢̅ = ∆𝑡 ∫𝑡 0 𝑢 𝑑𝑡 Eqn. 2.33
0
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝜕𝑢̅ 𝜕𝑢′ 𝜕𝑣̅ 𝜕𝑣 ′ 𝜕𝑤̅ 𝜕𝑤 ′
+ + + + + =0 Eqn. 2.35
𝜕𝑥 𝜕𝑥 𝜕𝑦 𝜕𝑦 𝜕𝑧 𝜕𝑧
̅̅
𝜕𝑢 1 𝑡0 +𝑡1 𝜕𝑢 𝜕 1 𝑡0 +𝑡1 ̅
𝜕𝑢
= ∫ 𝑑𝑡 = ∫ 𝑢 𝑑𝑡 = Eqn. 2.36
𝜕𝑥 ∆𝑡 𝑡0 𝜕𝑥 𝜕𝑥 ∆𝑡 𝑡0 𝜕𝑥
̅̅̅̅
𝜕𝑢′ 1 𝑡0 +𝑡1 𝜕𝑢′ 𝜕 1 𝑡0 +𝑡1 ′
= ∫ 𝑑𝑡 = ∫ 𝑢 𝑑𝑡 = 0 Eqn. 2.37
𝜕𝑥 ∆𝑡 𝑡0 𝜕𝑥 𝜕𝑥 ∆𝑡 𝑡0
The averaged derivatives of the fluctuations are also zero according to these rules, so
that the time-averaged continuity equation is:
̅
𝜕𝑢 𝜕𝑣̅ ̅
𝜕𝑤
+ + =0 Eqn. 2.38
𝜕𝑥 𝜕𝑦 𝜕𝑧
Now the Navier-Stokes equations will be time-averaged. The expressions for the
decomposition of the velocities are now substituted in to transformed Navier-Stokes
equation:
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
̅ +𝑢′ )
𝜕(𝑢 ̅ +𝑢′)2
𝜕(𝑢 𝜕(𝑢̅+𝑢′)(𝑣̅+𝑣 ′) 𝜕(𝑢̅ +𝑢′ )(𝑤
̅ +𝑤′ )
𝑝 { 𝜕𝑡 + 𝜕𝑥 + + }=
𝜕𝑦 𝜕𝑧
̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅
𝜕(𝑝̅+𝑝′) 𝜕 2 (𝑢
̅ +𝑢′ ) 𝜕 2 (𝑢
̅ +𝑢′ ) 𝜕 2 (𝑢
̅ +𝑢′ )
𝐹𝑥 − 𝜕𝑥 + 𝜇( 𝜕𝑥2 + 𝜕𝑦 2 + 𝜕𝑧2 ) Eqn. 2.39
k-ɛ model
These RANS equation will be predicted with the k-ɛ turbulence model. The k-
model utilize two extra transport equations deduced from the Navier Stokes equations.
These equations have been sampled from (Hjertager,2009). The first is turbulent
kinetic energy k and is described by the k-equation:
16
𝜕𝜌𝑘 𝜕 𝜕 𝜇𝑡 𝜕𝑘 𝜕𝑈𝑖
+ (𝜌𝑈𝑖𝑘 ) = [ ] − ̅̅̅̅̅̅̅
𝜌𝑢𝑖′ 𝑢𝑗′ − 𝜌. ɛ Eqn. 2.41
𝜕𝑡 𝜕𝑥𝑖 𝜕𝑥𝑖 𝜎𝑘 𝜕𝑥𝑖 𝜕𝑥𝑗
Here, first term is the transient term. Second is the convective term. Third term is the
diffusive transport and must be modelled. Fourth term is turbulent kinetic energy based
on the mean flow velocity. Fifth term is the viscous dissipation of turbulent kinetic
energy, which also must be modelled.
The second transport equation is the dissipation of turbulent kinetic energy and
is named the equation. Only the modelled form will be given:
𝜕𝜌𝜀 𝜕 𝜕 𝜇𝑡 𝜕𝜀 𝜀 ′ ′ 𝜕𝑈𝑖 𝜀
+ (𝜌𝑈𝑖 𝜀) = [ ̅̅̅̅̅̅
] + 𝐶1 [−𝜌𝑢 𝑖 𝑢𝑗 𝜕𝑥 - 𝐶2 𝜌 𝜀 Eqn. 2.42
𝜕𝑡 𝜕𝑥𝑖 𝜕𝑥𝑖 𝜎𝜀 𝜕𝑥𝑖 𝑘 𝑗 𝑘
Again, the first term is the transient. Second is the convective term. The third
term represents diffusive transport. Fourth and fifth term is the production and
destruction of respectively..
There are two equation model for the turbulence kinetic energy, k, and
turbulence specific dissipation rate, ω shows in the model equations below. The aims
of k-omega SST model is to overcome the deficiencies of the standard k-omega model
wrt dependency on the freestream values of k and omega ( Source: OpenFOAM
17
Extended Code Guide). This k-omega SST model also able to capture flow separation
on the ship hull.
𝜈𝑡 = 𝑎1𝑘𝑚𝑎𝑥(𝑎1𝜔, 𝑏1𝐹23𝑆)
Wake
Wake is a flow around the ship’s model regarding to the body at a certain speed.
There are three components of the wake that are viscous wake, streamline wake and
wave make. The viscous wake is due to the frictional drag on the surrounding water
that found at the aft of the ship’s model. The viscous wake also called as frictional
wake. Besides that, this wake is in the greatest at the surface and in the central
longitudinal plane of the ship’s model. After that, this wake is decreasing downward
and outward on each side (Lewis, 1989).
Streamline wake is a flow that past the hull due an increased pressure
around the stern where the streamlines are closing. The streamline wake will be
greatest at the water surface and centre then decreases at downward and outward
18
(Lewis, 1989). Example for streamline wake and viscous wake flow on the ship model
as shown in Figure 2.8 below.
Figure 2.8 Example of viscous flow and streamline flow around an airfoil.
Lastly, at the ship body also forms a wave pattern on the surface of the water
which is called wave wake. The sum of the three components of wake is called nominal
wake which indicate in the absence of the propeller.
OpenFoam is a free software which mean the users of the openFoam software
have the freedom to run, copy, distribute, study, change and improve the software. In
addition, OpenFoam is first and foremost a C++ library program of software designed
to fulfil a particular purpose such as simulation of water wave which able to run by a
computer (Jordi, 2014). The structure of the openFoam is built in libraries which
containing pieces of code that will be used by the various solver and utilities. Solver
is designed to solve a specific problem in continuum mechanics meanwhile utilities is
aimed at directly performing the tasks that benefit ordinary users or performing tasks
that involve data manipulation.
19
However, for a new folder structure is built containing at least the three mains
folder that are 0, constant and system. The 0 folder contains all the initial field
conditions for variables such as pressure and velocity which depends on the chosen
solver of the case. Meanwhile, inside the constant folder is containing information
about the physical properties and fluid of the case. The system folder is determining
solver and solution settings for each field, the output format, runtime and time setup
for the case. Figure 2.10 showed the case structure of the OpenFoam.
In addition, if the geometry of the model is too complex there is a folder that
is describing the case geometry which is triSurface folder and the folder holds STL
files if the geometry is imported from a CAD program.
Pre-Processing
Pre-processing is a stage where the user allowed to setup the file cases directory
based on the problem being simulated which involves data for mesh, fields, properties,
control parameters, and etc. For examples the activities that taken at the pre-processing
stage are:
ii) A uniform mesh of cells will be used initially. Then the mesh generator
iii) that supplied in OpenFoam such as blockMesh will generate mesh on the
model.
iv) Set up the boundary and initial condition of the model in file cases
directory.
vi) Input data relating to the control of time and reading of the solution data
into a case file control which located in the system directory
Input data relating to the control of time and reading of the solution data into a
case file control which located in the system directory
21
Mesh Generation
Salome
Salome software is one of the chosen CAD program in the open source
software that has a geometry feature suitable for exporting STL surfaces to OpenFoam.
This software is essentially for pre and post-processing numerical solutions. Salome
software contains a graphical interface and Salome is a simple CAD software that
allow the user to define vertices based on coordinates. After finish joined all the
surfaces, then converted the geometry to a complete solid figure. After that, the
surfaces are distinguished in groups so that different meshing options and field
properties can be applied to different surfaces later on. These groups of surfaces are
finally exported to OpenFoam as STL files and convert them in to mesh.
Solver
System directory files contained the controlDict text file which there are entries
regarding the simulation settings. The simulation settings that control for what time
step to start and stop the simulation. Besides that, the settings also control time step to
write the temporary results also known as time dumps (Sirevaag, 2015). This control
setting is a steady state solver which refers to number of iterations instead of seconds
of simulation time. Once the solution is converged, the data can be used for analysis.
However, when the simulation starts OpenFoam produces information regarding the
solving of different equations which can deduce whether the solution has converged
or not. The first information is the initial residual which the initial residue should be
approached zero when the solution is convergence. Second is the final residual is
always remained small and will always be less than the initial residual (Sirevaag,
2015). The last one is the number iterations will show how many times the matrix was
solved for the current equation. The number iteration should start to decrease once the
solution approach convergence.
23
Post-Processor
The field values are stored separately in text files once the solver completed.
In the post-processor step taken is analysing all of these values as they are presented
without any positional data. However, OpenFOAM comes with its own post-
processing software called ParaView
ParaView
However, the difference between Linux and window is the user has the freedom to
access, run and perform desired function on the system. Other than that, Linux also is
the best operating system that used the command terminal and in the terminal the
commands are executed to perform common functions as shown in Table 2.3 below:
25
This characteristic of ship waves is due to the fact that water waves in water of
moderate depth are dispersive for example their wave speed is depends on their length
or their frequency (Ljubljana, 2004). The Kelvin waves are actually a wave packet
which is travelling which called group velocity.
The wave pattern that left behind by a ship at sea consists of a system
of waves that envelopes the hull lengthwise and connected with a system of cross of
waves as shown in Figure below.
26
Kelvin’s Ship-Wave Pattern is produce from a moving ship with constant speed
V on deep water that generates a surface gravity wave. In a reference frame where the
ship is at rest we use polar coordinates r and Ø with Ø = 0 in the direction of the
velocity of the water relative to the ship. Then with g denoting the acceleration
due to gravity, the wave height is approximately given by
Where
27
k =𝜌, and
When 𝜌 > 1 that is everywhere except close to the ship the intergrand is oscillates
rapidly. There are two stationary points, given by
This is the angle of the familiar V-shaped wake. The wake is a caustic of the “rays”
defined by the dispersion relation (“Hamiltonian”) giving the frequency ω as a
function of wave vector k:
Size of domain
The basin has the same principal dimensions as the towing tank where the
experiments were conducted (Stephen, 2017). Only a section of the tank before and
after the hull that enough to capture the relevant flow features and waves was used.
The two relaxation zones that allowed before and after the measurement region for
generating and dissipating waves as show in Figure below.
28
Introduction
The objective of this chapter is to elaborate the method that contribute in order
to achieve the objective of the project. This purpose of this project is to observe and
analyse the free-surface wave pattern that produce along the hull of MTC092 and
compare it with the simulation result by using OpenFOAM. Other than that, the
purpose of this project is also to compare the hull resistance simulation result in
OpenFOAM with the hull resistance obtained from the analysis with the model testing
results.
Therefore, the methodology of this project have been divided into two part
which are experiment part and simulation part. Methodology of this project consist of
several steps and a project flowchart has been done to show the flow of the project
study. This flowchart will give a better understanding on how the study will be
conducted.
30
Experiment Setup.
The apparatus and equipment were used throughout the experiment to capture
wave pattern along the hull surface from plan view are as shown in Figures below:
i) The model MTC-092 was used for the resistance test to observe wave
pattern from plan view as shown in Figure 3.10.
ii) Draw line grid 2×2 on the ship body and board as reference as shown in
Figure 3.11 below:
iii) Measure line of VCG from base line which is 18.6 cm (based on lab sheet)
iv) Put the model on the weight scale to obtain the displacement of the model
which is 94.4 kg. This is done by placing ballast at the forward and aft
position of model until the displacement of the model reached 94.4 kg as
Figure 3.12.
v) Adjust the ship frame structure until it is stable by ensuring the bubble is
within the centre as shown in Figure 3.13.
vi) Mark the line on steel pole after the empty swinging table is on stable
condition. After that, mark another line when 200g of weight was put on
the wooden plank of bare swinging frame.
vii) Put the model onto the swinging frame at its location of gravity center.
Then, move the ballast aft or forward until the swinging frame becomes
stable to confirm the longitudinal gravity center (LCG).
38
viii) Transfer the model to the towing tank to check it’s draught in even keel
condition as shown in Figure 3.14.
ix) Tape the ballast weight onto model to make sure it doesn’t move as Figure
3.15.
xi) Setup camera along the towing tank carriage to capture wave pattern on
the hull form.
xii) Run the experiment at one speed then proceed with other speed right after
the water had been calmed.
xiii) Take measurement of ship speed and the total resistance at the certain
speed.
40
xiv) Capture wave pattern along hull surfaces as shown below in Figure 3.17.
The software that are used throughout the simulation process in collecting all
the data related to the hull performance (hull resistance) and wave pattern of MTC092
are CAD for modelling, GMESH for model meshing and OpenFoam software.
AutoCad is a tool that used to create a digital ship model from the lines
plan drawings of MTC092 into 3D model and also to loft the 3D model of MTC092.
Autocad is a simple and interactive tool in designing a ship hull.
3.3.3.1 Pre-processing.
i) Ship Particulars
The ship model particulars data obtained from Marine Technology Centre,
UTM is MTC092. Particulars data of this model tabulated in Table 3.1.
iii) Select shear plan, edit (click copy with base point) and then paste profile
into new drawing in front view at (0,0) by click edit, three dimensional
views and front view as shown in Figure 3.20.
iv) Use command regenall, then select all and define all to layer for
convenience.
44
v) Repeat step 1, select half breadth plan and then paste it in top view at (0,0).
vi) Select line half breadth, mirror the waterline, join them and define all layer.
viii) Select line body plan, mirror the waterline, join them and define all layer
as shown Figure 3.22 below.
The domain dimensions in this project for computation are fixed with respect
to a local coordinates system with the origin at the point of mid-plane, central
plane of ship model and free surface.
𝑧
1.9 < < −2.5,
𝐿𝑤
𝑥
−1 < < 1,
𝐿𝑤
𝑦
−0.0338 < < 0.017
𝐿𝑤
The domain around the hull of MTC092 ship model was discretized with three
dimensional hexahedral structures mesh using OpenFoam CFD as shown in
Figure 3.34.
46
iv) Creating a block in the domain, which is basically a single mesh covering
the whole domain.
vii) Associating the block edges, vertices and faces with the geometry curves,
points and surfaces accordingly.
ix) A grading of mesh density to provide denser meshes near the hull is done
by applying proper mesh law.
x) This is done to capture the boundary layer effects near the hull.
47
In meshing stage, the Gmsh has been used to mesh the ship model of MTC092.
While open the Gmsh window, we can simply open the model file for example
MTC092.igs file as shown in Figure and go to Mesh > 3D mesh to setup the
mesh.
After the mesh is completed as shown in Figure xx. Lastly, click file at the left
upper Export > stl file and save the mesh in the triSurface directory as shown
in Figure below.
48
3.3.3.2 Solving
First of all, a case study is created using the openFoam terminal. When case
study is created a system directory that enable user to use and modify the software. In
this project, the system directory is created by referred the system directory in
DTCHull tutorials.
System directory for this project followed system directory in DTCHull and
then modified the case study to ensure its matching to this resistance simulation cases
based on the model and condition.
49
System
blockMeshDict
controlDict
decomposeParDict
fvSchemes
fvSolution
meshQualityDict
refineMeshDict
setFieldsDict
snappyHexMeshDict
surfaceFeatureExtractDict
topoSetDict.1
topoSetDict.2
topoSetDict. 3
topoSetDict. 4
topoSetDict.5
topoSetDict.6
When using the terminal OpenFoam, user must be familiarised himself with
tree view command which is ls -1. The tree view enable user to manage calculation
parameters of the case study. Starting terminal user with define the path to case
directory. However, when the user opened the MTC092 file in the created directory
the path will be automatically defined.
50
In the study, the *.stl file has been copied into constant/triSurface directory.
After the mesh is verified, make sure then click on check mesh. Once it is finish,
MTC092 will return a data log about the mesh as shown in Figure 3.28. This log data
contains the detailed information about the mesh which can be obtain similarly using
Gmsh’s mesh evaluation. This step is crucial because it allows MTC092 to identify
the of bad meshes and recognise the boundary condition group that has been defined
in Gmsh.
In this step the things that needs to be adjusted is in calculation features which
is since the case is a steady flow, the steady or unsteady flow algorithm have to change
into steady flow. In turbulence model k−ω SST option is selected.
Hence, this k-w SST model is a combination of these which good mesh at boundary
with wall treated usually works.
In this post processing part, the results from MTC092 is ready to be visualized on the
standalone ParaView. OpenFoam is come with their own post processing software
which called ParaView. Paraview field will combine the field value and positional data
with the mesh modelling to create a visual presentation of the OpenFoam simulation.
However, OpenFOAM will only give full result when there is no error in the
calculation or geometry. As stated in previous chapter, when there is error it is
recommended to rebuild the mesh and making it finer than before, then repeat the
previous steps. If the geometry surface is error then it is recommend remodelling the
model then mesh again and export into OpenFOAM. The code of the calculation of
OpenFOAM is saved in:
Inside this directory, there will be a listing file, summary file performance log, setup
log and two directories which are monitoring and post-processing.
OpenFOAM listing file is primary source to check for the convergence of the
result. The value of the solution parameters that are setup during the pre-processing,
52
such as alpha.water, k, nut, omega, pointDisplacement and velocity which are called
in every step of the iterations.
If the simulation failed, you may need to check what has cause the error to
occurred. In order to know where is the error, users need to open the directory file and
check also the constant source to check for the result.
Control visibility.
In Edit Colour map (and in the view menu), a Colour Legend can
be added. The colour legend can be moved and re-scaled with the
mouse.
53
With the Calculator filter you can create new fields from existing
scalar and vector fields, using simple mathematical functions.
The new fields can be used just like the original fields.
The Slice Filter lets you make a plane/box/sphere cuts through your
results.
54
iii) Threshold, Glyph and Cell Centre Filters the Result in Paraview
The Threshold Filter lets you show cells with solution scalar values
in a specific range.
The Glyph Filter lets you make vector plots. It can also be used to
visualize lagrangian particles.
The Stream Tracer filter lets you make stream line tracers,
submitted from a point, aspherical cloud, or line sources.
The Warp (scalar) filter lets you distort your geometry according
to the local value of a scalar. This is mostly useful in solid
mechanics.
The Plot Over Line filter lets you make detailed plots of the variables
along a line.
In the Display tab, you can choose which variables to plot, and choose
line colours and line styles.
Use ls-l to see the difference in file size for the different formats.
55
The current state, including created objects and current view, can be
saved for later loading. This is useful if the same visualization needs to
be done many times.
Introduction
In this chapter, all the results obtained in the work flow either from resistance
test or simulation in OpenFoam are documented. The result from OpenFoam will be
used to verify the experimental.
Resistance Test
There a result obtained from the resistance test of model MTC 092 in towing
tank which wave pattern of MTC 092 hull form from plan view. The resistance test of
MTC 092 will run with three difference speed which are 14 knot, 16 knot and 18 knot.
This is because this MTC 092 ship model is actually a high speed ship and resistance
test in towing tank only able to run until maximum speed 18 knot.
57
Resistance Results
The result of resistance test of MTC 092 ship model was carried out by MTC
in towing tank. The model was attached to the towing carriage and run on the water at
the specified speed. Table 4.1 show the resistance data from MTC while Figure 4.1 is
the graph resistance against speed.
The result of wave pattern obtained from resistance test of MTC 092 that
conducted in towing tank with three difference speed that are 14 knot, 16 knot and 18
knot. The objective of this experiment is to observe and predict the wave pattern along
hull ship model MTC 092. Table 4.2 show the result for wave pattern (degrees) and
Figures below show the captured of wave pattern during the resistance test from
difference view.
Figures below show the captured of wave pattern during the resistance test from
difference view.
i. 14 knot
Figure 4.2 Wave pattern from forward view at the speed 14 knot.
59
Figure 4.3 Wave pattern from midship view at the speed 14 knot.
Figure 4.4 Wave pattern from aft view at the speed 14 knot.
60
ii. 16 knot
Figure 4.5 Wave pattern from forward view at the speed 16 knot.
Figure 4.6 Wave pattern from midship view at the speed 16 knot.
61
Figure 4.7 Wave pattern from midship view at the speed 16 knot.
62
i. 18 knot
Figure 4.8 Wave pattern from forward view at the speed 18 knot.
Figure 4.9 Wave pattern from midship view at the speed 18 knot
Figure 4.10 Wave pattern from aft view at the speed 18 knot.
63
The graph plotted in Figure 4.1 of ship model total resistance versus ship speed,
it can be seen that as the running ship model speed increased, the total resistance
increased. In other word, the relationship between ship speed with total resistance is
directly proportional.
Besides that, based on the wave pattern shows above as ship speed
increases, the thickness of the boundary layer will increase and the transition point
between laminar and turbulent flow moves closer to the bow. Therefore, it is causing
an increase in frictional resistance as speed increases.
Other than that, the creation of waves energy can be observe by as ship
speed increases, the height of waves produced by the ship is also increases and
therefore the energy required to produce these waves also increases. The lost energy
is referred to the wave making resistance principle. As shown above, MTC 092 model
is a high speed vessel which is at high speeds, the wavelength between divergence
wave is increase. Thus the gradient of total resistance at high speed becomes more
slope compared to low speed.
The tedious part in this study is mostly in pre-processing part because for the
first attempt to run the model in OpenFOAM, it take more than 12 hours to create the
visualization in ParaView. However, OpenFOAM only give full result when there is
no error in the coding, calculation or geometry. As stated in the previous study, when
there is error it is recommended to rebuild the mesh and making it finer.
64
After re-meshing the model and load it in ParaView, the result still same
as before which is there is only domain boundary and no ship model mesh on the
domain as shown in Figure 4.11 below.
Since using MTC 092 model, the ParaView did not display anything and then
I used the sample cases from OpenFOAM by using the same coding and command
from cases file directory. After run the simulation, I did get the output of the ParaView.
My observation from that problem is i need to check the surface of geometry again to
check either there are error messages during and after the solving phase. The Figure
4.12 below shows the result after surfaceCheck MTC 092.stl file model.
65
The only solution for this error or problem is re-modelling the model MTC 092
in AutoCAD and make sure it become one solid surface model. The process of re-
modelling the model is very tedious since surface of geometry of the ship is very
complex and it is take a lot of time. In re-modelling MTC 092 part, the biggest problem
that I faced is to loft the model. There are many modelling operations in AutoCAD
that will not work correctly at large coordinates because of this limitation.
However, the result in ParaView is still the same and at this time i need to
recheck each of cases directory from constant to system directory. This is another
problem of OpenFOAM is not the most user-friendly software. Current simulation
challenges are related to the integration and automation of simulation tools in a very
complex CAE environement including automatic geometry retrieval, surface and
volume meshing, sensitivity and optimization studies. Range and quality of physical
models, solver settings and solution algorithms, lack of robust automatic solution
control bring more complexity to the OpenFOAM user.
Conclusion
The main objective of this project was to predict the performance of model
MTC 092 hull by simulating wave pattern around this hull form, whilst the secondary
objective was to analyze of the computed flow field is expected to yield hull resistance,
free-surface wave pattern which will be compared with the model testing results. Both
of the objectives stated are unsuccessfully achieved for few reasons:
ii) Range and quality of physical models, solver settings and solution
algorithms, lack of robust automatic solution control bring more
complexity to the OpenFOAM user.
iii) The simulation software becomes more complex due to the interaction
between numerous physical models, solution strategies and solver settings.
iv) OpenFOAM does not inform user its computation progress nor the
expected time for completion which can be a problem if user have a limited
time resource.
68
Recommendation
It is recommended that future works for similar to this study should address the
following issues:
ii) Familiarize with Linux operating system to better understand the Linux
command and operation.
iii) Practicing OpenFoam tutorial that similar to the case study earlier to
acquire the better knowledge and understanding regarding the project
cases.
iv) Instead of using CAD software such as AutoCAD and Solidwork, try to
explore more on the ability of Maxsurf Fitting to build the geometry of
ship hull because Maxsurf will generate a better geometry of ship hull,
69
REFERENCES
APPENDIX A
APPENDIX B
Draught: 1.65 m
Ship Model no. MTC 092
APPENDIX C
convertToMeters 1;
vertices
(
(-4.11 -1 -1.25)
(9.59 -1 -1.25)
(9.59 0 -1.25)
(-4.11 0 -1.25)
(-4.11 -1 -1)
(9.59 -1 -1)
(9.59 0 -1)
(-4.11 0 -1)
(-4.11 -1 -0.2565)
(9.59 -1 -0.2565)
(9.59 0 -0.2565)
(-4.11 0 -0.2565)
(-4.11 -1 0)
(9.59 -1 0)
(9.59 0 0)
(-4.11 0 0)
(-4.11 -1 0.2565)
(9.59 -1 0.2565)
(9.59 0 0.2565)
(-4.11 0 0.2565)
75
(-4.11 -1 1)
(9.59 -1 1)
(9.59 0 1)
(-4.11 0 1)
(-4.11 -1 1.25)
(9.59 -1 1.25)
(9.59 0 1.25)
(-4.11 0 1.25)
);
blocks
(
hex (0 1 2 3 4 5 6 7) (42 19 50) simpleGrading (1 1 0.05)
hex (4 5 6 7 8 9 10 11) (42 19 50) simpleGrading (1 1 1)
hex (8 9 10 11 12 13 14 15) (42 19 4) simpleGrading (1 1 1)
hex (12 13 14 15 16 17 18 19) (42 19 4) simpleGrading (1 1 1)
hex (16 17 18 19 20 21 22 23) (42 19 40) simpleGrading (1 1 1)
hex (20 21 22 23 24 25 26 27) (42 19 20) simpleGrading (1 1 5)
);
edges
(
);
boundary
(
atmosphere
{
type patch;
faces
(
(24 25 26 27)
);
}
inlet
{
type patch;
faces
(
(1 2 6 5)
(5 6 10 9)
(9 10 14 13)
(13 14 18 17)
(17 18 22 21)
(21 22 26 25)
);
}
outlet
{
type patch;
faces
(
(0 4 7 3)
(4 8 11 7)
(8 12 15 11)
(12 16 19 15)
(16 20 23 19)
(20 24 27 23)
);
}
bottom
{
type symmetryPlane;
76
faces
(
(0 3 2 1)
);
}
side
{
type symmetryPlane;
faces
(
(0 1 5 4)
(4 5 9 8)
(8 9 13 12)
(12 13 17 16)
(16 17 21 20)
(20 21 25 24)
);
}
midPlane
{
type symmetryPlane;
faces
(
(3 7 6 2)
(7 11 10 6)
(11 15 14 10)
(15 19 18 14)
(19 23 22 18)
(23 27 26 22)
);
}
);
mergePatchPairs
(
);
//
**********************************************************************
*** //
77
2. controlDict
application interFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 400;
deltaT 1;
writeControl timeStep;
writeInterval 100;
purgeWrite 0;
writeFormat binary;
writePrecision 6;
writeCompression uncompressed;
timeFormat general;
timePrecision 6;
runTimeModifiable yes;
functions
{
forces
{
type forces;
libs ( "libforces.so" );
78
patches (hull);
rhoInf 998.8;
log on;
writeControl timeStep;
writeInterval 1;
CofR (2.929541 0 0.2);
}
}
//
**********************************************************************
*** //
79
3. decomposePArDict
-*----------------------------------*\
| ========= |
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 4.1
|
| \\ / A nd | Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*--------------------------------------------------------------------
-------*/
FoamFile
{
version 2.0;
format ascii;
root "";
case "";
instance "";
local "";
class dictionary;
object decomposeParDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * //
numberOfSubdomains 8;
method scotch;
simpleCoeffs
{
n (2 1 1);
delta 0.001;
}
hierarchicalCoeffs
{
n (1 1 1);
delta 0.001;
order xyz;
}
metisCoeffs
{
}
manualCoeffs
{
dataFile "";
}
distributed no;
roots
80
(
);
//
**********************************************************************
*** //
81
4. fvSchemes
ddtSchemes
{
default localEuler;
}
gradSchemes
{
default Gauss linear;
limitedGrad cellLimited Gauss linear 1;
}
divSchemes
{
div(rhoPhi,U) Gauss linearUpwind grad(U);
div(phi,alpha) Gauss vanLeer;
div(phirb,alpha) Gauss linear;
div(phi,k) Gauss linearUpwind limitedGrad;
div(phi,omega) Gauss linearUpwind limitedGrad;
div(((rho*nuEff)*dev2(T(grad(U))))) Gauss linear;
}
laplacianSchemes
{
default Gauss linear corrected;
}
interpolationSchemes
{
default linear;
}
snGradSchemes
{
default corrected;
82
wallDist
{
method meshWave;
}
//
**********************************************************************
*** //
83
5. fvSolution
solvers
{
"alpha.water.*"
{
nAlphaCorr 2;
nAlphaSubCycles 1;
cAlpha 1;
icAlpha 0;
MULESCorr yes;
nLimiterIter 10;
alphaApplyPrevCorr yes;
solver smoothSolver;
smoother symGaussSeidel;
tolerance 1e-8;
relTol 0;
minIter 1;
}
pcorr
{
solver PCG;
preconditioner
{
preconditioner GAMG;
smoother GaussSeidel;
tolerance 1e-5;
relTol 0;
};
tolerance 1e-5;
relTol 0;
84
};
p_rgh
{
solver GAMG;
smoother DIC;
tolerance 1e-7;
relTol 0.01;
};
p_rghFinal
{
$p_rgh;
relTol 0;
}
"(U|k|omega).*"
{
solver smoothSolver;
smoother symGaussSeidel;
nSweeps 1;
tolerance 1e-7;
relTol 0.1;
minIter 1;
};
}
PIMPLE
{
momentumPredictor no;
nOuterCorrectors 1;
nCorrectors 2;
nNonOrthogonalCorrectors 0;
maxCo 10;
maxAlphaCo 5;
rDeltaTSmoothingCoeff 0.05;
rDeltaTDampingCoeff 0.5;
nAlphaSpreadIter 0;
nAlphaSweepIter 0;
maxDeltaT 1;
}
relaxationFactors
{
equations
{
".*" 1;
}
}
cache
{
grad(U);
}
85
//
**********************************************************************
*** //
86
6. meshQualityDict
//- Minimum face twist. Set to <-1 to disable. dot product of face
normal
// and face centre triangles normal
minTwist 0.05;
//- If >0 : preserve single cells with all points on the surface if
the
// resulting volume after snapping (by approximation) is larger than
// minVolCollapseRatio times old volume (i.e. not collapsed to flat
cell).
// If <0 : delete always.
//minVolCollapseRatio 0.5;
// Advanced
7. refineMeshDict
set c0;
coordinateSystem global;
globalCoeffs
{
tan1 (1 0 0);
tan2 (0 1 0);
}
patchLocalCoeffs
{
patch outside;
tan1 (1 0 0);
}
useHexTopology no;
geometricCut yes;
writeMesh no;
//
**********************************************************************
*** //
8. setFieldsDict
| ========= |
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
| \\ / O peration | Version: 4.1
|
| \\ / A nd | Web: www.OpenFOAM.org
|
| \\/ M anipulation |
|
\*--------------------------------------------------------------------
-------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "system";
object setFieldsDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * //
defaultFieldValues
(
volScalarFieldValue alpha.water 0
);
regions
(
// Set cell values
// (does zerogradient on boundaries)
boxToCell
{
box (-999 -999 -999) (999 999 0.244);
fieldValues
(
volScalarFieldValue alpha.water 1
);
}
fieldValues
(
volScalarFieldValue alpha.water 1
);
}
);
//
**********************************************************************
*** //
90
9. snappyHexMeshDict
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* * * //
patchInfo
{
type wall;
}
}
};
// Refinement parameters
// ~~~~~~~~~~~~~~~~~~~~~
refinementSurfaces
{
hull
{
92
resolveFeatureAngle 45;
// Region-wise refinement
// ~~~~~~~~~~~~~~~~~~~~~~
refinementRegions
{
}
// Mesh selection
// ~~~~~~~~~~~~~~
nFeatureSnapIter 10;
}
}
}
// Advanced settings
// Advanced
//
**********************************************************************
*** //
96
10. surfaceFeatureExtractDict
/*--------------------------------*- C++ -*----------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 4.1 |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
FoamFile
{
version 2.0;
format ascii;
class dictionary;
object surfaceFeatureExtractDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
MTC092.stl
{
// How to obtain raw features (extractFromFile || extractFromSurface)
extractionMethod extractFromSurface;
extractFromSurfaceCoeffs
{
// Mark edges whose adjacent surface normals are at an angle less
// than includedAngle as features
// - 0 : selects no edges
// - 180: selects all edges
includedAngle 180;
}
subsetFeatures
{
// Keep nonManifold edges (edges with >2 connected faces)
nonManifoldEdges yes;
97
// Write options
//
*************************************************************************
//