Sig Numerical Optimization / Tutorials

From OpenFOAMWiki

1 Tutorials using DAKOTA

1.1 Bounded-constrained gradient optimization of a blunt body

Blunt body with control points. Initial shape.
Shape optimization of the 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.


1.2 Vector parameter-study and bounded-constrained gradient optimization of a plate using solidDisplacementFoam

Plate Geometry
  • This tutorials includes two cases, one for vector parameter-study and one for a bounded-constrained gradient optimization study of a plate.
  • The goal is to reduce the weight of the plate by maximizing the stress on the object.
  • The geometry, made with Salome, 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.

1.3 More tutorials