Attention: So far I have no working solver based on the nonlinear structural analysis components of this version of Animath. I have checked the code for the matrix generators multiple times, still no solver was able to produce the expected results.
The reason I proceed is that in the upcoming version 2.0 of Animath the testing of solvers will work much faster.
This is the most basic test that is applied to a new version of the code. The Poisson equation is a classic static test case for verification of the basic functioning of the matrix and load vector generators and the boundary condition code.
This test now confirms that cubic interpolation inside volumes works.
It is configured for use with a version of Animath that uses Sparse Lib/IML++ as iterative matrix solver.
The object that is deformed in this simulation is the Animath logo. The logo was drawn with Povray, then imported by using a simple isosurface code. So it is basically a refined version of the linear elastic logo of version 1.8. The material is now Neo-Hookian and also geometric non-linearity is accounted for, in the stiffness (nomore unncessary regeneration of the mass matrix as in the 1.10 version of this demo).
The solver is based on the same Newmark-scheme and Newton-Raphson iterations as the tensile test simulation. Please note that even though the stiffness matrix generator has been carefully checked, the neo-Hookean material simulation is still not sufficiently tested to be considered safe.
I owe two persons credit for this, primarily Tomoaki Akitomi of Oshima Lab, who brought up the idea of using Povray for input geometries, then Prof. Micheal Holst of UC San Diego, whose UCSD logo simulation that is featured on the FETK homepage and in the paper "R. Bank and M. Holst: A New Paradigm For Parallel Adaptive Meshing Algorithms", brought me on the idea of creating this particular demo program.
This a simple static tensile test simulation. The non-linear simulation is based on a dynamic solver that I found in "K-J Bathe: Finite Element Procedures", it employs Newmark's time-stepping and the Newton-Raphson method for solving the non-linear equation. The method is at first stable and converges as expected, but after a while it seems to leave the equilibirum state and begins to slowly diverge. However, I ran in to severe stability problems with a simple Newton-Raphson-based static solver, and a more advanced iterative/incremental approach. Results from this non-linear simulation have not yet been compared to reference values, since computation is rather time demanding.
After finishing one simulation (please use the -h/--help switch to obtain a list of the possible options), the strain can be plotted e.g. with
This code simulates the lid-driven cavity, a classic CFD problem that was also among of the Oshima Lab standard tests for new flow solver codes. Both solvers that are available in Animath (now, integral components), the Characteristic-Galerkin one and the SUPG one, can be used in this demo. If you would like to use the CG solver (with cubic/quadratic interpolation) please build with the Makefile.surc makefile.
$make -f Makefile.surc cavity