Sig Numerical Optimization / Tutorials
From OpenFOAMWiki
Contents
1 Tutorials using DAKOTA
1.1 Bounded-constrained gradient optimization of a blunt body
- In this short tutorial we do a bounded-constrained gradient optimization study of a blunt body.
- We aim at optimizing the shape of a blunt body. The goal is to minimize the drag coefficient.
- The body is parametrized using Bezier curves with four control points and six linear constraints.
- To do the optimization we use Dakota, Salome and OpenFOAM. The geometry and mesh are generated with Salome.
- This tutorial works fine with OpenFOAM 2.3.0, Salome 7.3.0 and Dakota 5.4.0.
- Before running the tutorial, execute the script dakota_cleanup.
- The coupling of Dakota, Salome and OpenFOAM is handled using a bash script (generic interface), that controls the simulation workflow.
- File:Blunt body case.zip. Inside the README.FIRST file, you will find the instructions of how to run the case.
1.2 Topology optimization of a plate using solidDisplacementFoam
- This tutorials includes two cases (vector parameter andbounded-constrained gradient-based) for topology optimization of a plate.
- The goal is to reduce the weight of the plate by maximizing the stress on the object.
- The geometry has a single variable (the radius of the hole) and two linear constraints.
- The main goal of this tutorials is to show the optimization workflow using Salome, cfMesh, OpenFOAM and Dakota.
- The geometry is generated with Salome, while the mesh is generated using cartesian2DMesh (from cfMesh).
- This tutorial was tested with OpenFOAM 2.2.2, Salome 7.4.0 and Dakota 6.0.
- Before running the tutorial, execute the script dakota_cleanup.
- Bash scripts are used to couple the different tools, in particular stlCombine is used to merge surface STL files generated by the Salome script.
- Download the tutorial here. Inside the README.FIRST file, you will find the instructions of how to run the case.