Structures with Shape and Topology Optimization By Jennifer Krawec Engineering Project Proposal Advisor: Ernesto Gutierrez-Miravete Abstract In industry, structural optimization is a major concern when designing mechanical systems. The aim of structural optimization is to determine the structural design variables (geometry: shape and size) in order to minimize an objective function (cost or weight) while satisfying given constraints. Structural optimization can be subdivided into topology and shape optimization. Topology optimization consist of optimizing the material layout within a given design space, and for a given set of loads and boundary conditions, such that the resulting structure meets a prescribed set of performance targets. While shape optimization is as the term indicates, optimizing the geometry of a specific shape. Background/Introduction Traditionally, engineers performed structural optimization by trial and error. This is a very costly and time consuming approach. Currently, the modern approach consists of using numerical softwares that simultaneously anaylzes and optimizes the design. This approach streamlines the optimization process by automatating the iterations, therefore decreasing the time required by the operator and increasing the solution efficiency. Finite element based topology, sizing and shape optimization tools are typical used as part of a two phase design process. Firstly, a topology optimization is performed to obtain a first view on an optimal configuration for the structure and initial design with optimal load paths. Next, the suggested configuration is interpreted to form an engineering design and this design is then optimized using detail sizing and shape optimization methods with real design requirements. There are several steps involved when solving a structural optimization problem. After selecting the test case certain parameters of the specific test case can be define like the volume, perimeter, boundary conditions and applied forces, etc. In parallel the optimization code can be developed, which consist of defining the mesh, velocity field, objective function, level-set function, density function, volume, perimeter, and etc. This code will be executed several times until the optimal design is achieved. Problem Description This project will consist of optimizing a simply triangular arch with a point load in the center of the arch. The boundary conditions will be fixed-fixed in the both the x and y direction on either ends of the arch. The force applied will be in the negative direction and have a value of 1,000lbs. This is shown in Figure 1 below: F Fx2 Fx1 Fy1 Fy2 Figure 1: Free Body Diagram of the Arch If time permits a stress analysis will be performed using either COMSOL or ANSYS to compare the non-optimized and optimized structures. Performing this analysis will require material property inputs; E and v will be that of steel. Methodology/Approach The approach for this project is to use previously developed topology optimization code, Scilab using methods developed by Gregorie Allaire. The below procedure will outline the steps/methodology that were used to develop this topology optimization code. 1. Topology Optimization Section 1.1. Setup of problem The structure is assumed to be composed of a linear elastic material and possess Neuman and Dirichlet boundary conditions. Volume forces and surface loads will be applied. The displacement field in the linear elastic system will need to be determined. The objective functions need to be calculated, which is the total amount of work done by the structure, also known as the compliance. The compliance equation will also consist of geometrical contrainst, constant volume and perimeter Lagrange multiplier. 1.2. Shape derivative To calculate the objective function equation a gradient method is applied using shape derivatives. Shape derivative measure the sensitivity of boundary disturbance. 1.3. Shape representation using level-set method The level-set function needs to be defined. The level-set function tracks the boundary, interfaces, and the shape of the structure. Therefore, the structures shape and curvature can be calculated. 1.4. Optimization algorithm Initiate the level-set function Iterate until convergence of optimal structure Reinitialize the level-set function 2. Implementation using Scilab 2.1. 3 Files Functions.sci is the first code that will be executed, which encompasses all of the functions used in the main program The second file includes all the parameters need for optimizing my structure. The last code to run is the main routine code, optalg.sce. This is the actual optimization algorithm that requires the above 2 files in order to determine the optimal structure 2.2. Parameter and settings Define working domain and resolution Define how many and size of holes Set Lagrange multipliers Define the setting of the problem, the forces acting on structure, fixed portions (boundary conditions) of the structure, and passive parts (volume and perimeter) of the working domain 2.3. Initialization and re-initialization Guess an optimal topology of final structure – initialization In order to prevent the level-set function from becoming too steep or too flat, at every five iterations re-initialize of the mesh is required. This is performed while solving the convection equation 2.4. Finite element analysis Use a finite element routine for rectangular mesh in order to solve for the velocity field 2.5. Use compliance to solve convection equation 2.6. Checking objective function If objective function decreased move onto next iteration If objective function didn’t decrease, solve level-set function with fewer iterations The second part of this approach is to develop finite element models of my nonoptimized and optimized structure and perform a stress analysis. Either COMSOL or ANSYS will be used to perform this comparison. This analysis will be based on the geometry constraints, applied forces, boundary conditions, and mechanical properties of steel. Resources Required Scilab (similar to Matlab) COMSOL/ASYS (potentially) Expected Outcomes The outcome of this project is to become proficient in the process of structural optimization. This includes understanding the elements of the optimization codes and modifying the codes to optimize my specific structure. If time allows I will utilize either COMSOL or ANSYS to perform my stress analysis comparison. Milestone/Deadline List Task Date Submit proposal 9/30/2010 Download Scilab 10/02/2010 Get access to COMSOL/ANSYS 10/07/2010 Understand current Scilab codes 10/12/2010 Submit first progress report 10/21/2010 Start to adapt current Scilab code to my project 11/4/2010 Submit second progress report 11/11/2010 Run Scilab code 11/18/2010 Run stress comparison between optimized and non-optimized shapes 11/29/2010 Submit final draft 12/2/2010 Submit final report and presentation 12/16/2010 References http://www.iitk.ac.in/directions/directsept04/Iyenger~new.pdf http://www.cmap.polytechnique.fr/~jouve/papers/cras.pdf http://www-math.mit.edu/phase2/UJM/vol1/CPHILL~1.PDF http://www.cmap.polytechnique.fr/~allaire/levelset_en.html ftp://ftp.math.ucla.edu/pub/camreport/cam06-44.pdf Allaire’s website