Hyper
Solve static non-linear mechanics problems using Finite Elements Method for hyperelastic materials
Install / Use
/learn @compmec/HyperREADME
Hyper-elastic materials
Introduction
This repository contains the code used in the cours HYPER (Numerical Methods for NonLinear Mechanics) at the École Centrale de Nantes.
This cours describes the fundamentals of Hyper-elastic materials and how to implement finite element method with them.
Subject
Hyper-elastic materials are used when the hypothesis of small deformations is not valid anymore.
For exemple, applying pressure in a steel cylinder is different from applying pressure in a rubber pipe, which makes the pipe inflates and reduces its thickness:

The main difference between the approachs are:
- Linear elastic materials
- Valid for small deformations
- The stiffness matrix is constant
- Linear problem: solves a directly a single linear system
- Hyper-elastic materials
- Valid for small and large deformations
- Needs recalculation of stiffness matrix, to consider the deformed space
- Non-linear problems: Needs to 'walk', solving a linear system for each step

How to use
Python is used to implement the finite element method, along with the libraries:
- Numpy: Used for tensor calculs
- Gmsh: Used to get the mesh and elements
- Scipy: Used to get the mesh and elements
To install them, you can either use Anaconda that installs all you need, or you can install them manually:
pip install numpy
pip install scipy
pip install gmsh
After getting the libraries and downloading your own copy, you can test it with pytest:
pip install pytest
pytest
There are some examples in the folder examples explaining how to run
