Profile: Code_Aster

Code_Aster is an open source (GPL) finite element structural dynamics and thermal code written by Electricité de France (EDF) to support that country's nuclear power industry. As with libMesh, engineers can use such software to estimate the temperatures and stresses in a part or a structure, which can determine the likely location and mechanism of failure under stress. With that knowledge, an engineer can modify the design to prevent that type of failure before putting the first physical part to a test.

The main strength of Aster relative to other codes is its inclusion of many types of material models. Aster can simulate complex nonlinear elastic behavior of polymers and anisotropic elastic-plastic deformation and work hardening of metals, as well as low-rate deformation ("creep") and crack growth ("fatigue") which often limit long-term reliability of a product. It can also incorporate energy exchange between surfaces by thermal radiation. EDF has also developed a comprehensive test suite for Aster, and obtained ISO 9001 certification.

As an example, the plot on the right shows the calculated (solid line) and experimental (dashed lines) dynamic force-displacement curves of an elastomeric vibration-damping spring for earthquake-resistant structures. Details of this simulation, its Code_Aster input file, and a reference are in the example documentation here, and other examples are listed here.

Aster can also run in conjunction with EDF's Code_Saturne, a fluid dynamics code, in order to simulate interactions between fluid flow and solids. For example, the flow of air past an airplane wing can cause the wing to bend slightly, which in turn changes the air flow. And flow of liquid metal into a mold changes the mold's temperature, which can cause the mold to crack; the temperature of the mold also determines how long it takes for the liquid metal to solidify and the probability of forming casting defects.

In terms of its user interface, Aster comes with graphical software for interactively authoring and editing its input files called Eficas, as well as a graphical shell called ASTK to control and monitor the solver as it runs on a single machine or a cluster of computers. Last year, a consortium including EDF linked Aster with the Salomé pre- and post-processing software (profiled in the March 2008 Opennovation News) to create an integrated open source product called Salomé-MECA. In this product, one can import a design geometry, create a mesh and set boundary conditions as usual in Salomé, then use new modules to write and edit the Aster input file and control the solver operation, all within a the Salomé graphical shell. Salomé-MECA is part of the CAELinux (Computer-Aided Engineering Linux) live-DVD distribution profiled in the February 2008 Opennovation News.

Most of Aster's code is in the FORTRAN and Python languages, the former for its performance-critical components and the latter for high-level scripting, including its input files. It uses some C/C++ code to connect with external libraries, such as MPI parallel processing libraries and linear algebra solvers. In terms of human languages, most of Aster's documentation is written in French, though its Internationalization Project is working on translations of the user and developer manuals.

In short, Code_Aster is a mature, robust, and scriptable code for simulating complex deformation modes in real materials. It uses scalable adaptive meshing and solvers, and is reported to perform well on computer clusters. Coupled with Salomé and Code_Saturne, it forms an important component of a complete mechanical finite element analysis suite.

All of the content and formatting on this page is Copyright 2008 Opennovation; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

open innovation nova ovation pen vat ion