Aerodynamic Shape Optimization using Vortex Particle Simulations

Embed Size (px)

Citation preview

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    1/104

    Master Thesis

    Aerodynamic Shape Optimization usingVortex Particle Simulations

    Author:

    David Gutierrez Rivera

    Supervisor:

    Prof. Guido Morgenthal

    M.Sc. Khaled Ibrahim

    A thesis submitted in fulfillment of the requirements

    for the degree of Master of Science

    in the

    Natural Hazards and Risks in Structural Engineering

    Faculty of Civil Engineering

    Institute of Structural Engineering

    Chair of Modelling and Simulation of Structures

    Germany, 25.03.2014

    mailto:[email protected]:[email protected]://www.morgenthal.org/http://www.morgenthal.org/mailto:[email protected]:[email protected]://www.uni-weimar.de/en/civil-engineering/studies/%20degree-programmes-offered-by-the-faculty-of-civil-engineering/%20natural-hazards-and-risks-in-structural-engineering-master-of-science/http://www.uni-weimar.de/en/civil-engineering/start/http://www.uni-weimar.de/cms/bauing/organisation/iki.htmlhttp://www.uni-weimar.de/Bauing/MSK/-en.htmlhttp://www.uni-weimar.de/en/civil-engineering/studies/%20degree-programmes-offered-by-the-faculty-of-civil-engineering/%20natural-hazards-and-risks-in-structural-engineering-master-of-science/http://www.uni-weimar.de/Bauing/MSK/-en.htmlhttp://www.uni-weimar.de/cms/bauing/organisation/iki.htmlhttp://www.uni-weimar.de/en/civil-engineering/start/http://www.uni-weimar.de/en/civil-engineering/studies/%20degree-programmes-offered-by-the-faculty-of-civil-engineering/%20natural-hazards-and-risks-in-structural-engineering-master-of-science/mailto:[email protected]://www.morgenthal.org/mailto:[email protected]://www.uni-weimar.de/
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    2/104

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    3/104

    Optimization consists on finding the best possible solution to a problem, which usually

    means finding the minima or maxima of functions in a feasible region. The need of solving

    optimization problems is present in many diverse areas of science and engineering. The

    purpose of this Thesis is to pursue Shape Optimization in the area of Wind Engineering.A Computational Fluid Dynamic (CFD) solver based on the Vortex Particle Method

    (VPM) was used for the wind simulation. Automatization of the optimization process

    was performed by parameterization of the CFD model, thus generating an optimization

    model. In the end, optimization algorithms were used to search for the optimum values

    of the model parameters.

    For this Masters Thesis, development of the optimization tool is required, focusing on

    the following main tasks:

    1. Features and Capabilities of the Optimizer:

    (a) Pre-Run, Run-Time and Over-Time Optimization Procedures

    (b) Multi-Objective Optimization Capability

    (c) Parallel Computing Functionality

    2. User-friendly interface, including:

    (a) Selection of Variables and Objectives

    (b) Graphical User Interface (GUI) with Model Geometry Visualization

    (c) Support for Multi-Sliced Models

    3. Delivery of the Optimization Tool code should:

    (a) Adhere to a standard coding style for ease of maintenance

    (b) Undergo Testing and Debugging with Benchmarking Examples

    (c) Contain User and Technical Documentation

    4. Finally, provide a Theoretical Background, with relevant future research ideas and

    developments

    All results (software code, input files, scripts, results) shall be comprehensively included

    in the thesis and its appendices. A softcopy (DVD) shall be included and a summary of

    the thesis is to be presented on a poster.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    4/104

    Declaration

    I,David Gutierrez Rivera, declare that this thesis titled, Aerodynamic Shape Op-

    timization using Vortex Particle Simulations and the work presented in it are my own.

    I confirm that:

    This work was done entirely while in candidature for the degree Master of Science

    in the Natural Hazards and Risks in Structural Engineering (NHRE).

    Where I have consulted or quoted the published work of others, this is always

    clearly stated.

    I have acknowledged all individuals who have contributed to this work.

    I claim no responsiblity for the persistency or accuracy of URLs for external or third-

    party internet websites referred to in this publication, and can not guarantee that any

    content on such websites is, or will remain, accurate or appropriate.

    Signed:

    Date:

    mailto:[email protected]:[email protected]:[email protected]:[email protected]
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    5/104

    BAUHAUS-UNIVERSITAT WEIMAR

    Abstract

    Faculty of Civil Engineering

    Institute of Structural Engineering

    Chair of Modelling and Simulation of Structures

    Master of Science

    Aerodynamic Shape Optimization using Vortex Particle Simulations

    Optimization consists on finding the best possible solution to a problem, which usually

    means finding the minima or maxima of functions in a feasible region. The need of solving

    optimization problems is present in many diverse areas of science and engineering. The

    purpose of this Thesis is to pursue Shape Optimization in the area of Wind Engineering.

    A Computational Fluid Dynamic (CFD) solver based on the Vortex Particle Method

    (VPM) was used for the wind simulation. Automatization of the optimization process

    was performed by parameterization of the CFD model, thus generating an optimization

    model. In the end, optimization algorithms were used to search for the optimum values

    of the model parameters.

    http://http//WWW.UNI-WEIMAR.DE/http://http//WWW.UNI-WEIMAR.DE/http://http//WWW.UNI-WEIMAR.DE/http://www.uni-weimar.de/en/civil-engineering/start/http://www.uni-weimar.de/cms/bauing/organisation/iki.htmlhttp://www.uni-weimar.de/Bauing/MSK/-en.htmlhttp://www.uni-weimar.de/Bauing/MSK/-en.htmlhttp://www.uni-weimar.de/cms/bauing/organisation/iki.htmlhttp://www.uni-weimar.de/en/civil-engineering/start/http://http//WWW.UNI-WEIMAR.DE/
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    6/104

    The pessimist complains about the wind; the optimist expects it to change;

    the realist adjusts the sails.

    William Arthur Ward

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    7/104

    Acknowledgments

    I want to thank my supervisorProf. Guido Morgenthalfor the opportunity of making

    this thesis; his guidance through the process was invaluable. His work withVXFlowis

    a core component of this thesis.

    I will also like to thank M.Sc. Khaled Ibrahim for his enormous dedication to this

    thesis. His knowledge on the area of computer sciences has contributed considerably to

    the improvement of this work.

    Special thanks go to M.Sc. Benjamin Bendig for his help in building the simulationmodels. His work on theVXFlowGPU version of the program has significantly reduced

    simulation time. Also his work with VXviz, a VXFlowvisualization program, has been

    of great help.

    Many thanks to Shanmugam Narayanan for his help in debugging the program. His

    interest and involvement on the use of the program are greatly appreciated.

    http://www.morgenthal.org/http://www.morgenthal.org/http://www.morgenthal.org/vxflowmailto:[email protected]:[email protected]://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflowmailto:[email protected]://www.morgenthal.org/vxflowhttp://www.morgenthal.org/
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    8/104

    To my family . . .

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    9/104

    Contents

    Proposal i

    Declaration iii

    Abstract iv

    Acknowledgments vi

    Contents viii

    List of Figures xi

    List of Tables xii

    Acronyms xiii

    1 Introduction 1

    1.1 Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    1.2 The Vortex Particle Method . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    1.3 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    2 Optimization Algorithms 5

    2.1 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Local Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    2.2.1 Golden Section Algorithm . . . . . . . . . . . . . . . . . . . . . . . 8

    2.2.2 Nelder-Mead Simplex Algorithm . . . . . . . . . . . . . . . . . . . 10

    2.3 Gradinet-based Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    2.4 Global Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    2.4.1 Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    3 Shape Optimization 14

    3.1 Black-Box Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    3.2 Parametrization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    3.3 Objective Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    viii

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    10/104

    Contents ix

    4 VXFlow 17

    4.1 Input File (*.in13) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    4.1.1 Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    4.2 Output File (*.o3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    4.3 Other Output Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    5 OptiFlow 22

    5.1 CFD Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    5.2 Parameter File (*.opt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    5.3 Objective File (*.m) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    5.4 Pre-Run Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    5.5 Run-Time Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    6 Optimization ModelsExamples 27

    6.1 M4 Neath Viaduct Wind Shield . . . . . . . . . . . . . . . . . . . . . . . . 28

    6.2 Vertical-Axis Wind Turbine (VAWT). . . . . . . . . . . . . . . . . . . . . 33

    7 Final Remarks 40

    7.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

    7.2 Future Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    Bibliography 42

    OptiFlow User Guide 45

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    11/104

    List of Figures

    1.1 Optimization Programmatic View . . . . . . . . . . . . . . . . . . . . . . 2

    2.1 Local vs Global Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    2.2 Convex vs non-Convex Function . . . . . . . . . . . . . . . . . . . . . . . 7

    2.3 Golden Section Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2.4 Golden Ratio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2.5 Nelder-Mead Simplex Algorithm . . . . . . . . . . . . . . . . . . . . . . . 10

    2.6 Types of Simplex Movements . . . . . . . . . . . . . . . . . . . . . . . . . 10

    3.1 Black-Box process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    3.2 Noisy Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

    4.1 VXFlow Black-Box process . . . . . . . . . . . . . . . . . . . . . . . . . . 17

    5.1 Parameter File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    5.2 OptiFlow pre-run procedure . . . . . . . . . . . . . . . . . . . . . . . . . . 26

    5.3 OptiFlow run-time procedure . . . . . . . . . . . . . . . . . . . . . . . . . 26

    6.1 M4 Neath Viaduct Wind Shield . . . . . . . . . . . . . . . . . . . . . . . . 28

    6.2 Wind Shield. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    6.3 Wind Shield pre-run Results. . . . . . . . . . . . . . . . . . . . . . . . . . 31

    6.4 run-time Wind Shield Results . . . . . . . . . . . . . . . . . . . . . . . . . 31

    x

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    12/104

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    13/104

    List of Tables

    2.1 Golden Section Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

    2.2 Nelder-Mead Simplex Algorithm . . . . . . . . . . . . . . . . . . . . . . . 11

    2.3 General Gradient-based Algorithm . . . . . . . . . . . . . . . . . . . . . . 12

    4.1 VXFlow Input File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    4.2 VXFlow Geometry Definition . . . . . . . . . . . . . . . . . . . . . . . . . 19

    4.4 VXFlow Other Output Files. . . . . . . . . . . . . . . . . . . . . . . . . . 20

    4.3 VXFlow Output File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

    5.1 VXFLOW Objective Functions . . . . . . . . . . . . . . . . . . . . . . . . 25

    6.1 Wind Shield Results Summary . . . . . . . . . . . . . . . . . . . . . . . . 32

    6.2 Savonius Results Summary . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    xii

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    14/104

    Acronyms

    GUI Graphical UserInterface

    GUIDE Graphical UserInterfaceDevelopment Environment

    CPU CentralProcessing Unit

    GPU Graphical Processing Unit

    CFD Computational FluidDynamics

    VPM Vortex Particle Method

    LO Local Optimization

    GO Global Optimization

    LSM Line-Search Method

    TRM Trust-RegionMethod

    GA GeneticAlgorithm

    BBO Black-BoxOptimization

    MDO Multi-Disciplinary Optimization

    xiii

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    15/104

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    16/104

    Chapter 1

    Introduction

    The main goal of this thesis is to achieve Aerodynamic Shape Optimization by the use of

    CFD Simulations based on the Vortex Particle Method (VPM).VXFlow[1], a numerical

    flow solver developed byProf. Guido Morgenthalas part of his PhD Dissertation, was

    the program chosen for this thesis. In this case the objective function has no analytical

    solution and it is solved numerically, this type of objective functions are known as Black-

    Box Functions. Optimization using such functions is know as Black-Box Optimization

    (BBO) or Simulation-based Optimization.

    For this purpose OptiFlow[2] was developed, a MATLAB [3] program with a Graph-

    ical User Interface (GUI) that interacts with VXFlow, which works as the Black-Box

    Function. WithOptiFlow a diverse array of operations relevant to Optimization can

    be done, such as Data Gathering, Fitting and Surveying, Plotting, Parametrization and

    Automatization, Remote Server Access and running of Optimization Algorithms.

    The contents of this thesis are organized starting with a small introduction into opti-

    mization and the basics of the Vortex Particle Method as the numerical approach used

    for wind simulation. Then in Chapter 2 theory surrounding optimization algorithms,

    mainly the difference between Local and Global Optimization is explored. In Chapter3

    Shape Optimization and Black-Box Optimization (3.1) are the main topics, and present

    the problems involving these kind of optimizations and the appropriate steps to take

    in order to solve them. In Chapter4concerns VXFlow, which is the CFD program of

    choice for the wind simulation and the Black-Box Function. Chapter5is aboutOpti-

    Flowwhich is the program developed for this Master Thesis, explaining its main features

    and how it works. Then in Chapter 6 some optimization examples are presented and

    their results. Finally, in Chapter7 some concluding remarks are made about the out-

    come of this research and some insights are given on future research ideas and scientifictrends in this area.

    1

    http://www.morgenthal.org/vxflowhttp://www.morgenthal.org/http://www.morgenthal.org/https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.matlab.com/http://www.morgenthal.org/vxflowhttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/vxflowhttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/vxflowhttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/vxflowhttp://www.matlab.com/https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/http://www.morgenthal.org/vxflow
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    17/104

    Chapter 1. Introduction 2

    1.1 Optimization

    Generally speaking, optimization consists in the process of finding the best solution to a

    given problem, from a given set of available and feasible solutions. Examples of this canbe, finding the lightest superstructure for a bridge, decide which is the most profitable

    business plan, or it could be to obtain the best geometrical shape that minimizes wind-

    induced pressure on a vehicle. These problems usually involve minimizing or maximizing

    something within the problem, and thats what optimization basically is, to obtain the

    best possible solution to a problem.

    Mathematically, the optimization problem can be expressed by, [4] [5]

    minimizex

    f(x)

    subject to

    gi(x) 0, i= 1, . . . , mhi(x) = 0, i= 1, . . . , n

    (1.1)

    where,

    f(x) : n , is the objective function to be minimizedgi(x) 0, are inequality constraints

    hi(x) = 0, are equality constraints

    This optimization problem statement is formulated for minimization, but the same ap-

    plies also for maximization problems.

    Programmatically, optimization can be viewed as a whileloop, [6]

    Figure 1.1: Optimization Programmatic View

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    18/104

    Chapter 1. Introduction 3

    1.2 The Vortex Particle Method

    Vortex Methods are based on the knowledge that in a high-Reynolds number flow there

    are three distinct regions: the viscous, rotational boundary layer, the wake and an invis-cid outer region which is usually irrotational. They rest on the simplicity of a vorticity

    description of the fundamental Navier-Stokes equations for inviscid incompressible flow.

    The simulation of such flows is reduced to tracking vorticity-carrying particles in a La-

    grangian manner [7].

    Vortex Methods have attracted considerable attention in recent years mainly for applica-

    tions in Bluff Body Aerodynamics. This is due to very good results which can at least

    for 2D cases be obtained at a fraction of the computational cost of other numerical

    methods, e.g. Finite Volume or Finite Element methods.

    The grid-free Vortex Particle MethodVXFlowis utilised for this Thesis. It is used to

    discretize the Navier-Stokes equations and to evolve the fluid flow in time. The main

    features of the code are as follows [1]:

    Utilisation of the Boundary Element Method for the enforcement of the no-penetration

    boundary condition on solid surfaces.

    Surface circulation discretisation by means of elements of linearly varying vorticity.

    Smooth Gaussian kernel for mutual vortex interactions.

    A fast P3M algorithm for the computation of the velocity field by Morgen- thal

    and Walther based on the utilisation of Fast Fourier Transforms for the solution of

    the underlying Poisson equation and a local Particle-Particle correction algorithm.

    A partial particle remeshing strategy developed by Morgenthal and Walther

    The random walk method for diffusion modelling.

    http://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflow
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    19/104

    Chapter 1. Introduction 4

    1.3 Software

    A list of popular and readily available software used for solving optimization problems

    is presented here, along with a small description of each.

    MATLAB [3]: is a high-level language and interactive environment for numerical

    computation, visualization, and programming.

    TOMLAB [8]: is a powerful optimization platform and modeling language for

    solving applied optimization problems in MATLAB.

    OpenOpt [9]: Free Python-written numerical optimization software suite.

    NOMAD [10]: is a C++ software designed to solve problems of Black-box Opti-

    mization. The minimal requirement from the user is to provide the objective and

    constraints.

    CONDOR [11]: Algorithm using parallel, direct and constrained optimization

    for high-computing-load objective functions.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    20/104

    Chapter 2

    Optimization Algorithms

    In this chapter we will make a brief overview on the most commonly known optimization

    algorithms. We first talk about the different types of classification we can have for an

    optimization problem, and the algorithms that can be used for solving them. We focus

    our efforts in the classification of local and global algorithms and discuss some of the

    algorithms that exist in these areas in further detail.

    2.1 Classification

    Optimization problems can be classified by linearity, modality, constraints and objec-

    tives, in which cases they can be either linear or nonlinear, uni-modal or multi-modal,

    constrained or unconstrained and single or multi-objective optimization, listed respec-

    tively. We already noted the importance of understanding each type of optimization, so

    we will introduce them briefly here and broaden on the subject on the following chapters.

    Linear Optimization (LO), also known as Linear Programming, is an optimization prob-

    lem were the objective function is a linear function and all of its constraints are eitherlinear inequalities or linear equalities. Linear Optimization is of little interest to us,

    this is because very few problems in engineering can be expressed adequately in such a

    limited form; nevertheless it is a great starting point for an introduction to optimiza-

    tion and also to train the ability to intuitively formulate optimization problems of any

    kind. On the other hand, Nonlinear Optimization (NLO) deals with either a nonlinear

    objective function and/or nonlinear constraints. This will be our main focus of study,

    and they are many powerful and elegant iterative algorithms which deal with this kind

    of optimization problems.

    5

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    21/104

    Chapter 2. Optimization Algorithms 6

    Optimization problems can be constrained or unconstrained, either the objective func-

    tion or its constraints can bound the domain in which the solution can be found. The

    constraints can be systems of inequalities or equalities equations. The amount of ob-

    jective variables and constraints in the optimization problem can further classify theproblem as small-scale to large-scale optimization; an example of a small-scale optimiza-

    tion would be to find the optimum pier size of bridge and in the other hand a large-scale

    optimization could be the optimization of the whole bridge components, piers, cables,

    slabs, beams, abutments, etc.

    We can also have multiple objective functions on an optimization problem; for example

    one can represent the drag force on bridge cross-section and another function can repre-

    sent the tension force on a cable. Here we might want to minimize both the drag force

    and the tension force, thus we have two objectives. In this kind of problem finding asolution that gives us a minimum for both functions is usually impossible, so we usually

    have multiple solutions, for our example it could be a solution with the minimum drag

    force, another solution with a minimum tension force on the cable, or we could have

    compromise solutions were a compromise is established between the objective functions,

    to obtain the most efficient solution.

    Modality in an optimization problem refers to the amount of possible local solutions that

    can be found for the whole domain. Speaking of minimization, a uni-modal problem

    will only have one minimum in the whole domain, thus having only one solution, thisproblems are know as Local Optimization (LO). A bi-modal problem will have two local

    minimums, and higher order modal problems will have more. The local minimums may

    be of interest to us, but it is usually of greater interest to us the global minimum of

    the objective function. The subfield that studies such problems is known as Global

    Optimization (GO). There are several mathematical algorithms that can solve such

    systems but they are usuallyheuristicin nature, this means that they are methods that

    have shown good results with experience but provide no mathematical proof that they

    converge to a solution, they are non-deterministic.

    For more information check the references [4] [5][12] [13].

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    22/104

    Chapter 2. Optimization Algorithms 7

    2.2 Local Optimization

    This branch of optimization is the one dealing on finding the optimum in a defined

    region where it is known beforehand that only one optimum exists. This is the branch ofoptimization theory that is most developed with well founded theories and mathematical

    proofs. It is therefore the one with the fastest algorithms for finding the optimum.

    Figure 2.1: Local vs Global Minimum

    An important special case of local optimization is the one know as convex optimization

    which is the one where all local solutions are global solutions.

    Figure 2.2: Convex vs non-Convex Function [14]

    When it comes to Local Optimization Algorithms we can basically have two main cate-

    gories for finding local minima, gradient-based algorithms and derivative-free (or direct-

    search) algorithms. Well proceed now to discuss some optimization algorithms, start-

    ing with the direct search methods, like the Golden-Section and Simplex (Nelder-Mead)

    Methods, which dont require any information about the gradient of the objective func-

    tion. After that well discuss the gradient dependant methods, like the Gradient Descent

    and Newton Algorithms.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    23/104

    Chapter 2. Optimization Algorithms 8

    2.2.1 Golden Section Algorithm

    Figure 2.3: Golden Section Algorithm

    This algorithm divides a given interval in

    which the minimum exists in three sec-tions using the golden ratio, this ratio

    is applied iteratively effectively narrowing

    the interval in which the minimum exists,

    until the minimum is found. This algo-

    rithm is the limit of the Fibonacci search

    for a large number of function evaluations.

    The Golden Ratio is:

    = a+b

    a =

    a

    b =

    1 + 52

    = 1.6180339887...

    Figure 2.4: Golden Ratio [15]

    This is adirect search method, a derivative-free search algorithm. The use of this search

    is restricted to unimodal functions, which means that the initial search interval [x0, x3]

    must contain the minimum, if this isnt the case the algorithm will converge to a localminimum in the interval. Also the function must be mono-variate, a function with only

    one variable. The main advantage of this algorithm is that function evaluations are

    halved, because the interval ratio is kept constant, therefore the previous step function

    value is used in the current step. [3] [13] [16]

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    24/104

    Chapter 2. Optimization Algorithms 9

    Algorithm

    1. Initialization: Determine interval [x0, x3] which contains the minimum

    Calculate intermediate points x1 and x2 using the golden ratio

    x1= a +c where,

    x2= a c c=

    5 12

    (x3 x0)

    Repeat While|x3 x0| > (a sufficiently small number)

    2. Evaluatef(x1) and f(x2)

    3. Narrow Search Interval

    If f(x1) f(x2) If f(x1)< f(x2)x0= x0 x0= x2

    x3= x1 x2= x1

    x1= x2 x3= x3

    x2= x3 c x1= x0+c

    If|x3 x0| Stop Iteration.

    xmin= x3+x0

    2

    fmin= f(xmin)

    Table 2.1: Golden Section Algorithm

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    25/104

    Chapter 2. Optimization Algorithms 10

    2.2.2 Nelder-Mead Simplex Algorithm

    Figure 2.5: Nelder-Mead Simplex Algorithm

    The idea of using simplexes for optimiza-

    tion was first explored by Dantzig for lin-ear programming. A simplex is a general-

    ization of the notion of a triangle or tetra-

    hedron to arbitrary dimensions. [17] [18]

    Here well focus our discussion on the

    nonlinear implementation of the simplex

    method developed by John Nelder and

    Roger Mead in 1965. This algorithm is

    a derivative-free method capable of min-imizing a multi-variable objective func-

    tion. [19]

    [20]

    This algorithm requires that an initial guess be provided to start searching for the

    minimum, from this an initial simplex is created. The algorithm evaluates the objective

    function at each vertices of the simplex and carries out a series of movements, which

    include: reflection, expansion, contraction and shrinkage. This movements shift and

    modify the original simplex updating and converging it to the minimum on each step.

    Figure 2.6: Types of Simplex Movements [21] [22]

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    26/104

    Chapter 2. Optimization Algorithms 11

    Algorithm

    input : the cost functionf : Rn R{xi}

    ni=0 an initial simplex

    output: x

    , a local minimum of the cost function f.begin

    k 0whileSTOP-CRIT and (k < kmax)do

    harg maxi

    f(xi)

    l arg mini

    f(xi)

    x (1 + )x xh

    where >0 is the reflection coefficientiff(x)< f(xl)then

    x (1 + )x x

    where >1 is the expansion coefficient

    iff(x

    )< f(xl)then

    xh x /* expansion

    else

    xh x /* reflection

    else iff(x)> f(xi),i=h theniff(x) f(xh)then

    xh x /* reflection

    x xh+ (1 )x

    where0 < f(xh)then

    xi xi+xl

    2 i 0, n /* multiple contraction

    else

    xh x /* contraction

    else

    xh x /* reflexion

    k k + 1

    return xl

    Table 2.2: Nelder-Mead Simplex Algorithm [13]

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    27/104

    Chapter 2. Optimization Algorithms 12

    2.3 Gradinet-based Algorithms

    When searching for the optimum they are two concepts which all of these methods share

    in common. These areSearch DirectionandStep Size. The way in which these two stepsare carried out inside the algorithm separates this category into to Line Search Methods

    and Trust-Region Methods. The main difference between these two methods is that

    line search methods first choose a step direction and then a step size while trust-region

    methods first choose a step size (the size of the trust region) and then a step direction.

    The generic steps taken by this kind of algorithms is:

    1. Initialize counteri= 0, and initial guess x0

    Repeat While (Convergence Criteria)

    2. Calculate Search Directionpi (step 3. for the TRM)

    3. Calculate Step Lengthi, to minimize h(i) =f(xi + ipi) (step 2. for the TRM)

    4. Set xi= xi+ipi, and i= i+ 1

    Until Convergence Criteria is Satisfied

    Table 2.3: General Gradient-based Algorithm [5]

    The actual methods differ from one another by how the Search Direction pi and the

    Step Length i are calculated. The calculation of the Step Length i is know as Line

    Search, which usually consists of an inner iterative loop.

    The most popular gradient-based optimization algorithms are:

    Newton

    Quasi-Newton

    Gradient Descent

    Conjugate Gradient

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    28/104

    Chapter 2. Optimization Algorithms 13

    2.4 Global Optimization

    Several approaches exist for performing Global Optimization, they can be classified in

    general terms as [23]:

    1. Deterministic Methods

    2. Stochastic Methods

    (a) Monte Carlo Simulations

    3. Heuristic Methods

    (a) Evolutionary Algorithms(b) Swarm-Intelligence

    (c) Neural-Networks

    2.4.1 Genetic Algorithm

    The genetic algorithm solves optimization problems by mimicking the principles of bi-

    ological evolution, repeatedly modifying a population of individual points using rules

    modeled on gene combinations in biological reproduction [3].

    Fundamental concepts involved on a Genetic Algorithm are:

    Fitness Function

    Mutation

    Crossover

    Selection

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    29/104

    Chapter 3

    Shape Optimization

    Shape Design is vital in the filed of Wind Engineering. We just need to take a look at the

    Tacoma Narrows Bridge Collapse[24] to see how important shape design can be. With

    the trends on materials engineering, lighter and slender structures are being built and

    this structures are usually very sensitive to wind loading, therefore it is very important

    for these structures to have aerodynamic shapes.

    Shape optimization has been used extensively in the areas of wind energy and aerospace

    engineering, in which shape design is critical for the efficiency and correct operation of

    the structure.

    Shape optimization consists on finding the optimal shape to minimize a certain objec-

    tive function, also known as cost function, while satisfying given constraints. This is in

    contrast to topology optimization, which is concerned with the optimization of compo-

    nents and parts of which the structure is made of, like the number of holes to use in a

    component or the floor layout in a building.

    Mathematically, a shape optimization problem can be posed as follows, [25]

    minimize

    f()

    subject to

    gi() 0, i= 1, . . . , mhi() = 0, i= 1, . . . , n

    (3.1)

    where,

    is a set of variable parameters that make up the geometry that we want to optimize.

    [6]

    14

    https://www.youtube.com/watch?v=qbOjxPCfaFkhttps://www.youtube.com/watch?v=qbOjxPCfaFk
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    30/104

    Chapter 3. Shape Optimization 15

    3.1 Black-Box Optimization

    Black-Box Functions, also know as costly or noisy functions, are functions which eval-

    uation usually involves running some external numerical code that solves systems ofdifferential equations. The optimization of this kind of functions is known also as expen-

    sive optimization, because of the high computational effort required for the evaluation

    of these functions. [26]

    Figure 3.1: Black-Box process [27]

    Black-Box processes are usually only known from their inputs and outputs, with little or

    no knowledge of how it works internally. Black-Box Functions can be originating from

    diverse sources, like the running of computer code, solution of system of Partial Dif-

    ferential Equations or even real-life experiments. The optimization involving this type

    of functions is usually known as Black-Box Optimization orSimulation-based Optimiza-

    tion. [28]

    Figure 3.2: Noisy Functions

    Another challenge that arises with Simulation-

    based Optimizations is the noisiness of

    our results. Derivate-based optimization

    algorithms are ill-suited for this type of

    problems, because calculation of deriva-

    tives most of the time is not possible.

    Some derivative-free methods are robust

    for small perturbations on the objective

    function, but with high noise levels these

    methods also fail and get trap in between

    these perturbations before finding the op-

    timum.[6]

    Stochastic Optimization is the field which addresses this problem. Some research is going

    into this field by adapting currently known methods into handling stochastic behavior

    on the objective function. Please check references [29] and [11] for some examples of

    research in this field.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    31/104

    Chapter 3. Shape Optimization 16

    3.2 Parametrization

    This is a fundamental step in performing Shape Optimization. It consists on the def-

    inition of variables in the geometric model that we wish to optimize. Traditionally inthe analysis process, all dimensions of a structure are kept constant in the geometrical

    numerical model. Now in order for us to perform simulation-based optimization we need

    to have parametrized dimensions, so instead of taking a constant value they now can

    be modified by the optimization routine, attaching it to the optimization process and

    making it converge to the optimum shape.

    Please refer to Section5.2to see how parametrization is implemented in OptiFlow.

    3.3 Objective Functions

    With the Objectives Functions is how the optimization problem is established. This

    functions perform 3 basics task:

    Replace variables values

    Evaluate

    Read

    First the parametrized values are replace with the values issued by the user or the

    optimization algorithm. Then calculations are done, the function is being evaluated. En

    finally the result (output) from the evaluation is read.

    It is in the objective function that it is defined against what it is desired to optimized

    a certain optimization problem, and it is the segment of the optimization process which

    controls the flow of the algorithm.

    Please refer to Section5.3 to see how objective functions are implemented in OptiFlow.

    https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guide
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    32/104

    Chapter 4

    VXFlow

    VXFlow is a flow solver based on the Vortex Particle Method. It allows very effi-

    cient simulation of two-dimensional flows around bodies of arbitrarily complex geom-

    etry and arrangements of such. Main areas of application is in Wind Engineering of

    structures, Aerodynamics, Aerospace Engineering and Offshore Engineering. Coupled

    fluid-structure interaction analysis is possible, enabling simulation of vortex-induced

    vibrations (VIV), flutter or galloping. [1]

    In this Chapter we will discuss our Black-Box Simulation Program VXFlow. Our purpose

    here is to explain the basics on the usage of the program, mainly the inputs and outputs

    of the program. We will only discuss subjects that are relevant to the usage OptiFlow.

    For detailed explanation on the usage of the program please refer to VXFlow Primer [1]

    and for more information on the numerical method used on the program please refer to

    the Ph.D. Thesis by Morgenthal [7].

    Figure 4.1: VXFlow Black-Box process

    4.1 Input File (*.in13)

    The VXFlow input file is the definition of the CFD model, and consists of a list of pa-

    rameters which the program reads to build the model. In Table 4.1we list the most basic

    parameters and the most important when it comes to optimization, with commentary

    on how they are used in the optimization.

    17

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    33/104

    Chapter 4. VXFlow 18

    Item (default) OptiFlow Description

    NSLICES (none) Nothing Number of Slices of the Structure. This af-

    fects the number of columns for the out-

    put file, because forces and displacements are

    dumped into it for each slice and each section

    of a slice.

    NSTEPS (10000) Nothing Number of timesteps to be performed; if

    NSTEPS=0 then calculation is performed

    until user interruption. In the case of op-

    timization it is important to have a value

    that provides accurate results in a reasonableamount of time.

    NUMSEC (1) Read Number of individual cross sections (separate

    bodies). This also affects the output of the

    output file (*.o3), and it is read by OptiFlow

    to know how many sections are in a slice and

    be able to read the user desired parameter

    from a specific section or a slice.

    GEOMROT (0.0) Read/Modify This is read by OptiFlow to plot the cor-

    rect rotation of the geometry, and it can also

    be modified by an objective function on each

    simulation.

    Table 4.1: VXFlow Input File

    4.1.1 Geometry

    The last values in the input file are the polygonal x-y coordinates of each section for eachslice of the model. The first point given is the leading edge (corner) and the number of

    panels given is inserted on the edge running from this point to the one in the next line.

    The last line contains the point on the circumference and panel information for the edge

    which closes the section.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    34/104

    Chapter 4. VXFlow 19

    Each row has the following format:

    ID CX CY N MX MY

    An explanation of each of these values is provided in Table 4.2.

    ID Edge shape identifier: (1)=linear edge; (2/3)=arc edgeCX X-coodinate of corner pointCY Y-coodinate of corner pointN Number of panels to be created on this edgeMX X-coordinate of the centre of the circle part of which this e

    is. MX and MY are only provided for arc edges, i.e. ID=3. The edge is constructed through the first point and arothe center given, where ID=2 provides a forward and I

    a backward pointing arc. The user has to ensure thatarc actually goes through the second point (geometricallyproblem is overdetermined).

    MY Y-coordinate of centre, cf. also MXexample:

    p1x

    , p1y

    N1

    p4x

    , p4y

    p3x

    , p3y

    p2x

    , p2y

    N4

    N3

    N2

    Mx3

    ,My3

    would be achieved by the following sequence:1 p1x p1y N11 p2x p2y N22 p3x p3y N3 Mx3 My31 p4x p4y N4

    Table 4.2: VXFlow Geometry Definition [1]

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    35/104

    Chapter 4. VXFlow 20

    4.2 Output File (*.o3)

    The VXFlow output file is a tab-delimited file which collects the values of section and

    slices forces and displacements on each simulation time-step. Each column refers toa different parameter and each row is the value of these parameters for the time-step

    evaluated in the simulation. The general formatting of this file is shown on Table 4.3.

    4.3 Other Output Files

    VXFlow also outputs other files if the flags for these are switched on. A list of these file

    types, their flags and description is shown in Table 4.4

    Flag (default) File Extension Description

    VXFL (0) *.vx2 Vortex velocity output

    SKFL (0) *.sk2 Plotting of streaklines on screen

    FVFL (0) *.fv2 Absolute velocities on the isoline grid

    PRFL (0) *.pr1 Surface pressure output

    RSTFL (0) *.rst Restart File

    VIZFL (0) *.mvxb Graphics output flags for VXviz

    Table 4.4: VXFlow Other Output Files

    In the case of running an optimization problem it is suggested that these flags are

    switched off, as it is by default. They are not needed for calculations and are only used

    for post-processing and flow visualization by programs like VXPost and VXviz.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    36/104

    Chapter 4. VXFlow 21

    Time

    Slice(i)

    Slice(i+1)

    ...

    Slice(NSLICES)

    Sect.(

    i)(j)

    Sect.(

    i)(j+1)

    ...

    Sect.(i)(NUMSEC)

    Sect.(

    i+1)(j)

    ...

    ...

    Forces(j)

    Displ.(j)

    ...

    ...

    t1

    DRAG

    LIFT

    MOMEN

    T

    H.DISPL

    V.DISPL

    R.DISPL

    ...

    ...

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    . . .

    tNSTEPS

    DRAG

    LIFT

    MOMEN

    T

    H.DISPL

    V.DISPL

    R.DISPL

    ...

    ...

    Table

    4.3:

    VXFlow

    OutputFile

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    37/104

    Chapter 5

    OptiFlow

    OptiFlow is the Optimization Tool developed for this Thesis. It is written in MAT-

    LABand has a user-friendly GUI Environment. MATLABbuilt-in functions are used

    for File Manipulation, Data-Fitting and Optimization.

    An optimization model is required to be built before the use ofOptiFlow. This opti-

    mization model consists of three main components:

    CFD Model

    *.in13 File

    Parametrization *.opt File

    Objective Function*.m File

    A Computational Fluid Dynamics (CFD) Model is required byOptiFlow to be used for

    the optimization. This model needs to be parametrized in order for it to be used in the

    optimization process. This is done with the Parameter file an *.opt file. The Objective

    Functions control the flow of the optimization by establishing the objectives desired to

    achieve.

    The following sections discuss each of this components further.

    22

    https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.matlab.com/http://www.matlab.com/http://www.matlab.com/https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.matlab.com/http://www.matlab.com/http://www.matlab.com/https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guide
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    38/104

    Chapter 5. OptiFlow 23

    5.1 CFD Model

    The CFD model consists on the numerical setup for the wind simulation, in our case

    it is defined in the *.in13 file, which is VXFlowinput file. This model should be welldefined and working correctly, as this will be the base for generating the Optimization

    Model.

    CurrentlyOptiFlowsupportsVXFlowas the simulation program. For more information

    on how to create a CFD Model refer to the VXFlow Primer.

    5.2 Parameter File (*.opt)

    Parametrization of the Optimization Model is performed in the *.opt File. We use M4

    macro Language to define and parametrize the optimization variables.

    M4 is a macro language, usually available in Unix platforms, which can be used as a

    text-replacement tool. For example, if M4 receives as input:

    # This is a comment

    define(Value, 1.00)

    Variable

    x = Value

    then it will output:

    Variable

    x = 1.00

    Basically we use this ability to define our optimization variables and replace their values

    with the ones obtained from the optimization algorithm.

    M4-scripting is also capable of basic arithmetics, but a definition of a function (calc in

    our case) is required. We assign Perls Math and Trig functions to this, and we do this

    with the following code:

    define(calc, [esyscmd(perle 'use Math::Trig; printf (\$1)')])

    http://www.morgenthal.org/vxflowhttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflowhttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/vxflow
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    39/104

    Chapter 5. OptiFlow 24

    For example if we have:

    define(a,4) # Triangle base

    define(b,3) # Triangle height

    define(c, calc( sqrt( a**2 + b**2 ))

    # 'a**b' stands for 'ab' ('a' to the power of 'b')

    The hypotenuse is: c

    then we would get:

    The hypotenuse is: 5

    Take note that it is very important to define unique variables names in the M4 script,

    so that they do not conflict with the rest of the text in the file.

    Finally, to build our M4-script File and generate our desired output file we type in the

    terminal:

    m4 vxf model.m4> vxf model.in13

    For more information about M4-Programming check references[30][31].

    Now lets talk about our *.opt Model File. Generally speaking, this file will consist of two

    main parts, the M4-Script Definition and the CFD Model, this is illustrated on Fig. 5.1.

    Figure 5.1: Parameter File

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    40/104

    Chapter 5. OptiFlow 25

    You can generate this M4-Files manually, but you can also use OptiFlows GUI to help

    you in this task. Follow the sequence Build Parameter File (*.opt) from the

    Menu Bar, to get a template to write your own Parameter File. With this utility you

    can open a text-based file and a *.opt Template File will be auto-generated from thisfile, taking it as if it were the CFD Model. This template has some basics definitions

    and commands commonly used in optimization problems.

    The parameter file contains the information about the variables to be used in the op-

    timization and the parametrization of the file. All variables are enclosed between the

    [begin{variables}] and[end{variables}], and are defined inside the define( ) com-

    mand. An example is shown below:

    # Variables Definitions:

    [begin{variables}]

    define(x1, @) # Comment 1

    define(x2, @) # Comment 2

    #... others ...#

    [end{variables}]

    To build the Parameter File you can use Build Parameter File (*.opt) from the

    Menu.

    5.3 Objective File (*.m)

    This is a MATLAB function file which works as the objective function of the optimiza-

    tion. In this file you must call Objective Functions that will call the Program to run

    and evaluate the values you require. The available functions for VXFLOW are shown

    on Table5.1.

    Function Description

    VXF FORCES Used to obtain Forces from the Simulation.

    VXF DISPL Used to obtain Displacement from the Simulation.

    VXF DERIV Used to obtain Derivatives from the Simulation.

    VXF GEO Used to obtain Geometrical Values from the Model.

    Table 5.1: VXFLOW Objective Functions

    To build the Objective Function File you can use Build Objective File (*.m)from the Menu.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    41/104

    Chapter 5. OptiFlow 26

    5.4 Pre-Run Optimization

    This optimization procedure requires a Data File. From this data a fit function is

    obtained by using data fit methods provided in the program.

    Figure 5.2: OptiFlow pre-run procedure

    5.5 Run-Time Optimization

    In this Optimization procedure you only need to set-up the Optimization Model, opti-

    mization is made on-the-fly.

    Figure 5.3: OptiFlow run-time procedure

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    42/104

    Chapter 6

    Optimization Models

    Examples

    The purpose of this chapter is to show some optimization examples using the program

    OptiFlow. Two optimization examples are presented, a Wind Shield for vehicular pro-

    tection of the M4 Neath Viaduct and a Vertical-Axis Wind Turbine (VAWT) based on

    the savonius rotor.

    An overview of each example is given and the motivation for optimizing them.

    27

    https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guide
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    43/104

    M4 Neath Viaduct

    Wind Shield

    6.1 M4 Neath Viaduct Wind Shield

    This bridge is located in South Wales and crosses the River Neath [7]. A section of the

    bridge is very exposed in flat topography, therefore a wind shielding system is desired

    for reducing the overturning forces on vehicles. The CFD model used herein is the same

    as the one used on the VXFlowtutorial example.

    We placed four small sections in the freeway just to obtain the interior drag forces in

    this region, as shown in the Figure6.1.

    Figure 6.1: M4 Neath Viaduct Wind Shield

    The optimization problem is to find the optimum vertical positioning of the Wind Shield

    in order to reduced overturning forces in the freeway. We define the optimization variable

    as h, which is the height of the Wind Shield. The other parameters of the simulationare also shown in Figure6.2.

    28

    http://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflow
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    44/104

    Chapter 6. M4 Neath Viaduct Wind Shield 29

    Figure 6.2: Wind Shield

    Parameters

    The parameterhis defined in the *.opt file, all coordinates of the Wind Shield are made

    dependent of this parameter, this is known as parametrization. This is shown in the

    code below:

    # Variables Definitions:

    [begin{variables}]

    define(h, @) # Height of Wind Screen

    [end{variables}]

    define(L, 3.00) # Wind Screen Length

    define(t, 0.15) # Wind Screen Width

    # Wind Screen Coordinates

    define(x1, calc(013.00))

    define(x2, calc(x1t))

    define(y1, calc(h0.25))

    define(y2, calc(y1+L))

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    45/104

    Chapter 6. M4 Neath Viaduct Wind Shield 30

    Then in the CFD model part of the Parameter File we place the corresponding coordi-

    nates variables. These will bee replaced when the m4-macro is called on each iteration

    of the optimization algorithm.

    4 //num cornerpoints**SCREEN3(SCHEME3)

    0.3 0.0 //release distance*spacing hull

    0.02 0.001 0.0 0.1 //merg1*merg2*merg3*merg4

    4 3 1 3 1 //section color coding:drag*lift*moment*displ*rotation

    1 x2 y1 n1

    1 x1 y1 n2

    1 x1 y2 n1

    1 x2 y2 n2

    Objectives

    For this optimization problem our objective is to minimize the drag force for vehicle

    passing by, therefore we placed four small sections on the freeway just to obtain the

    drag force on this points. Our Objective is to Minimize the Maximum of these Drags.

    The Objective Function File is shown below:

    function [Drag] = M4 Neath ViaductWS(X)

    %% M4 Neath ViaductWS Objective Function

    steps = 500;

    Drag(1) = VXF FORCES(X,'DRAG','MAX',steps,'SECTION',11);

    Drag(2) = VXF FORCES(X,'DRAG','MAX',steps,'eval',false,'SECTION',12);

    Drag(3) = VXF FORCES(X,'DRAG','MAX',steps,'eval',false,'SECTION',13);

    Drag(4) = VXF FORCES(X,'DRAG','MAX',steps,'eval',false,'SECTION',14);

    [Drag,Lane] = max(Drag(:))

    % Call optiOUT to generate Plots and Output Data

    optiOUT(X, [Drag]);

    end

    Results

    In the pre-run optimization procedure we collected data from 0 to 1.5 at steps of 0.1 for

    the value ofh. The collected points and the smoothing data fit is shown on Figure 6.3

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    46/104

    Chapter 6. M4 Neath Viaduct Wind Shield 31

    Figure 6.3: Wind Shield pre-run Results

    The optimum is then obtained to beh = 0.2 with adrag= 87.43. It is worth mentioning

    that this value is from the 3rd lane from left to right.

    For the run-time procedure we use the Golden Sectionalgorithm. It run for 8 iterations

    and found the optimum to be at h= 0.23607 with a drag = 61.109. It is important to

    note that the Golden Section is not a Global optimization and therefore is not reliable

    for a noisy function, but in our case we notice from the data gathering that between h

    values of 0 and 1 the function mostly has one unique optimum, and therefore we use

    this algorithm in this range. The results are shown on Figure6.4

    Figure 6.4: run-time Wind Shield Results

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    47/104

    Chapter 6. M4 Neath Viaduct Wind Shield 32

    A summary of the optimization results obtained from each run type is shown on Table6.1

    Run Type h Drag

    pre-run 0.2 87.43

    run-time 0.23607 61.109

    Table 6.1: Wind Shield Results Summary

    The Final Shape of the Optimized Wind Shield is shown on Figure 6.5

    Figure 6.5: Wind Shield Height: h= 0.25

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    48/104

    Vertical-Axis Wind Turbine

    (VAWT)

    6.2 Vertical-Axis Wind Turbine (VAWT)

    The Savonius Wind Turbine[32] is a Vertical-Axis Wind Turbine (VAWT) which main

    advantages are its reliability and practicality. The optimization problem is to find the

    optimum values for the eccentricity variables (ex and ey) in order to maximize Moment

    or Power depending on the model type. The parameters of the wind turbine have been

    taken from the dimensions of an empty oil drum, and are summarized on Figure 6.6

    Figure 6.6: Savonius Turbine

    The variables are bounded to the shaded area shown on Figure 6.6,which are:

    ex= [0

    0.5]

    ey = [0 0.5]33

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    49/104

    Chapter 6. Vertical-Axis Wind Turbine (VAWT) 34

    For the solution of this problem three types of optimization models were prepared, they

    are:

    Static Model

    pseudo-Static Model

    Dynamic Model

    Each of this models differ from one another in the way they obtain the desired objective,

    this will be discussed on the Objectives Section.

    Parameters

    Again the parameters are defined in the *.opt file, between the brackets [begin{variables}]

    and[end{variables}]. This time we have two variables and all coordinates of the Tur-

    bine need to be parametrized to them. This is done with code shown below:

    # Variables Definitions:

    [begin{variables}]

    define(ex, calc(0.1+Imper)) # Eccentricity in XDir

    define(ey, calc(0.1+Imper)) # Eccentricity in YDir[end{variables}]

    # Rotor Dimensions:

    define(D1, 0.572) # Rotor Inside Diameter

    define(D2, 0.584) # Rotor Outside Diameter

    define(t, calc(D2D1)) # Rotor Thickness

    # Coord. Calculations:

    # Section 1

    define(x1, calc((ex/2)))

    define(y11, calc(D1(ey/2)))

    define(y12, calc(y11D1))define(y13, calc(y12t))

    define(y14, calc(y11+t))

    define(xc1, calc((ex/2)))

    define(yc1, calc(y11D1/2))

    # Section 2

    define(x2, calc(ex/2))

    define(y21, calc(D1+(ey/2)))

    define(y22, calc(y21+D1))

    define(y23, calc(y22+t))

    define(y24, calc(y21t))

    define(xc2, calc(ex/2))define(yc2, calc(y21+D1/2))

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    50/104

    Chapter 6. Vertical-Axis Wind Turbine (VAWT) 35

    The coordinates parametrization of the Savonius Rotor is shown in the code below:

    4 //num cornerpoints

    0.2 0.0 //release distance*spacing hull

    0.0 0.002 0.0 0.02 //merg1*merg2*merg3*merg4

    4 4 1 3 1 //section color coding:drag*lift*moment*displ*rotation

    3 x1 y11 nd1 xc1 yc1

    1 x 1 y 12 nt

    2 x1 y13 nd2 xc1 yc1

    1 x 1 y 14 nt

    4 //num cornerpoints

    0.2 0.0 //release distance*spacing hull

    0.0 0.002 0.0 0.02 //merg1*merg2*merg3*merg4

    4 4 1 3 1 //section color coding:drag*lift*moment*displ*rotation

    3 x2 y21 nd1 xc2 yc2

    1 x 2 y 22 nt

    2 x2 y23 nd2 xc2 yc2

    1 x 2 y 24 nt

    The Dynamic Model requires additional parameters to be set on the CFD model, these

    are:

    DYNAMIC=1

    STRCMODEL=1

    DAMPRATIO=1.0

    RAYLA0=0.0

    RAYLA1=0.0

    ASEC0=5E3

    ASEC1=5E3

    MASS11=0.0

    MASS12=0.0

    MASS21=0.0

    MASS22=1.0

    STIFF11=9E9

    STIFF12=0.0

    STIFF21=0.0

    STIFF22=0.0

    Objectives

    The Objective Function for the static model is the following:

    function [Mo] = rotor static(X)

    %% rotor static Objective Function

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    51/104

    Chapter 6. Vertical-Axis Wind Turbine (VAWT) 36

    Mo = VXF FORCES(X,'MOMENT');

    % Call optiOUT to generate Plots and Output Data

    optiOUT(X, [Mo]);

    end

    The Pseudo-Dynamic Model consists on rotating the Geometry around 360at steps of

    45and averaging the values of the Moment. The Objective File for the Pseudo-Dynamic

    case is the following:

    function [AvgMo] = rotor pseudo static(X)

    %% rotor pseudo static Objective Function

    [DMdr, AvgMo] = VXF DERIV(X,'MOMENT','GEOMROT',[180 45 180])

    AvgMo = mean(AvgMo); DMdr = mean(DMdr);

    % Call optiOUT to generate Plots and Output Data

    optiOUT(X, [AvgMo]);

    end

    The Dynamic Model is the most accurate model and has the following objective function:

    function [Power] = rotor dyna(X)

    %% rotor dyna Objective Function

    Variables = getappdata(0,'Variables'); % Variables Data

    modelPATH = getappdata(0,'modelPATH'); % Model Path

    % Savonious Rotor Data

    D = 0.578; % Rotor Avg Diameter [m]

    m = 10; % Mass [kg]

    % Calculate Arm vector

    Arm = [X(1)/2, X(2)/2] + [(4/6)*D/pi, D/2];

    Arm = norm(Arm);

    % Calculate Inertial Mass

    Mass = 2*m*Arm2;

    m4Mod('MASS22',Mass,fullfile(modelPATH, Variables.FILE));

    % Angular Velocity

    Omega = VXF DERIV(X,'RDISPL','TIME',50,'SECTION',1);

    Omega = mean(Omega);

    % Torsional Force

    Torque = VXF FORCES(X,'MOMENT','MEAN',50,'eval',false);Power = Torque * Omega;

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    52/104

    Chapter 6. Vertical-Axis Wind Turbine (VAWT) 37

    % Call optiOUT to generate Plots and Output Data

    optiOUT(X, [Power]);

    end

    Results

    Static Analysis

    Data collected from a static model were smoothed by using cubic interpolation to get

    the surface shown below:

    Figure 6.7: Savonius Static Analysis Results

    These results were unsatisfactory, this goes to show that inappropriate modeling of the

    problem in study will lead to erroneous results. But it does show 2 potential areas for

    the optimum values to exist, which are for ex= 0.1 and ey = 0.3.

    Pseudo-Dynamic Analysis

    This approach yielded better results than the previous one. Again as in the previous

    analysis, data was collected from the model and was smoothed using cubic interpolation

    to get the surface shown below:

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    53/104

    Chapter 6. Vertical-Axis Wind Turbine (VAWT) 38

    Figure 6.8: Savonius Pseudo-Dynamic Analysis

    With this, we decide to adopt the values for the eccentricities as ex= 0.075 andey = 0.10,

    for the optimum values.

    Dynamic Analysis

    From the data collected cubic interpolation was performed and we obtained the surfaceshown below:

    Figure 6.9: Savonius Dynamic Analysis

    This analysis gave us faster and more conclusive results, because it approaches closer toreality.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    54/104

    Chapter 6. Vertical-Axis Wind Turbine (VAWT) 39

    We summarize the optimization results obtained from each model type on Table6.2

    Model Type ex ey Mo P

    Static 0.1 0.3 12.33 -

    Pseudo-Dynamic 0.075 0.1 4.524 -

    Dynamic 0.15 0.1 - 22.93

    Table 6.2: Savonius Results Summary

    The Final Shape of the Optimized Savonius Turbine is shown on Figure6.10

    Figure 6.10: Savonius Rotor: ex= 0.10, ey = 0.10

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    55/104

    Chapter 7

    Final Remarks

    7.1 Conclusions

    The relatively low computational costs and the highly accurate simulations of the Vortex

    Particle Method used in this Thesis are great reasons for using this CFD program for

    simulation-based optimization. In addition it is a mesh-free numerical method, which

    allows for easier and faster parametrization of the models, in contrast to meshing meth-

    ods whose geometry is defined within its discretization, which needs to be changed and

    checked at each simulation.

    However, it is very important to address the issue of noisiness produced from the

    simulation-based optimization. It is important to address this issue in an efficient man-

    ner. Some recommendation are:

    Tweak Local Optimization Algorithms: A stochastic analysis of the simu-

    lation program is recommended, as well as using this data for tweaking current

    optimization algorithms for robust and efficient convergence behavior. The Nelder-

    Mead Simplex method is a convenient gradient-free algorithm for this purpose.

    Run-Time Smoothing: This involves smoothing the noisy objective function by

    implementation of a smoothing routine at run-time of the algorithm.

    Global Optimization Algorithms: Add more Global Optimization Algorithms.

    Refer to2.4for more information.

    Parallelization: Many Global Optimization Algorithms take advantage of Par-

    allel Computing. The speed-up of the optimization process would multiply with

    the amount of CPUs used for the task.

    40

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    56/104

    Chapter 7. Final Remarks 41

    For making the optimization process more user-friendly, it would be desirable to have a

    GUI interface for the definition of the parameters, by directly clicking in the geometry.

    7.2 Future Research

    A very exciting area of research in the field of Optimization is the one known as Multi-

    Disciplinary Optimization (MDO). This area has been most explored in the field of

    aerospace engineering, not as much in civil engineering. With so many fields involved on

    the design of a structure, like Earthquake, Wind, Hydraulic and Structural Engineering,

    it is both challenging and rewarding to optimize important structures by including and

    interacting with each of these elements.

    Life-Cycle design is another interesting area of study. By including the effects of all

    Natural Hazards into a simulation it is possible to design for a target Life-Time, resulting

    in more reliable and economical structures.

    The study and development of Optimization Algorithms is a current trend in the area

    of Mathematics. Exploiting current trends in computer hardware, like Parallelization

    and Graphical Processing Units (GPU) is encouraged. Other approaches are in the

    purely mathematical, stochastic, and/or geometrical theories, as opposed to a heuristic

    approach.

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    57/104

    Bibliography

    [1] Guido Morgenthal. VXFlow v0.994. Weimar, Germany, September 2011. VXFlow

    Primer. http://www.morgenthal.org/vxflow.

    [2] David Gutierrez Rivera. OptiFlow v0.6.1a. Weimar, Germany, March 2014. Opti-Flow Userguide.

    [3] The MathWorks Inc. MATLAB v7.10.0 (R2010a). Natick, Massachusetts, 2010.

    User Documentation, GUIDE, Curve Fitting Toolbox, Optimization Toolbox,

    Global Optimization Toolbox, Parallel Computing Toolbox. http://www.matlab.

    com/.

    [4] Stephen Boyd and Lieven Vandenberghe. Convex Optimization. Cambridge Uni-

    versity Press, The Edinburgh Building, Cambridge, CB2 8RU, UK, 2004. Pages:

    1-11, 455-496. http://www.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf .

    [5] Jorge Nocedal and Stephen J. Wright. Numerical Optimization. Springer, 175 Fifth

    Avenue, New York, NY 10010, USA, 1999. Pages: 2-3, 4-7, 10-30.

    [6] Igor Griva, Stephen G. Nash, and Ariela Sofer. Linear and Nonlinear Optimiza-

    tion. Siam, 3600 Market Street, 6th Floor, Philadelphia, PA 19104-2688 USA, 2nd

    edition, 2009. Pages: 35-40, 54-58, 355-450.

    [7] Guido Morgenthal.Aerodynamic Analysis of Structures Using High-resolution Vor-

    tex Particle Methods. University of Cambridge, Ph.D. Thesis, October 2002. Pages:

    21-31, 121-142.

    [8] Tomlab Optimization. TOMLAB, 2013. http://tomopt.com/tomlab/.

    [9] OpenOpt. OpenOpt. National Academy of Sciences of Ukraine, 2013. http://

    openopt.org/Welcome.

    [10] M.A. Abramson, C. Audet, G. Couture, J.E. Dennis, Jr., S. Le Digabel, and

    C. Tribes. The NOMAD project, March 2013. http://www.gerad.ca/nomad.

    42

    http://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflowhttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.mathworks.com/help/matlab/http://www.mathworks.com/discovery/matlab-gui.htmlhttp://www.mathworks.com/help/curvefit/http://www.mathworks.com/help/curvefit/http://www.mathworks.com/help/optim/http://www.mathworks.com/help/gads/http://www.mathworks.com/help/gads/http://www.mathworks.com/help/distcomp/http://www.matlab.com/http://www.matlab.com/http://www.matlab.com/http://www.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdfhttp://www.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdfhttp://www.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdfhttp://tomopt.com/tomlab/http://tomopt.com/tomlab/http://openopt.org/Welcomehttp://openopt.org/Welcomehttp://openopt.org/Welcomehttp://www.gerad.ca/nomadhttp://www.gerad.ca/nomadhttp://openopt.org/Welcomehttp://openopt.org/Welcomehttp://tomopt.com/tomlab/http://www.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdfhttp://www.matlab.com/http://www.matlab.com/http://www.mathworks.com/help/distcomp/http://www.mathworks.com/help/gads/http://www.mathworks.com/help/optim/http://www.mathworks.com/help/curvefit/http://www.mathworks.com/discovery/matlab-gui.htmlhttp://www.mathworks.com/help/matlab/https://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttps://www.academia.edu/4873435/OptiFlow_v0.6.1_-_User_Guidehttp://www.morgenthal.org/vxflowhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdfhttp://www.morgenthal.org/vxflow/VXFlow_primer.pdf
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    58/104

    Bibliography 43

    [11] Frank Vanden Berghen. Constrained, non-linear, derivative-free,parallel op-

    timization of continuous, high computing load, noisy objective functions.

    Universite Libre de Bruxelles, Ph.D. Thesis, 2004. http://theses.ulb.ac.

    be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdf , http://www.applied-mathematics.net/

    CONDORManual/CONDORManual_1.0.pdf .

    [12] David G. Luenberger and Yinyu Ye. Linear and Nonlinear Programming. Springer,

    233 Spring Street, New York,NY 10013, USA, 3rd edition, 2008. Pages: 2-7, 183-

    257.

    [13] Florent Brunet. Contributions to Parametric Image Registration and 3D Surface

    Reconstruction. Universite dAuvergne, Ph.D. Thesis, November 2010. Chapter 2,

    Pages: 27-44. http://www.brnt.eu/publications/brunet2010phd.pdf.

    [14] Valentin Haenel, Emmanuelle Gouillart, and Gael Varoquaux. Python Sci-

    entific lecture notes. EuroScipy tutorial team, November 2013. Chap-

    ter 13, Pages: 251-265. http://scipy-lectures.github.io/_downloads/

    PythonScientific-simple.pdf .

    [15] Wikipedia. Golden ratio. The Wikimedia Foundation, 2014. http://en.

    wikipedia.org/wiki/Golden_ratio .

    [16] Wikipedia. Golden section search. The Wikimedia Foundation, 2014. http://en.

    wikipedia.org/wiki/Golden_section_search .

    [17] Wikipedia. Simplex. The Wikimedia Foundation, 2014. http://en.wikipedia.

    org/wiki/Simplex.

    [18] Wikipedia. Simplex algorithm. The Wikimedia Foundation, 2014. http://en.

    wikipedia.org/wiki/Simplex_algorithm .

    [19] Wikipedia. Nelder-Mead Method. The Wikimedia Foundation, 2014. http://en.

    wikipedia.org/wiki/Nelder-Mead_method .

    [20] E. G. Romero-Blanco and J. F. Ogilvie. Optimization with sequential simplex of

    variable size. Maplesoft, 2002. http://www.maplesoft.com/applications/view.

    aspx?SID=4289&view=html .

    [21] Design Decisions Wiki.Downhill simplex. Design Decisions Laboratory, 2008. http:

    //wiki.ece.cmu.edu/ddl/index.php/Downhill_Simplex .

    [22] Sasa Singer and John Nelder. Nelder-Mead algorithm. Scholarpedia, 2009. http:

    //www.scholarpedia.org/article/Nelder-Mead_algorithm .

    http://theses.ulb.ac.be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdfhttp://theses.ulb.ac.be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdfhttp://theses.ulb.ac.be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdfhttp://www.applied-mathematics.net/CONDORManual/CONDORManual_1.0.pdfhttp://www.applied-mathematics.net/CONDORManual/CONDORManual_1.0.pdfhttp://www.applied-mathematics.net/CONDORManual/CONDORManual_1.0.pdfhttp://www.brnt.eu/publications/brunet2010phd.pdfhttp://www.brnt.eu/publications/brunet2010phd.pdfhttp://scipy-lectures.github.io/_downloads/PythonScientific-simple.pdfhttp://scipy-lectures.github.io/_downloads/PythonScientific-simple.pdfhttp://en.wikipedia.org/wiki/Golden_ratiohttp://en.wikipedia.org/wiki/Golden_ratiohttp://en.wikipedia.org/wiki/Golden_section_searchhttp://en.wikipedia.org/wiki/Golden_section_searchhttp://en.wikipedia.org/wiki/Simplexhttp://en.wikipedia.org/wiki/Simplexhttp://en.wikipedia.org/wiki/Simplexhttp://en.wikipedia.org/wiki/Simplex_algorithmhttp://en.wikipedia.org/wiki/Simplex_algorithmhttp://en.wikipedia.org/wiki/Nelder-Mead_methodhttp://en.wikipedia.org/wiki/Nelder-Mead_methodhttp://www.maplesoft.com/applications/view.aspx?SID=4289&view=htmlhttp://www.maplesoft.com/applications/view.aspx?SID=4289&view=htmlhttp://www.maplesoft.com/applications/view.aspx?SID=4289&view=htmlhttp://wiki.ece.cmu.edu/ddl/index.php/Downhill_Simplexhttp://wiki.ece.cmu.edu/ddl/index.php/Downhill_Simplexhttp://wiki.ece.cmu.edu/ddl/index.php/Downhill_Simplexhttp://www.scholarpedia.org/article/Nelder-Mead_algorithmhttp://www.scholarpedia.org/article/Nelder-Mead_algorithmhttp://www.scholarpedia.org/article/Nelder-Mead_algorithmhttp://www.scholarpedia.org/article/Nelder-Mead_algorithmhttp://wiki.ece.cmu.edu/ddl/index.php/Downhill_Simplexhttp://wiki.ece.cmu.edu/ddl/index.php/Downhill_Simplexhttp://www.maplesoft.com/applications/view.aspx?SID=4289&view=htmlhttp://www.maplesoft.com/applications/view.aspx?SID=4289&view=htmlhttp://en.wikipedia.org/wiki/Nelder-Mead_methodhttp://en.wikipedia.org/wiki/Nelder-Mead_methodhttp://en.wikipedia.org/wiki/Simplex_algorithmhttp://en.wikipedia.org/wiki/Simplex_algorithmhttp://en.wikipedia.org/wiki/Simplexhttp://en.wikipedia.org/wiki/Simplexhttp://en.wikipedia.org/wiki/Golden_section_searchhttp://en.wikipedia.org/wiki/Golden_section_searchhttp://en.wikipedia.org/wiki/Golden_ratiohttp://en.wikipedia.org/wiki/Golden_ratiohttp://scipy-lectures.github.io/_downloads/PythonScientific-simple.pdfhttp://scipy-lectures.github.io/_downloads/PythonScientific-simple.pdfhttp://www.brnt.eu/publications/brunet2010phd.pdfhttp://www.applied-mathematics.net/CONDORManual/CONDORManual_1.0.pdfhttp://www.applied-mathematics.net/CONDORManual/CONDORManual_1.0.pdfhttp://theses.ulb.ac.be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdfhttp://theses.ulb.ac.be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdfhttp://theses.ulb.ac.be/ETD-db/collection/available/ULBetd-04142004-190105/unrestricted/thesis_optimization_frank.pdf
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    59/104

    Bibliography 44

    [23] Prof. DK Chaturvedi. Advances in Evolutionary Optimization Techniques.

    YouTube, November 2013. https://www.youtube.com/watch?v=ftxiiaHNweQ.

    [24] Imperial College London. Colour footage of the Tacoma Narrows bridge. YouTube,

    December 2011. https://www.youtube.com/watch?v=qbOjxPCfaFk.

    [25] Wikipedia. Shape optimization. The Wikimedia Foundation, 2014. http://en.

    wikipedia.org/wiki/Shape_optimization .

    [26] Monika Kowalska. Shape Optimization based on Black Box Simulations. Johannes

    Kepler Universitat Linz, M.Sc. Thesis, May 2010. http://www.numa.uni-linz.

    ac.at/Teaching/Diplom/Finished/kowalska-dipl.pdf .

    [27] Wikipedia. Black box. The Wikimedia Foundation, March 2014. http://en.

    wikipedia.org/wiki/Black_box .

    [28] Andrea Cassioli. A Tutorial on Black Box Optimization. LIX Ecole polytech-

    nique, April 2013. http://www.lix.polytechnique.fr/~dambrosio/blackbox_

    material/Cassioli_1.pdf.

    [29] John James Tomick. On Convergence of the Nelder-Mead Simplex Algorithm for

    Unconstrained Stochastic Optimization. The Pennsylvania State University, Ph.D.

    Thesis, May 1995. http://www.dtic.mil/dtic/tr/fulltext/u2/a289453.pdf.

    [30] Brian Kernighan and Dennis Ritchie. m4 macro processor. GNU Project, 1977.

    http://www.gnu.org/software/m4/m4.html .

    [31] Michael Breen. Notes on the M4 Macro Language. mbreen.com, 2008. http:

    //mbreen.com/m4.html.

    [32] Wikipedia.Savonius wind turbine. The Wikimedia Foundation, March 2014. http:

    //en.wikipedia.org/wiki/Savonius_wind_turbine .

    https://www.youtube.com/watch?v=ftxiiaHNweQhttps://www.youtube.com/watch?v=qbOjxPCfaFkhttps://www.youtube.com/watch?v=qbOjxPCfaFkhttp://en.wikipedia.org/wiki/Shape_optimizationhttp://en.wikipedia.org/wiki/Shape_optimizationhttp://en.wikipedia.org/wiki/Shape_optimizationhttp://www.numa.uni-linz.ac.at/Teaching/Diplom/Finished/kowalska-dipl.pdfhttp://www.numa.uni-linz.ac.at/Teaching/Diplom/Finished/kowalska-dipl.pdfhttp://en.wikipedia.org/wiki/Black_boxhttp://en.wikipedia.org/wiki/Black_boxhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://www.dtic.mil/dtic/tr/fulltext/u2/a289453.pdfhttp://www.gnu.org/software/m4/m4.htmlhttp://www.gnu.org/software/m4/m4.htmlhttp://mbreen.com/m4.htmlhttp://mbreen.com/m4.htmlhttp://en.wikipedia.org/wiki/Savonius_wind_turbinehttp://en.wikipedia.org/wiki/Savonius_wind_turbinehttp://en.wikipedia.org/wiki/Savonius_wind_turbinehttp://en.wikipedia.org/wiki/Savonius_wind_turbinehttp://en.wikipedia.org/wiki/Savonius_wind_turbinehttp://mbreen.com/m4.htmlhttp://mbreen.com/m4.htmlhttp://www.gnu.org/software/m4/m4.htmlhttp://www.dtic.mil/dtic/tr/fulltext/u2/a289453.pdfhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://www.lix.polytechnique.fr/~dambrosio/blackbox_material/Cassioli_1.pdfhttp://en.wikipedia.org/wiki/Black_boxhttp://en.wikipedia.org/wiki/Black_boxhttp://www.numa.uni-linz.ac.at/Teaching/Diplom/Finished/kowalska-dipl.pdfhttp://www.numa.uni-linz.ac.at/Teaching/Diplom/Finished/kowalska-dipl.pdfhttp://en.wikipedia.org/wiki/Shape_optimizationhttp://en.wikipedia.org/wiki/Shape_optimizationhttps://www.youtube.com/watch?v=qbOjxPCfaFkhttps://www.youtube.com/watch?v=ftxiiaHNweQ
  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    60/104

    OptiFlow User Guide

    45

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    61/104

    OptiFlow v0.6.1a

    - User Guide -25/03/2014

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    62/104

    ---------------

    Version history

    ---------------

    0.6.1a - 06/Mar/2014 - Fixes to Run-Time Procedure

    0.6.0a - 20/Feb/2014 - Attach Constraint File Capability

    0.5.1a - 02/Feb/2014 - Changed CSV to Tab Delim. for Data Files

    0.5.0a - 02/Feb/2014 - Added items to File Menu

    0.4.7a - 31/Jan/2014 - Misc. Fixes to Plots

    0.4.6a - 30/Jan/2014 - Added more Objective Functions

    0.4.5a - 28/Jan/2014 - Plot Fixes, detects arcs and sections

    0.4.4a - 19/Jan/2014 - Fixes to Plots and Server Access

    0.4.3a - 08/Jan/2014 - Fixes to Remote Server Access

    0.4.2a - 18/Dec/2013 - Misc. Fixes to GUI, added Timer and Progress Bar

    0.4.1a - 12/Dec/2013 - Fixes to Objective Functions and Plots

    0.4.0a - 09/Dec/2013 - Added Remote Server Access

    0.3.0a - 04/Dec/2013 - Added Objective Functions

    0.2.0a - 25/Nov/2013 - Windows Support

    0.1.1a - 22/Nov/2013 - Updated Example Models

    0.1.0a - 21/Nov/2013 - Model Geometry Visualization

    0.0.1a - 11/Nov/2013 - Portability Fixes

    0.0.0a - 30/Oct/2013 - Release

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    63/104

    --------------

    Future Release

    --------------

    - Add Parallel Optimization Capability

    - Add Parallel Data Gathering

    - Send Automated Data Gathering Script to Remote Server

    - Add the Over-Time Optimization Procedure

    - Get rid of the M4 and Perl Dependencies

    - Add Remote Server Access under Windows

    - Add user constraint to Optimization Algorithms runs

    - Multi-Server Selection

    - Deploy using Matlab Deployment Tool

    - Add general and default optimization results plot

    - Change Objective Function to accept File as Input parameter

    - Add ability to define variables as constraints

    - Add header for Data Files and Optimization Results Files

    - Collect and save all data from VXFLOW on each function evaluation

    - Let user choose different outputs for Plots and Data Files

    - Let user choose output location for optimization results (not OptiOUT Fldr)

    - Add timer and progress-bar for the Run-Time Procedure

    - Add on/off switch for panels nodes display

    - Add Wind-Speed Plot

    - Dynamic GUI and Menus, auto-detect functions and populate menus accordingly

    - Make Instructive Guide for adding support with other programs besides VXFLOW

    - Add Parametrization using a GUI

    - Change code to Object-Oriented-Programming (OOP) style

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    64/104

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    65/104

    CONTENTS ii

    5 Optimization 17

    5.1 Pre-Run Optimization . . . . . . . . . . . . . . . . . . . . . . . . . 17

    5.2 Run-Time Optimization . . . . . . . . . . . . . . . . . . . . . . . . 18

    Appendices 19

    I M4-Neath Viaduct Wind Shield 20

    II Savonius Wind Turbine 33

  • 8/10/2019 Aerodynamic Shape Optimization using Vortex Particle Simulations

    66/104

    Chapter 1

    Introduction

    1.1 About OptiFlow

    OptiFlow is a CFD Optimization Tool written in MATLAB . It uses MATLAB

    built-in Functions for Data-Fitting and Optimization to manipulate data and solve

    optimization problems. The user is able to use the program by using a user-

    friendly GUI or by modifying a text file.

    This User Guide will cover the following topics:

    Figure 1.1: OptiFlow Flowchart

    1. Navigation of the GUI

    2. The OptiFlow Input File

    3. Data Gathering

    4. Run Optimization Model

    5. Build Optimization Model

    At the end of this Guide we provide some simple tutorial examples to help you

    get started in modeling optimization problems.

    1

  • 8/10/2019 Aerodynamic Shape Opti