Wolfram Research


Multi-language, Multi-environment Numerical Code Generation


Mathematica 11 compatible AceGen provides an optimal environment for designing and implementing numerical code. It is designed to approach especially hard problems, such as analytical sensitivity analysis of complex multi-field problems, where general strategies to efficiently formulate numerical procedures have not yet been established.

AceGen automatically derives formulas needed in numerical procedures. Symbolic derivation of the characteristic quantities (e.g. gradients, tangent operators, sensitivity vectors, etc.) can erroneously lead to exponential behavior of derived expressions, both in time and space. The new approach in AceGen avoids this problem by combining several techniques with the symbolic and algebraic capabilities of Mathematica: automatic differentiation, automatic code generation, simultaneous optimization of expressions and theorem-proving via stochastic evaluation of expressions.

The application's multi-language capabilities are useful for rapidly prototyping numerical procedures in script languages of general problem-solving environments like Mathematica, as well as for generating highly optimized and efficient compiled code in languages like Fortran or C. You can explore and analyze derived formulas through the unique user interface. The AceGen package also provides a collection of prearranged modules that let you automatically create an interface between the automatically generated code and the numerical code-execution environment.

With AceGen and Mathematica, you can create code for use in numerical environments such as:

  • AceFEM, a research application based on Mathematica
  • FEAP, a research program written in Fortran
  • ELFEN, a commercial system written in Fortran
  • ABAQUS, a general commercial environment
With Mathematica and its support for multiple languages and environments, AceGen enables generation of numerical code for a variety of systems from the same symbolic description.

About the Developer
Jože Korelc is a professor of mechanics at the University of Ljubljana in Slovenia. He has published numerous articles on finite element methods, automatic code generation and the use of symbolic methods in engineering. Professor Korelc is currently head of the Division of Structures in the university's Faculty of Civil and Geodetic Engineering, president of the Slovenian Society of Mechanics and vice president of the Central European Association of Computational Mechanics.

Product Support
AceGen is developed and supported by Jože Korelc.

Jože Korelc
University of Ljubljana
Faculty of Civil and Geodetic Engineering
Jamova 2
SI-1000 Ljubljana
fax: +386-(0)1-476-86-29
email: AceProducts@fgg.uni-lj.si

AceGen 6.8 requires Mathematica 9 or greater and is available for Windows, Mac and Linux.

Note: Contact the developer for trial information.