Skip to content
/ hyper Public

Solve static non-linear mechanics problems using Finite Elements Method for hyperelastic materials

License

Notifications You must be signed in to change notification settings

compmec/hyper

Repository files navigation

Build Status

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:

Neo Hook model - Rubber

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

Difference linear / nonlinear

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

About

Solve static non-linear mechanics problems using Finite Elements Method for hyperelastic materials

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published