Automatic Generation of Finite-Element Code by Simultaneous Optimization of Expressions

Abstract The paper presents a MATHEMATICA package SMS (Symbolic Mechanics System) for the automatic derivation of formulas needed in nonlinear finite element analysis. Symbolic generation of the characteristic arrays of nonlinear finite elements (e.g. nodal force vectors, stiffness matrices, sensitivity vectors) leads to exponential behavior, both in time and space. A new approach, implemented in SMS, avoids this problem by combining several techniques: symbolic capabilities of Mathematica, automatic differentiation technique, simultaneous optimization of expressions and a stochastic evaluation of the formulas instead of a conventional pattern matching technique. SMS translates the derived symbolic formulas into an efficient compiled language (FORTRAN or C). The generated code is then incorporated into an existing finite element analysis environment. SMS was already used to developed several new, geometrically and materially nonlinear finite elements with up to 72 degrees of freedom. The design and implementation of SMS are presented. Efficiency of the new approach is compared with the efficiency of the manually written code on an example.

[1]  T. Y. Chang,et al.  Application of symbolic method to hybrid/mixed finite elements and computer implementation , 1990 .

[2]  Joze Korelc,et al.  Symbolic approach in computational mechanics and its application to the enhanced strain method , 1996 .

[3]  Dag Fritzson,et al.  The need for high-level programming support in scientific computing applied to mechanical analysis , 1992 .

[4]  Naveen Sharma Synthesis of sequential and parallel programs for finite element analysis , 1992 .

[5]  Elaine Kant,et al.  Synthesis of mathematical-modeling software , 1993, IEEE Software.

[6]  E. Gallopoulos,et al.  Problem-solving Environments For Computational Science , 1997, IEEE Computational Science and Engineering.

[7]  J. A. van Hulzen Code optimization of multivariate polynominal schemes: A pragmatic approach , 1983, EUROCAL.

[8]  Ching-yu Yang An algebraic-expressed finite element model for symbolic computation , 1994 .

[9]  D.Y.Y. Yun,et al.  The symbolic finite element analysis system , 1991 .

[10]  Gaston H. Gonnet,et al.  New results for random determination of equivalence of expressions , 1986, SYMSAC '86.

[11]  R. Ogden Non-Linear Elastic Deformations , 1984 .

[12]  Ahmed K. Noor,et al.  Computerized symbolic manipulation in nonlinear finite element analysis , 1981 .

[13]  J. Z. Zhu,et al.  The finite element method , 1977 .

[14]  Paul S. Wang,et al.  FINGER: A Symbolic System for Automatic Generation of Numerical Programs in Finite Element Analysis , 1986, J. Symb. Comput..

[15]  Stephen Wolfram,et al.  Mathematica: a system for doing mathematics by computer (2nd ed.) , 1991 .

[16]  J. Nagabhushanam,et al.  Symbolic generation of elemental matrices for finite element analysis , 1992 .

[17]  Peter Wriggers,et al.  Consistent gradient formulation for a stable enhanced strain method for large deformations , 1996 .

[18]  Paul S. Wang Symbolic Computation and Parallel Software , 1991, ACPC.