What's new ?
2009/09/19 Getfem++-4.0.0. released
This is a major update to Getfem++. The main changes is the introduction of a new model bricks system. The old system is kept and compatibility with 3.x releases is globally ensured. However some functionalities are deprecated. The main changes are:
- The mesh_fem object has undergone significant changes. Now it is possible to perform linear combination of degrees of freedom in order to describe some special finite element spaces. The main application is to obtain a finite element space reduced on a boundary or a curve. But it can be used also to prescibe directly some matching condition. The main change in the use of the mesh_fem object is the introduction of "basic" and "reduced" dofs. See the documentation.
- A new algorithm gmm_range_basis allows to select a basis between the columns of a matrix. It has been specially designed to select a basis of the trace on a boundary of a finite element space.
- The partial_mesh_fem object has been completely changed. It is now a lighter object which is intensively used in the new model bricks to obtain finite element spaces on a boundary.
- Introduction of the new model brick system. The bricks are more simple to build and it is now really designed to the representation of coupled/multiphysics models. A generic manner to deals with time dependent models from static models is also introduced.
- Python interface uses Numpy instead of Numarray.
2008/09/09 Getfem++-3.1. minor version
A certain number of small bug fixed in Getfem++ and Gmm++. Clarification of copyrights.
2007/07/12 Getfem++-3.0.1. minor update
Two bugs were fixed: a memory leakage problem and a bad identification of some dofs.
2007/06/27 Getfem++-3.0 released
Getfem++ 3.0 is now available !
Not so many changes, but some of them are incompatible with getfem 2.0:
- The Getfem and Gmm header files have been moved into their respective subdirectories. So, as a consequence, the include directives have to be updated:
#include "gmm_xxx.h" should be replaced with #include "gmm/gmm_xxx.h"
#include "getfem_xxx.h" should be replaced with #include "getfem/getfem_xxx.h"
- The Getfem interface (python and matlab) is now included in the Getfem tar.gz file, in the 'interface' subdirectory. They can be enabled with the '--enable-python' or '--enable-matlab' switch of the configure script
- Some C1 composite elements have been added (triangles and quadrilaterals)
- Levelset support has been improved
2006/11/10 Getfem++-2.0.2, minor update
The GMSH mesh import has been fixed.
2006/04/06 Getfem++-2.0.1, minor update
Two bugs were fixed which could be toggled in particular conditions with nonlinear terms.
2006/03/20 Getfem++-2.0, Gmm++-2.0 and Getfem-Interface 2.0 released
This is a major update to Getfem++, which make some backward-incompatible changes:
- the old mesh_fem has been split into two disjoint classes: mesh_fem which handles all that is related to FEM, and mesh_im which handles the integration methods on a mesh.
- the old getfem::getfem_mesh class has been renamed to getfem::mesh
- the "boundaries" which were attached to a mesh_fem in previous versions, are now attached to a mesh, and they are now called "regions" (because they can stored boundaries, and also sets of convexes).
- the model bricks have been reworked -- especially the Dirichlet conditions.
Some news features have been introduced in this release:
- introduction of level-set objects. Integration methods can be cut with respect to these level-set and discontinuous elements across the level-set are provided.
- parallelization of the assembly.
- interface to MUMPS.
- many news elements, Hermite and vectorial elements are now fully supported: 1D, 2D and 3D hermite, Argyris triangle, HCT triangle, RT0 and Nedelec elements are now available.
- automatic mesh refinement.
Major changes for the matlab and python interface: they follow the changes that occured in Getfem. An interface to the Getfem++ model bricks has been added.
Next releases of Getfem++ will try to maintain backward compatability with this release.
2005/01/05 Getfem++ 1.7, Gmm++ 1.7 and Getfem-Interface 1.7 released
An important number of improvements have been done on Getfem++ 1.7. Note that the next release will be Getfem 2.0, some of its changes won't maintain backward compatibility with getfem++-1.7.
- Introduction of the "model brick" system, which provides a general framework for the solution of common PDEs. Each brick is dedicated to a specific task (i.e. "handle Dirichlet conditions", "assembly of the Stokes Problem", "solve a linear system", etc.). These bricks are then connected to each other. Examples of use can be found in the "tests/" directory of Getfem++.
- New models : Small strain plasticity, large strain elasticity, contact and friction conditions, linearized plates, incompressibility in small and large strain elasticity.
- Simplifications and optimizations in elementary computations.
- A direct sparse solver (SuperLU 3.0) is available "out of the box"
- Ability to export results to VTK and OpenDX.
Major changes in Gmm++ 1.7:
- New preconditionner ILUTP.
- A BFGS algorithm has been developped.
- gmm++ now handles (valid) operations mixing complex and scalars.
- gmm::real_part(V) and gmm::imag_part(V) gives a possibly writable reference on the real and imaginary part of a complex vector or matrix.
- the SuperLU interface has been updated for SuperLU 3.0.
getfem-matlab has been renamed "getfem-interface" since it now provides an interface for Matlab and Python (with the Numarray package). Note that, while it is documented and working, the python interface is still considered a "work in progress". You have to enable it explicitly with "./configure --enable-python". An example of use can be found here. An interface to the gmm++ sparse matrices and solvers is also provided.
2004/01/23 Getfem++ 1.6 and Gmm++ 1.6 released
Getfem++ 1.6 is mostly a bugfix and performance improvements release.
-
Some new integration methods were added (high order methods for
triangles such as "IM_TRIANGLE(19)" from
P. Solin, K. Segeth and I. Dolezel: "Higher-Order & Finite Element Methods", Chapman & Hall/CRC Press, 2003 ). - Performance of interpolation and geometric transformation inversion was much improved.
- Support for emc2 meshes
The Gmm++ library has been much improved version 1.6 and version 1.5. We have especially focused on its robustness.
- Many bugs were fixed, especially for complex matrices.
- QR algorithms were introduced for dense matrices.
- A LAPACK/ATLAS interface is available.
- SuperLU 2.0 interface.
- Small simplification in
linalg_traitsstructure. - Generic resize procedures for vector and matrices were introduced.
- It is possible to use a column or row matrix view of a vector with
gmm::row_vectorandgmm::col_vector. - Generic
gmm::reshapeandgmm::conjugatedfunctions. - Intensive tests with random type of matrices and vectors.



