The AceFEM package is a general finite element
environment designed to solve multi-physics and multi-field problems. The
AceFEM package explores advantages of symbolic capabilities of Mathematica
while maintaining numerical efficiency of commercial finite element
environment. The package combines use of Mathematica’s facilities with external
handling of intensive computations by compiled modules.
The main part of the package includes
procedures that are not numerically intensive, such as processing of the user
input data, mesh generation, control of the solution procedures, graphic
post-processing of the results, etc.. Those procedures are written in
Mathematica language and executed inside Mathematica. The numerical module
includes numerically intensive operations, such as evaluation and assembly of
the finite element quantities (tangent matrix, residual, sensitivity vectors,
etc.), solution of the linear system of equations, contact search procedures, etc..
The numerical module exists as Mathematica package as well as external program
written in C language and is connected with Mathematica via the MathLink
protocol. This unique capability gives the user the opportunity to solve
industrial large-scale problems with several 100000 unknowns and to use
advanced capabilities of Mathematica such as high precision arithmetic,
interval arithmetic, or even symbolic evaluation of FE quantities to analyze
various properties of the numerical procedures on relatively small examples. The
AceFEM package comes with a library of finite elements (solid, thermal,
contact,... 2D, 3D,...) including full symbolic input for most of the elements.
Additional elements can be accessed through the AceShare finite element file
sharing system. The element oriented approach enables easy creation of
costumized finite element based applications in Mathematica. In combination
with the automatic code generation package AceGen the AceFEM package represents
an ideal tool for a rapid development of new numerical models.
Unique features found in the product
- The AceFEM package explores the
advantages of symbolic capabilities of Mathematica while maintaining
numerical efficiency of commercial finite element environment. The unique
solution has been achieved, not shared by other products, thorough
splitting the package into three parts. The main part is written in
Mathematica and includes procedures that are not numerically
intensive The numerical module that
includes numerically intensive operations is dual symbolic/numeric and
exists as Mathematica package as well as external program written in C
language and is connected with Mathematica via the MathLink protocol.
- Semi analytical and large scale
simulations share the same pre-processing, post-processing and solution
- During the FEM analysis there
is all the time full access to all environment data, nodal data and
element data as well as solution procedure. They can be accessed and
changed directly from Mathematica (MathLink). This gives AceFEM
flexibility that is not shared by other FE environments.
Element oriented technology
- In the last decade or so the
use of object oriented approach has been considered as the main method of
obtaining reusable and extensible numerical software. Only the shift of
complexity of data management is performed by utilizing object oriented
approach, while the level of abstraction of the problem description
remains the same. With the use of symbolic tools and automatic code
generation a new, more flexible approached can be introduced. The symbolic approach can bypass the
drawbacks of the OO formulation by abandoning the re-usable codes concept
and providing only the basic functionality at the global level of the
finite element environment which is manually coded.
- The codes at the local level of
the finite element are
automatically generated, self-contained and connected to the Mathematica
through MathLink. The MathLink connection is provided in both directions.
The user can, during the analysis session, directly change the data
contained within the elements from Mathematica. Additionally, the element
code can also contain bits of Mathematica input that can influence the
mesh generation, solution procedure and post-processing.
- The AceFEM enables easy
creation of customized finite element based applications in Mathematica.
- In combination with the
automatic code generation package AceGen the AceFem package represents an
ideal tool for a rapid development of new numerical models.
- The AceFEM environment comes
with a small build-in library including standard solid, structural,
thermal and contact elements. Additional elements are accessed and
automatically downloadable through the AceShare system.
- The AceFEM supports analytical
sensitivity analysis for all elements (including large strain
complementary product AceGen is required for the generation of new finite
elements. Without AceGen only the existing elements from the built-in or shared
libraries can be used!