Success story # Highlights:
- Key words:
- Mathematical model: Adjoint based morphing
- Mesh optimising
- Industry sectors: Automotive, Aerospace
- Key codes used: FEniCS HPC, Unicorn HPC, Tetgen
Organisations & Codes Involved:
KTH Royal Institute of Technology in Stockholm is one of Europe’s leading technical and engineering universities, as well as a key centre of intellectual talent and innovation. Basic and applied research are performed side-by-side at KTH, and interdisciplinary research is conducted in parallel with work in specific fields.
Cineca is a not-for-profit Consortium made up of Italian universities and public institutions, and it is one of the most important computing centres worldwide. Cineca’s aim is to accelerate scientific discovery by providing high performance computing resources, data management, HPC services and expertise.
FEniCSHPC is the HPC flavor of the high-level problem-solving environment FEniCS for automated solution of partial differential equations (PDEs) by the finite element method. To manage the complexity of multiphysics problems FEniCS takes the weak form of a PDE as input in a near mathematical notation and automatically generates low-level source code, abstracting away implementation details and HPC concepts from domain scientists.
We challenged the code by studying the external flow for the DrivAer model, a modular realistic car CAD available for research purposes defined and studied using Windi Tunnel Test facility by the Technische Universität München.
For complex flow simulations, a priori knowledge of physics and the flow regimes is not always available, so the process of generating an optimal mesh is a tedious, time consuming process associated with a high computational cost. The use of goal driven a posteriori adjoint based error estimation can drive an adaptive process, resulting in a final optimal mesh. The benefits of an optimal mesh are seen in an increased accuracy of numerical simulation results, e.g. for the evaluation of drag or acoustic noise in the automotive and aeronautical fields. By using error estimation and adaptivity, a fully automated process can be established, involving an iterative workflow between mesh generation, simulation, result evaluation and CAD model morphing.
Our aim is to use a posteriori error estimation to drive both mesh adaption and CAD morphing in an iterative process to produce an optimal design for a given output of interest. Our strategy is based on Unicorn HPC, a finite element CFD solver built on top of the FEniCS HPC code. It computes an approximation of a weak solution of the incompressible Navier Stokes equation, and comes with a built-in a posteriori adjoint-based error estimation strategy used to drive the adaptive mesh refinement only increasing resolution specifically in regions of interest. Through the adjoint method it is possible to evaluate the sensitivity of a desired scalar output to a change in the solution, without explicitly recomputing the solution. The scalar quantity at hand can be a physical quantity of interest, e.g the drag, or the norm error of the computed solution, related to the mesh size. We are thus applying the adjoint-based techniques implemented in the code for mesh adaptation to enable the drag-reduction based morphing of the geometry model.
Scientific impact of this result:
The automated simulation methods described above have been extensively used in academia and recently gained interest from both independent software vendors (ISV) and industry. The increasing computational complexity of industrial applications urges the scientific community to provide cutting edge methods packed with solid HPC capabilities to provide reliable solutions in affordable time.
Industrial users are focused on the solution of the engineering problem, and are typically not computing experts. The challenging size of real case problems though, with mesh sizes of several millions of elements, requires that the codes are able to run smoothly on Exascale systems.
The coupling Unicorn HPC + FEniCS HPC provides an Exascale-ready framework, with built-in parallelisation of FEM (Finite Elements Method) assembly phase, mesh adaption and linear algebra solvers. Our effort focuses on improving performances and robustness of the HPC solution and filling the gap between academia and industry by testing the code on real case applications.
In this context, the joint effort of core code developers and use case owners is addressing the ease of the installation process, as well as the enrichment of the engineering relevant quantities extracted from the solution, the improvement of code stability, the definition of an optimal meshing strategy and the introduction of the drag driven morphing capability. Preliminary solutions have been obtained so far for increasingly complex models of the Drivaer car.
Benefits for further Developments:
- Automation of the CFD design process for complex industrial applications focusing on drag reduction driven morphing.
- Devise a stable and performance effective strategy for finite element based CFD solutions in the Exascale framework.
- Build an effective workflow for collaboration between HPC service providers, core code developers and industrial users.