ntnu-trondheim department of marine technology · pdf filentnu-trondheim department of marine...
TRANSCRIPT
NTNU-Trondheim
Department of Marine Technology
TMR-4320 Simulation Based Design Final Report
Autumn 2015
Optimum Geometry Design for a Point-Loaded Cruise Ship Balcony Made from Normal
Steel using Finite Element Method ANSYS Program
Muhammad Mukhlas
Student Number : 763599
November 2015
Abstract
This report describes the analysis and optimization of ship’s balcony structure for ship with length
100 m and above. In thin study case, Norwegian Gem cruise ship is taken as an example for
applying DNV-GL Rules for Ships Pt. 3 as a part of optimization. The balcony is modeled with 6
meter length and 3 meter breadth, and consists of minimum 2 transversal bar and 1 longitudinal
stiffener. At the beginning, the position and number of transversal bars and stiffeners are assumed.
The plate is loaded with distributed water pressure along the balcony, and also it is assumed that
there are 3 human weight load in 3 points on the balcony as the concentrated loads. By comparing
the minimum criteria given by DNV-GL rules with the FEM analysis using ANSYS program, it
shows that the safety factor criteria governed by this rules are too big. The optimization part have
been done by using Particle Swarm Optimization (PSO) method. By considering the weight,
maximum stress and maximum displacement of the structure, the optimized geometry of the
balcony structure is determined. PSO gives a very good result and all the objective is accomplished
without violating any constraints. Result of PSO gives Von Mises stress below the yield criteria
(233 MPa) and small vertical displacement (0.051 m). Total weight of the structure also decreasing
about 461.6 kilogram.
Table of Contents
1. Introduction…………………………………………………………………………………..1
2. Design Parameters…………………………………………………………………………...2
2.1. Given Parameters………………………………………………………………………..2
2.2. Assumed Parameters……………………………………………………………………2
3. Modeling of Geometry Structure……………………………………………………………3
3.1. Modeling using Autodesk Inventor……………………………………………………..3
3.2. ANSYS Workbench……………………………………………………………………..4
3.3. Joint Fixing in ANSYS Mechanical…………………………………………………….6
4. Finite Element Analysis (FEA) using ANSYS Mechanical APDL…………………………7
4.1. Plate Theory……………………………………………………………………………..7
4.2. Introduction of FEA…………………………………………………………………….7
4.3. Element Types in ANSYS……………………………………………………………….9
4.4. Von Mises Stress…………………………………………………………………………9
4.5. Geometry Reduction in ANSYS (HP Profile Bulb Section)…………………………..10
4.6. Mesh Convergence Test………………………………………………………………..11
4.7. ANSYS Initial Model Analysis………………………………………………………...12
5. Applying DNV-GL Classification Rules as a Part of Optimization………………………13
6. Particle Swarm Optimization………………………………………………………………17
6.1. Introduction…………………………………………………………………………….17
6.2. PSO Input Parameter………………………………………………………………….17
6.3. PSO Script Way of Works……………………………………………………………..17
6.4. PSO Output…………………………………………………………………………….18
6.5. PSO Conclusion and Discussion………………………………………………………19
7. Conclusion…………………………………………………………………………………..21
8. Suggestion and Improvement………………………………………………………………22
9. References…………………………………………………………………………………...22
10. Attachment………………………………………………………………………………….22
1
1. Introduction
The best way to design marine or another structure is to have a minimum criteria that can
withstand the external forces with boundary conditions applied. The only way to actualize that
is to do the Optimization in the structure.
There are many methods to test the design, for example Physical Test and Numerical Test.
Comparing to the physical test, numerical test usually consumes less time and budget. Another
advantage of this test, numerical test gives flexibility to the user to change the parameter that
wanted to be included in the test.
Finite element method is one of the methods that used for numerical test and it is well
established, especially for structural analysis. In this study case, ANSYS is used to solve the
finite element calculation and then the structure will be optimized by using Particle Swarm
Optimization. The objective of this study case is to determine the optimal structure with
minimum parameter as possible, and it also can resist the external forces applied.
2. Design Parameters
In this section, the parameters used in the study case are described. Parameters are divided in
to Given Parameters and Assumed Parameters and it is showed in the next two sub-sections.
The illustration of initial model (first assumption) used for the analysis is given below.
Wide
Length
Figure 2.1 : Structure Geometry Definition
Information :
= Point load applied
= Transverse beam
= Stiffener
Constrained side
2
2.1. Given Parameters
The given parameters given in this study case are described below.
Table 2.1 : Given Parameters
Parameter Value Unit
Balcony Length 6 meter
Balcony Width 3 meter
Water height above balcony 1 meter
Number of transverse beam 2 unit
Boundary condition Clamped in one of longitudinal side
Assumption Balcony behavior is uncoupled from the global ship
2.2. Assumed Parameters
The assumed parameters given in this study case are described below.
Table 2.2 : Assumed Parameters
Parameter Value Unit
Steel Density 7850 kg/m3
Young’s Modulus of Steel 200 GPa
Steel’s Yield Stress (Design) 235 MPa
Plate thickness 0.01 meter
Stiffener type HP 180x8
Number of Stiffener 5
Stiffener Spacing 0.5 meter
Transverse beam type 200x200
Transverse beam web thickness 0.001 meter
Transverse beam flange thickness 0.001 meter
Transverse beam spacing 2 meter
Person 1 weight 120 kilogram
Person 2 weight 60 kilogram
Person 3 weight 86 kilogram
3
3. Modeling of Geometry Structure
Before doing the finite element method analysis, the determination of structure geometry must
be completed. There are two ways of drawing the structure geometry, using the CAD
(Computer-Aided Design) software or directly draw the structure in CAE (Computer-Aided
Engineering).
3.1. Modeling using Autodesk Inventor
Autodesk Inventor is one of the CAD software that available in the market. By using this
software, the wanted structure geometry can simply be drawn with graphical interface.
After the drawing is finished, the structure will be transferred into CAE for the further
analysis. There are several steps for drawing the specified structure observed in this study
case.
i. Create the parts
The structure consists of three main parts, plate, transversal beam and stiffener. The
dimension is drawn and defined manually by the user. In Inventor, the drawn structure
can easily transformed into 3D geometry by applying extrusion on the drawn 2D plane.
Figure 3.1 is the example of stiffener drawing in Inventor.
Figure 3.1 : Stiffener Part Drawing in Inventor
ii. Parts Assembly
The advantage of using Inventor is the flexibility of drawing the structure. The
structure can be drawn separately and then assembled as a full structure. Figure 3.2 is
the assembly made for the study case.
4
Figure 3.2 : Parts Assemble in Inventor
3.2. ANSYS Workbench
The assembled structure will be transformed to line, area and joint so that ANSYS APDL
can read and process the geometry. This work can be done using ANSYS Workbench.
CAD model can be easily transferred from Inventor into ANSYS Workbench. The aim of
this step is to create the mid-surface of structure thickness and also create the joint in the
intersecting line on the structure.
i. Creating the Mid Surface
In this step, volume of the structure will be transferred into mid-surface plane using
ANSYS Workbench. Illustration about mid-surface is described in Figure 3.3 and
Figure 3.4 below.
Figure 3.3 : Mid Surface Definition
Figure 3.4 : Mid Surface Geometry in ANSYS Workbench
Mid Surface Thickness
5
ii. Connecting the plate with Transversal Beam and Stiffener
Mid-Surface generation can caused a gap between the plate and the beams above the
structure. For the analysis in ANSYS, it is necessary for the structure to be connected.
Therefore, the mid-surface of the plate should be moved half of the plate thickness
into the beams. Figure 3.5 illustrated the problem described in this step.
Figure 3.5 : Plate Movement Illustration
iii. Creating the Joints
This step is to make sure that all the parts connected, so when the finite element
analysis using ANSYS conducted, all the parts are interacting each other. Figure 3.6
shows the joint created using ANSYS workbench (green line).
Figure 3.6 : Creating the Joints
Final Position
Initial Position
6
3.3. Joint Fixing in ANSYS Mechanical
After transferring the geometry from ANSYS Workbench into ANSYS Mechanical,
usually the model is not ready yet to be analyzed. Some geometry error might appear and
need to be fixed. In this case, the correct joint and surface area is needed before conducting
finite element analysis. Figure 3.7 describes the error that needs to be fixed.
Figure 3.7 : Geometry Error After Transferring into ANSYS Mechanical
It can be seen from figure above that the joint between parts does not make any specific
area between them. It is indicating that the line and area is not well connected and need to
be repaired. Some graphical repairing and addition command in ANSYS such as AGLUE
or AOVLAP needed to make sure the division of joint and area. The result after fixing this
problem can be seen in Figure 3.8 below.
Figure 3.8 : Geometry After Fixing the Problem
7
4. Finite Element Analysis (FEA) using ANSYS Mechanical APDL
4.1. Plate Theory
This theory is based on Beam Theory, just the extension from 2D into 3D. The
characteristic of this theory is also the same, that the lateral loads to the plate are carried
by hear forced and bending moments. According to the behavior of plates, it can be
distinguished by three method of analysis :
i. Thin plate theory (Kirchhoff theory) for t/L<1/10
This theory is analogous to Euler-Bernoulli Beam Theory in 2D problem
ii. Moderately Thick plate theory (Mindlin-Reissner theory) for 1/3>t/L>1/10
This theory is analogous to Timoshenko Beam Theory in 2D problem
iii. Thick Plate theory (3D FEA) for t/L>1/3
4.2. Introduction of FEA
Finite Element Analysis is approximation from Beam and Plate theory by numerical
analysis method that may be used to solve problems in many engineering disciplines
especially in structural mechanics. There are three basic steps that FEA usually has :
i. Preprocessing phase: in this phase, the problem will be created and discretized into
finite elements (meshing)
ii. Solution Phase : in this phase, the problem will be solved by a set of linear algebraic
equations to obtain nodal results
iii. Postprocessing Phase: in this phase, the strains and stressed will be computed from
nodal results. It also have to be verified for its accuracy by the user.
The illustration of FEA approximation can be seen in figure below.
Figure 4.1. Illustration of FEA
Meshing
8
As we can see from figure above, the structure will be modeled into discretized model
(meshing). Each mesh (element) will consist of number of nodes depending in the choosen
element. The choice of the element will affects the accuracy of finite element calculation.
In FEA, the displacement is assumed by polynomial function with n order (shape function)
with the equation below.
v=N1v1+N2v2+N3v3+…+Nmvm
with :
v = displacement within the element
Ni = shape function of node i (i=1,2,3) with nth order polynomial function
vi = displacement of node i
m = number of nodes
To ensure that the FE solution converges to the exact solution of the mathematical model
as the FE mesh is indefinitely refined, the following requirements must be satisfied :
Completeness Criterion : the element must represent all rigid body and constant
strain modes => the polynomial used in the shape function N have to be complete
the mth order, where m defines the order of the strain-displacement differential
operator Δ
Compatibility Criterion : the assumed displacements should be such that the
strains at the interface between elements are finite (even though they may be
discontinuous). Which means that the displacement within the element v have to
be chosen such that Cm-1 continuity is obtained for all nodes and across all
interelement boundaries.
Since FEA is approximation, the result is not exactly the same with the reality. But since
continuity is already assured by compatibility criterion, then the displacement result will
exactly the same with the real problem (accurate).On the other hand, the stress result is
based on averaged sense of equilibrium which will give the stress result as average of
exact stress within element. The typical FEA result can be seen from figure below.
9
Figure 4.2 Example of FEA Result (Left : Displacement, Right : Stress)
4.3. Element Types in ANSYS
In this study case, there are two types of element that have been used to conduct the
simulation using ANSYS, Beam 188 and Shell 181.
Beam 188 is based on Timoshenko beam theory which includes shear-deformation on its
calculation. This element includes two nodes and consists of 6 degree of freedom in each
node (3 translation and 3 rotation). The provided stress-stiffness term enable the element
to analyze flexural, lateral and torsion stability problem. This element is used in bulb
section of stiffener, while assuming its section with rectangular form. The discussion
about this will be represented in Chapter 4.5.
Shell 181 represents Reissner-Mindlin theory (first-order shear deformation). This
element consist of 4 nodes and each node consists of 6 degree of freedom. Shell 181 can
represent linear elastic, elastoplastic, creep or hyperelastic material. However, only
isotropic, anisotropic and orthotropic linear elastic can be input for elasticity. Shell 181 is
used for modeling area of plate, transverse beam and also web of stiffener.
4.4. Von Mises Stress
Von Mises stress is a criterion which tells us the maximum stress that can be handled by
the material due to a certain load case within its elastic limit. Von Mises stress criteria
works well especially when the material is ductile in nature.
𝜎𝑣 = √(𝜎1 − 𝜎2)2 + (𝜎2 − 𝜎3)2 + (𝜎3 − 𝜎1)2
2
Criteria : 𝜎𝑣 > 𝜎𝑦𝑖𝑒𝑙𝑑
10
The illustration of Von Mises stress best described in figure below.
Figure 4.3 : Illustration of Von Mises Stress
4.5. Geometry Reduction in ANSYS (HP Profile Bulb Section)
Since ANSYS reads our geometry based on line and area, there was some change of the
balcony geometry that already modeled in CAD software. In this case, the bulb profile in
ANSYS is only modelled with line, and some correction must be made to overcome this
problem.
Figure 4.4 : Bulb Section Problem in ANSYS
The problem can be overcome by using Parallel Axis Theorem and applying it then
comparing the Area and Second Moment of Inertia of bulb section with created new
section that using rectangular Beam 188 element with the same number of those two
parameters. The result and illustration can be seen from table and figure below.
Table 4.1 : Defined Analogue Rectangular Section
Bulb Section (HP Type 180x8) Analogue Rectangular Section
Area of Bulb Section 2.17x2.04 Cm2 Area of Rectangular Section 4.43 Cm2
Second Moment of Inertia
Ix 610.4956 Cm4 Ix 610.5 Cm4
Iy 7.2491 Cm4 Iy 7.43 Cm4
11
Figure 4.5 : Stiffener Problem Correction Illustration
4.6. Mesh Convergence Test
To get better result in FEA, there are two ways to improve the result. First is H-
Refinement, which the mesh size is decreased hence the number of degree of freedom is
increased. Second is P-Refinement, where the order of interpolation polynomial is
increased.
While it is better to do all of those refinement, but nothing is for free, it supposed to come
with a higher computing price. Mesh Convergence Test is to find a mesh size which gives
accurate enough result with reasonable computing time. The way to do it is by decreasing
the mesh size in certain range and spacing between values, and the solution results is
observed (you can choose between Displacement and Stress). Since displacement is
exactly approximated by FEA in nodal point, we can observe the result in one certain
nodal point. There must be significant change of result between coarse mesh and finer
mesh, and in finer mesh region the value will converge into one point. The aim of this
Mesh Convergence Test is to take the largest mesh size in that Convergence Line. It is
best to see Figure 4.6 for better picture of the test.
Figure 4.6 : Convergence Test
Based on figure above, 0.04 m mesh size will be used in this study case.
2.32E-02
2.34E-02
2.36E-02
2.38E-02
2.40E-02
2.42E-02
2.44E-02
2.46E-02
00.050.10.150.20.250.3
Dis
pla
cem
ent
(m)
Mesh Size (m)
Stiffener Height
Analogue Area
Convergence
Line
12
4.7. ANSYS Initial Model Analysis
After completing all the steps above, analysis using ANSYS can be proceed to get the Von
Mises Stress and also the Displacement. Those two parameters is used because we want
to design durable structure with considering aesthetics when it is being used (not too high
displacement). The initial result of the structure can be seen from figure and table below.
Figure 4.7 : Vertical Displacement of Structure (Initial Assumption)
Figure 4.8 : Von Mises Stress of Structure (Initial Assumption)
13
Table 4.2 : Result of Assumption Model
Variables Results
Von Mises Stress 323.09 MPa
Displacement 0.04546 m
Structural Weight 2044.8 kg
As we can see from the results above, Von Mises Stress still far above the requirement
(Yield Stress), but it gives a very good result in displacement. It shows that the biggest
stress is located in transverse beam area, while it seems like the stiffeners just give small
contribution in resisting the external force. However, stiffeners retain the displacement in
the area that is not detained by transverse beam.
Some optimization needed to decrease the Von Mises Stress and also decrease the
structural weight if it is possible. Some improvement must be made in T-Bar strength in
withstanding the vertical force, decreasing the number of stiffeners (No need to change
the stiffener type) and also decreasing the plate thickness (which gives very large
contribution in total structure mass). More light the structure weight is better and will
simplify the work of installation.
5. Applying DNV-GL Classification Rules as a Part of Optimization
Because of the assumed structure fail, the optimization must be made to ensure the objective
of durable and aesthetic structure fulfill. One of the methods of optimization in this study case
is by using DNV-GL rules Part 3 Chapter 1 “Hull Structural Design – Ships with Length 100
meters and above”. There are several additional assumption has been made, to fulfill the
requirement of variable for calculation using this rule.
Table 5.1 : Basic Assumption for DNV-GL Rule
Basic Assumption
Ship type Cruise Ship
Ship name Norwegian Gem
Size 93530 GT
Draft 8.2 m
Length 294.13 m
14
Table 5.2 : Basic Assumption for DNV-GL Rule (cont.)
Basic Assumption
Width 32.31 m
Block Coefficient 0.71
Speed 28 knot
Source http://transport.vestforsk.no/Dokumentasjon/pdf/Skip/Cruise.pdf
Because of our problem is very theoretical, the rules cannot be followed blindly. Section
modulus of transverse beam and stiffeners must be found by using Beam Theory because of
clamped end in one of the longitudinal side, and also it is assumed that modulus of section of
stiffeners can be found by the same method (stiffeners end clamped in transverse beam). Load
that used in this calculation is the same as the given parameter in section 2. Illustration of the
assumption can be seen from figure below.
Figure 5.1 : Structural Basic Assumption
All the formulas used in the calculation can be found in DNV-GL Rules digital copy, and also
the calculation sheet is attached in Attachment section. The result shows requirement that must
be fulfilled based on the rule and it shows in Table 4.4 below.
Table 5.3 : Requirement Based on DNV-GL Rules
DNV-GL Requirement
Plate Thickness 12.883 mm
Stiffener’s Section Modulus (Zstiff) 86.221 cm3
Stiffener’s Thickness 6.5 mm
Transverse Beam’s Section Modulus (ZTbar) 818.708 cm3
Transverse Beam’s Thickness 12.433 cm3
And several changes has been made to fulfill the requirement above, Table 4.5 describes all
the changes that made.
15
Table 5.4 : Requirement Based on DNV-GL Rules
Structure Parameter Changes
Plate Thickness 12.883 mm
Stiffener Type HP 180x8 (the same as before)
Number of Stiffener 9
Zstiff Required After Changes 51.732 cm3
Transverse Beam Type T 350x300 (Section Modulus = 447.3 cm3)
Transverse Beam’s Section Thickness Flange = 24 mm, Web = 13 mm
Number of Transverse Beam 5
ZTbar Required After Changes 409.354 cm3
New structure have to be analyzed by using ANSYS to make sure that the rule give the good
result for optimization. Figure 5.2, Figure 5.3 and Table 5.5 shows the result of analysis in Von
Mises Stress and Displacement.
Figure 5.2 : Vertical Displacement of Structure (DNV-GL Rules Optimization)
16
Figure 4.8 : Von Mises Stress of Structure (DNV-GL Rules Optimization)
Table 5.5 : Result of DNV-GL Rules Model
Variables Results
Von Mises Stress 43.211 MPa
Displacement 0.0027 m
Structural Weight 3600.4 kg
From the result we can have several conclusions :
1. Our objective to have only 2 T-bar in the structure is violated. Even though bigger
dimension of T-bar can be used, but availability in the market also have to be considered.
So the only way to fulfill the DNV-GL rules standard is to increase the number of T-bar.
2. Increment of number of stiffener has been made since the thickness requirement already
fulfilled but not for section modulus. The other way is to change the stiffener’s type, but to
increase stiffener’s number is much preferable in this study case.
3. Safety factor is around 5.438 and it is considerably high. This is due to factors that DNV-
GL Rules account for :
Acceleration (effect of motion)
Corrosion thickness addition
17
Another safety factor
Since the safety factor is too high in this case, some other optimization must be conducted to
fulfill the objective with efficient result.
6. Particle Swarm Optimization
6.1. Introduction
Particle Swarm Optimization (PSO) is a computational method that optimizes a problem by
iteratively trying to improve a candidate solution with regard to a given measure of quality.
The method is originally attributed to Kennedy, Eberhart and Shi and was first intended for
simulating social behavior. A basic variant of the PSO algorithm works by having a population
(called swarm) of candidate solutions (called particles). These particles are moved around in
the search-space according to a few simple formulas. When improved positions are being
discovered these will then come to guide the movements of the swarm. The process is repeated
and by doing so it is hoped to hit the satisfactory solution.
6.2. PSO Input Parameter
Since the only interest is to reduce the Von Mises stress that located in T-bar section, all the
parameters related to T-bar will be assigned as the input of PSO process. Plate thickness also
included to reduce the maximum weight of structure. Table 6.1 describes the interval and range
of each parameter that will be optimized.
Table 6.1 : PSO Input Parameter
Parameter Range (minimum : interval : maximum)
Plate Thickness 0.003 : 0.001 : 0.02 m
Transverse Beam Height 0.2 : 0.05 : 0.6 m
Transverse Beam Flange 0.2 : 0.05 : 0.6 m
Transverse Beam Web Thickness 0.005 : 0.001 : 0.012 m
Transverse Beam Flange Thickness 0.005 : 0.001 : 0.012 m
6.3. PSO Script Way of Works
PSO process in this study case is conducted by using Matlab script that provided by TMR 4320
– Simulation Based Design course and developed by the lecturer Prof. Sören Ehlers. As a
18
student, the only thing that need to understand is how to input, set the objective and constraint
function, and how to read the output.
After set the input by assigning the value in previous sub-section, the objective and constraint
function must be established. Because our objective is to decrease the total weight of structure
and Von Mises stress that below yield stress, we can assign total weight as an objective
function and stress problem as a constraint function.
Objective = Mass of the plate + Mass of total stiffeners + Mass of total transverse beams
Constraint = 𝑀𝑎𝑥𝑖𝑚𝑢𝑚 𝑆𝑡𝑟𝑒𝑠𝑠
𝑌𝑖𝑒𝑙𝑑 𝑆𝑡𝑟𝑒𝑠𝑠− 1, if Constraint > 0 => Constraint=1.
Feasible Solution => -1 < Constraint < 0
Infeasible Solution => 0 < Constraint < 1
Modified Matlab script is attached in Attachment section.
6.4. PSO Output
After modifying and running the given script, it will present the output graphically as can be
seen in figure below.
Figure 6.1 : Objective Function PSO Output
19
Figure 6.2 : Constraint Function PSO Output
And the Figure 6.3, Figure 6.4 and Table 6.2 below shows the output from FEA using ANSYS
with the optimized parameter by PSO.
Figure 6.3 : Vertical Displacement of Structure (PSO)
20
Figure 6.3 : Vertical Displacement of Structure (PSO)
Table 6.2 : Result of PSO
Variables Results
Von Mises Stress 233.441 MPa
Displacement 0.051 m
Structural Weight 1583.2 kg
6.5. PSO Conclusion and Discussion
After doing the optimization using PSO, there are several improvement in the structure
comparing from the first initial assumption.
1. From Figure 6.1 and Figure 6.2 above, it shows that the iteration process fulfill the set
objective and constraint function works correctly (constraint function graph varied in
the range of feasible solution). Iteration to find minimum mass with feasible solution
due to allowable stress (yield criteria) is reached.
2. Objective to find Von Mises stress and vertical displacement below the allowable is
accomplished.
21
3. Our allegation proved, the most vital part to be optimized is transverse beam section.
The result of optimized parameter (including plate thickness) can be seen in Table 6.2
below.
Table 6.2 : Result of PSO
Parameter Range (minimum : interval : maximum)
Plate Thickness 0.007 m
Transverse Beam Height 0.4 m
Transverse Beam Flange 0.2 m
Transverse Beam Web Thickness 0.005 m
Transverse Beam Flange Thickness 0.006 m
7. Conclusion
This report presents a systematic approach to optimize structure under given assumption
parameters and boundary conditions. Since the problem is in 3D, FEA helps to calculate the
result with better approximation on condition that the user understand the theory behind and
how to perform the analysis. In this study case, ANSYS software is being used since it is
already well established. Problem like geometry reduction and convergence test has been made
to make sure the analysis perform with good input, hence it will gives better approximation of
the problem. The element choice also have to be decided based on beam and plate theory,
ANSYS Help gives explanation about the element provided in the program.
For the first time, several assumption of structure have to be made. Result shows failure in Von
Mises stress, and the optimization must be made to reach the objective of yield stress criteria,
vertical displacement and also lighter structural weight.
From optimization using DNV rule, it shows a not very satisfactory result due to the
considerably high safety factor assigned in that rule. Number of maximum transverse beam
violated and also increment of number of stiffener has been made to fulfill the requirement.
While PSO gives a very good result and all the objective is accomplished without violating
any constraints. Total structure weight decreasing about 461.6 kilogram which is a good thing
for easiness of installation.
22
8. Suggestion and Improvement
Since PSO does not consider about safety factor, there are two ways to improve the result of
the optimization :
1. Adding safety factor such as corrosion thickness, etc.
2. Detailed load case and extreme load analysis, so the result will be based on the maximum
load that might be happened in the structure.
9. References
[1] Moan, Torgeir. Kompendium, TMR 4190 Finite Element Modeling and Analysis of Marine
Structures. Department of Marine Technology. 2003
[2] Mathisen, Kjell Magne. Lecture Notes, TMR 4190 Finite Element Modeling and Analysis of
Marine Structures. Department of Marine Technology. 2015
[3] DNV-GL. DNV-GL Rules Part 3 Chapter 1 : Hull Structural Design – Ships with Length 100
meters and above. DNV-GL. 2015
[4] Madenci, Erdogan & Guven, Ibrahim.The Finite Element Method and Applications in
Engineering Using ANSYS. Springer. 2015
10. Attachment
10.1. Matlab Exercise Result
Exercise 1
1. a. Topology Matrix I
% Topology matrix T(node1,node2,propno),
T = [ 1 2 1
2 3 1 ]; %propno defines the element property on each element.
b. Topology Matrix II % Topology matrix T(node1,node2,propno),
T = [ 1 7 1;2 7 1;8 7 1;1 8 1;2 8 1;3 8 1;4 8 1;5 8 1;6 8 1;9 8 1;
5 9 1;6 9 1 ]; %propno defines the element property on each element.
2. a. assmk.m code
function K = assmk(K,Ke,Te,dof)
%**********************************
*****************
% AssmK:
% Assembles system matrix by
adding element
% matrix to existing global
matrix.
% Syntax:
% K = assmk(K,Ke,Te,dof)
% Input:
% K : global matrix.
% Ke : element matrix.
% Te : element topology vector.
% dof: degrees of freedom per
node.
% Output:
% K : updated global matrix.
%**********************************
****************
%%% Initial K Matrix defined in
topology.m %%%
%%%%%%Building Topology
Matrix%%%%%%
23
% Element Numbering Component %
a=zeros(rows(Te),2*(cols(Te)-1));
for j=1:(cols(Te)-1);
if Te(1,j)==1
a(1,((2*j)-1):2*j)=[1 2];
else
a(1,((2*j)-
1):2*j)=[((2*Te(1,j))-1)
(2*Te(1,j))];
end
end
% Element Topology Matrix %
ae1=zeros((dof*2),cols(K));
ae2=ones((dof*2),cols(K));
%%%%%%Building Stiffness
Matrix%%%%%%
% Assembling Topology Matrix for
Stiffness Matrix Calculation
for i=1:cols(a)
ae1(i,a(i))=ae1(i,a(i))+ae2(i,a(i))
;
end
% Assembling Stiffness Matrix %
K=K+(ae1'*Ke*ae1);
b. calculate global stiffness matrix
c. write setbc.m
function [K] = setbc(K,C,dof)
%**********************************
*****************
% SetBC:
% Syntax:
% [K] = setbc(K,C,dof)
% Input:
% K : original global
stiffness matrix.
% C : constraint matrix, C = [
node1 dof1 u1
%
node2 dof2 ...].
% or for dof=1, C = [
node1 u1
%
node2 ...].
% dof : number of dof pr. node.
% Output:
% K : new global stiffness
matrix.
%**********************************
*****************
%%% Define Global Number of Nodes
Based on C Matrix %%%
%%% zp = [(Global Node Number)
(Displacement)] %%%
zp=zeros(rows(C),(cols(C)-1));
for i=1:rows(C)
zp(i,1)=((dof*C(i,1))-
dof+C(i,2));
zp(i,2)=C(i,3);
end
%%% Define K Matrix Unreduced
Dimension %%%
for i=1:rows(zp);
K(zp(i,1),:)=K(zp(i,1),:)*zp(i,2);
K(:,zp(i,1))=K(:,zp(i,1))*zp(i,2);
end
%%% Define K Matrix Reduced
Dimension %%%
% Define Retained Node %
in=1:(rows(K));
ns=zeros(rows(C),(rows(K)));
for i=1:rows(zp);
for j=1:(rows(K));
if in(j)==zp(i)
ns(i,j)=in(j);
else
ns(i,j)=0;
end
end
end
ns=sum(ns);
fn=in-ns;
fn=fn(fn~=0);
% Define Reduced Dimension
Stiffness Matrix %
Kt=zeros(size(fn,2));
for i=1:size(fn,2);
24
for j=1:size(fn,2);
Kt(i,j)=K(fn(i),fn(j));
end
end
K=Kt
d. find the diplacements (assumed force with magnitude 10 in node 2 (x-dir)
10.2. DNV-GL Rules Calculation Sheet
10.3. Parametric Modeling Script
/input,parameter,inp
!MATERIAL MODEL
/PREP7
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,EX,1,,200000000000
MPDATA,PRXY,1,,0.3
MPDATA,DENS,1,,7850
NUMSTR,KP,1001
K,,0,0,0
K,,l_plate,0,0
K,,l_plate,b_plate,0
K,,0,b_plate,0
NUMSTR,AREA,1001
A,1001,1002,1003,1004
ASEL,S,AREA,,1001,1999,,,
CM,PLATEDUMMY,AREA
ASEL,ALL
NUMSTR,KP,2001
*if,n_tbeam,ge,1,then
*Do,i,1,n_stiff
K,,0,i_stiff+((i-1)*s_stiff),h_stiff
K,,0,i_stiff+((i-1)*s_stiff),0
*Do,j,1,n_tbeam
t0 (mm) 5.5
k 0.02
f1 1 (normal steel)
tk (mm) 1.5 (corrosion addition)
t (mm) 12.8826
Plating
a 0.8 (assumed : weather deck elsewhere)
ks 2 (assumed : Between 0.2L and 0.7L from AP)
Cw (Wave Coeff) 10.73577812 (300<=L<=350)
f 8.588622492 (Vertical distance from the waterline to the top)
Kf 8.2 (Smallest between Draft and f)
V/sqrt(L) 1.632632246
pl 31.00365591
y (m) 8.0775 (assumed : minimum, cause don't know load point)
z (m) 8.2 (assumed : maximum , cause don't know load point)
pdp (kN/m2) 41.1654535
h0 (m) 3 (assumed distance from waterline to deck with draft T)
p1 (kN/m2) 22.3723628
g0 (m/s2) 9.81
kv 0.7 (assumed between 0.3L and 0.6L from A.P.)
Cv 0.2
Cvi 1.632632246
a0 0.436026787
av (m/s2) 4.217177388
rho water (kg/m3) 1025
Water height (m) 1
pwater (ton/m2) 1.025
phuman (ton/m2) 0.014777778
q (ton/m2) 1.039777778
p2 (kN/m2) 12.39268367
Design Load
l (m) 2 (stiffener span, considering the clamped sect is intersect tbar-stiff)
q (kN/m2) 12.39268
N Longitud 9
Spacing 0.45 (assumed the spacing between longitudinal is equal)
M (kNm) 11.15342
yield (Mpa) 235
tkw 1.5 mm
wk 1.09
Z 51.73286 cm3
k 0.5
tk 1.5 mm
t 6.5 mm
Longitudinal (stiffener)
l (m) 3
q (kN/m2) 12.39268
N Longitud 5
s (m) 1.5
M (kNm) 83.65061
yield (Mpa) 235
tkw 1.5 mm
tkf 1.5 mm
wk 1.15
Z 409.3541 cm^3
k 5.8826 mm
tk 1.55 mm
t 12.4326 mm
Transversal
25
K,,i_tbeam+((j-1)*s_tbeam),i_stiff+((i-
1)*s_stiff),h_stiff
K,,i_tbeam+((j-1)*s_tbeam),i_stiff+((i-
1)*s_stiff),0
*enddo
K,,l_plate,i_stiff+((i-1)*s_stiff),h_stiff
K,,l_plate,i_stiff+((i-1)*s_stiff),0
*enddo
*else
*Do,i,1,n_stiff
K,,0,i_stiff+((i-1)*s_stiff),h_stiff
K,,0,i_stiff+((i-1)*s_stiff),0
K,,l_plate,i_stiff+((i-1)*s_stiff),h_stiff
K,,l_plate,i_stiff+((i-1)*s_stiff),0
*enddo
*endif
NUMSTR,AREA,2001
*if,n_tbeam,ge,1,then
*Do,i,1,n_stiff
*Do,j,1,n_tbeam+1
A,2000+(2*j-1)+((i-
1)*((2*n_tbeam)+4)),2001+(2*j-1)+((i-
1)*((2*n_tbeam)+4)),2003+(2*j-1)+((i-
1)*((2*n_tbeam)+4)),2002+(2*j-1)+((i-
1)*((2*n_tbeam)+4))
*enddo
*enddo
*else
*Do,i,1,n_stiff
A,2000+((4*i)-3),2001+((4*i)-3),2003+((4*i)-
3),2002+((4*i)-3)
*enddo
*endif
ASEL,S,AREA,,2001,2999,,,
CM,STIFF,AREA
ASEL,ALL
NUMSTR,KP,3001
*if,n_stiff,eq,1,then
*Do,i,1,n_tbeam
K,,i_tbeam+((i-1)*s_tbeam),0,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),0,0
K,,i_tbeam+((i-1)*s_tbeam),i_stiff,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),i_stiff,0
K,,i_tbeam+((i-1)*s_tbeam),b_plate,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),b_plate,0
*enddo
*else
*Do,i,1,n_tbeam
K,,i_tbeam+((i-1)*s_tbeam),0,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),0,0
K,,i_tbeam+((i-1)*s_tbeam),b_plate,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),b_plate,0
*enddo
*endif
NUMSTR,KP,4001
*Do,i,1,n_tbeam
K,,i_tbeam+((i-1)*s_tbeam)-
(f_tbeam/2),b_plate,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam)-
(f_tbeam/2),0,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),b_plate,h_tbeam
K,,i_tbeam+((i-1)*s_tbeam),0,h_tbeam
K,,i_tbeam+((i-
1)*s_tbeam)+(f_tbeam/2),b_plate,h_tbeam
K,,i_tbeam+((i-
1)*s_tbeam)+(f_tbeam/2),0,h_tbeam
*enddo
NUMSTR,AREA,3001
*If,n_stiff,gt,1,then
*Do,i,1,n_tbeam
A,3000+((4*i)-3),3001+((4*i)-
3),2002+(2*i),2001+(2*i),2001+(2*i)+((n_stif
f-1)*((2*n_tbeam)+4)),2002+(2*i)+((n_stiff-
1)*((2*n_tbeam)+4)),3003+((4*i)-
3),3002+((4*i)-3)
*enddo
*elseif,n_stiff,eq,1,then
*Do,i,1,n_tbeam
A,2995+(6*i),2996+(6*i),2998+(6*i),2997+(6
*i)
A,2997+(6*i),2998+(6*i),3000+(6*i),2999+(6
*i)
*enddo
*else
*Do,i,1,n_tbeam
A,3000+((4*i)-3),3001+((4*i)-3),3003+((4*i)-
3),3002+((4*i)-3)
*enddo
*endif
*if,n_stiff,gt,1,then
NUMSTR,AREA,5001
*Do,i,1,n_tbeam
A,2001+(2*i),2002+(2*i),2002+(2*i)+((n_stiff
-1)*((2*n_tbeam)+4)),2001+(2*i)+((n_stiff-
1)*((2*n_tbeam)+4))
*enddo
*endif
NUMSTR,AREA,4001
*Do,i,1,n_tbeam
A,3995+(6*i),3996+(6*i),3998+(6*i),3997+(6
*i)
A,3997+(6*i),3998+(6*i),4000+(6*i),3999+(6
*i)
*enddo
ASEL,S,AREA,,3001,3999,,,
CM,TBASE,AREA
ASEL,ALL
ASEL,S,AREA,,4001,4999,,,
CM,TTOP,AREA
ASEL,ALL
ASEL,S,AREA,,5001,5999,,,
CM,TBASECUT,AREA
ASEL,ALL
*if,n_stiff,GT,2,then
NUMSTR,AREA,6001
ASBA,TBASECUT,STIFF,,DELETE,KEEP
ASEL,S,AREA,,6001,6999,,,
CM,TBASECUTN,AREA
*elseif,n_stiff,EQ,0,then
ASEL,S,AREA,,3001,3999,,,
CM,TBASECUTN,AREA
*else
ASEL,S,AREA,,5001,5999,,,
CM,TBASECUTN,AREA
*endif
CMGRP,TBASEN,TBASE,TBASECUTN
ASEL,ALL
CMGRP,VERT,STIFF,TBASEN
NUMSTR,AREA,7001
*if,n_stiff,GT,0,and,n_tbeam,GT,0,then
ASBA,PLATEDUMMY,VERT,,DELETE,KE
EP
ASEL,S,AREA,,7001,7999,,,
CM,PLATE,AREA
ASEL,ALL
NUMMRG,ALL
*else
ASEL,S,AREA,,7001,7999,,,
CM,PLATE,AREA
ASEL,ALL
NUMMRG,ALL
*endif
SECT,1,SHELL,,PLATE
SECDATA,t_plate,1,0.0,3
SECOFFSET,MID
SECCONTROL,,,, , , ,
SECT,2,SHELL,,TB-W
SECDATA,t_tbase,1,0.0,3
SECOFFSET,MID
SECCONTROL,,,, , , ,
SECT,3,SHELL,,TB-F
SECDATA,t_ttop,1,0.0,3
SECOFFSET,MID
SECCONTROL,,,, , , ,
SECT,4,SHELL,,HP-W
SECDATA,t_stiff,1,0.0,3
SECOFFSET,MID
SECCONTROL,,,, , , ,
SECTYPE,5,BEAM,RECT,HP-F,0
SECOFFSET,USER,(b_bulb/2)+(t_stiff/2),h_
bulb/2
SECDATA,b_bulb,h_bulb,0,0,0,0,0,0,0,0,0,0
26
ET,1,SHELL181
ET,2,SHELL181
ET,3,BEAM188
CMSEL,S,PLATE
AESIZE,PLATE,e_plate
CMSEL,S,TBASEN
AESIZE,TBASEN,e_tbase
CMSEL,S,TTOP
AESIZE,TTOP,e_ttop
CMSEL,S,STIFF
AESIZE,STIFF,e_stiff
LSEL,S,LOC,Z,h_stiff-0.01,h_stiff+0.01
LSEL,R,LOC,Y,i_stiff,i_stiff+((n_stiff-
1)*s_stiff)
*do,i,1,n_tbeam
LSEL,U,LOC,X,i_tbeam+((i-1)*s_tbeam)
*enddo
CM,BULB,LINE
LESIZE,BULB,e_bulb
!PLATE MESH SELECTION
TYPE,1
MAT,1
REAL,
ESYS,0
SECNUM,1
CHKMSH,'AREA'
CMSEL,S,PLATE
AMESH,PLATE
ESLA,S
CM,PLATEE,ELEM
ALLSEL
!T-BEAM WEB MESH SELECTION
TYPE,2
MAT,1
REAL,
ESYS,0
SECNUM,2
CHKMSH,'AREA'
CMSEL,S,TBASEN
AMESH,TBASEN
ESLA,S
CM,TBASENE,ELEM
ALLSEL
!T-BEAM FLANGE MESH SELECTION
TYPE,1
MAT,1
REAL,
ESYS,0
SECNUM,3
CHKMSH,'AREA'
CMSEL,S,TTOP
AMESH,TTOP
ESLA,S
CM,TTOPE,ELEM
ALLSEL
NUMMRG,NODE
!STIFFENER WEB MESH SELECTION
TYPE,2
MAT,1
REAL,
ESYS,0
SECNUM,4
CHKMSH,'AREA'
CMSEL,S,STIFF
AMESH,STIFF
ESLA,S
CM,STIFFE,ELEM
ALLSEL
!STIFFENER FLANGE MESH SELECTION
*if,n_stiff,GT,1,then
TYPE,3
MAT,1
REAL,
ESYS,0
SECNUM,5
CMSEL,S,BULB
LMESH,BULB
ESLL,S
CM,BULBE,ELEM
ALLSEL
*else
ALLSEL
*endif
/PREP7
NSEL,S,LOC,Y,0
D,ALL,,0,,,,UX,UY,UZ,ROTX,ROTY,ROTZ
NSEL,ALL
/PREP7
ALLSEL
SFA,PLATE,1,PRES,press
ACEL,,,9.81
Fk,2004,FZ,force1
Fk,2022,FZ,force2
Fk,2038,FZ,force3
/SOLU
SOLVE,,
!POST PROCESSOR
/POST1
/EFACET,1
PLNSOL,S,EQV,0,1.0
*GET,max_stress,PLNSOL,0,MAX,,,,
*cfopen,out_stress.inp
*vwrite,max_stress
(f15.2)
*cfclos
PLNSOL,U,Z,0,1.0
*GET,max_disp,PLNSOL,0,MAX,,,,
*cfopen,out_disp.inp
*vwrite,max_disp
(f10.5)
*cfclos
10.4. Particle Swarm Optimization Matlab Script
StructOpt.m
function StructOpt
% How to get initial population?
% 1 = random or 2 = read from file.
source = 1; %source
% Number of continous variables
continous_variables = 0;
% Upper and lower bound for continous
variables
LowerB = [];
UpperB = [];
% PSO parameters.
Algorithm = [5 -1 10 1.4 0.8 3 2 1];
% PSO-parameter
% swarm_size = 5;
% feasibles_initial_population = -1;
% Feasible designs in intial population (-1
dont want to use).
% generations = 10;
% Calculation rounds.
% inertia = 1.4;
% Intertia at start.
% beta = 0.8;
% Factor for dynamic inertia reduction
% beta_k = 3;
% Number of rounds when it should improve,
otherwise make inertia smaller
% penalty_factor = 2;
% Penalty factor for violated constraints
% print_results = 1;
% 0 not printed, 1 is printed (results)
27
% Set of discrete variables
Feasible_Set=[];
nvariables=3;
Feasible_Set=inf(nvariables,31);
% % Plate Thickness
Feasible_Set(1,1:21)=[0.008:0.0001:0.01];
% % T-Bar Web Thickness
Feasible_Set(2,1:11)=[0.006:0.001:0.016];
% % T-Bar Flange Thickness
Feasible_Set(3,1:11)=[0.006:0.001:0.016];
% Carry out the optimization.
if source == 1
[best_f,best_x,best_g,history_f,history_x,hi
story_g,iterations,...
particle,particle_history,t_history]
=
PSO('particle_fun',continous_variables,Feasi
ble_Set,LowerB,UpperB,Algorithm,[]);
elseif source == 2
[best_f,best_x,best_g,history_f,history_x,hi
story_g,iterations,...
particle,particle_history,t_history]
=
PSO('particle_fun',continous_variables,Feasi
ble_Set,LowerB,UpperB,Algorithm,'initial_fea
sible_population.txt');
end
%Best feasible particletion
format compact;
disp(' ')
disp(' ')
disp('Results:')
best_f,best_x,best_g
disp(' ')
disp(' ')
particle_fun.m
function [f,g] = particle_fun(Xxx)
%parameters
t_plate=Xxx(1);
t_tbase=Xxx(2);
t_ttop=Xxx(3);
fid=fopen('parameter2.inp','w')
fprintf(fid,'t_plate=%0.4f\n',t_plate);
fprintf(fid,'t_tbase=%0.4f\n',t_tbase);
fprintf(fid,'t_ttop=%0.4f\n',t_ttop);
fclose(fid);
!modeling.bat
fid2=fopen('out_stress.inp','r')
line=fgetl(fid2);
stress_max=str2num(line);
fclose(fid2);
yield=250000000 ;
objective=(l_plate*b_plate*t_plate*rho_steel)+(n_tbeam*((h_tbeam*t_tbase*b_plate*rho_steel)+(f_tb
eam*t_ttop*b_plate*rho_steel)))+(n_stiff*((h_stiff*t_stiff*l_plate*rho_steel)+(b_bulb*h_bulb*l_pl
ate*rho_steel)));
constraint=stress_max/yield-1;
% objective and constraint function value
f=objective; %Objective
g=constraint; %Constraint feasible -1 to 0 an infeasible is from >0 to 1