Skip to main content

fedoo

Finite element library FEDOO Logo

About

Fedoo is a free open source Finite Element library developed in Python. It is mainly dedicated for mechanical problems but is easily developpable for other kind of problems (thermal laws already included). One of the main application of fedoo is to simulate the mechanical response of heterogeneous materials. For that purpose, fedoo is part of the 3mah set that also include microgen for the CAD and meshing of heterogeneous materials and simcoon for the non linear material constitutive models in finite strain.

Here are the main features:

  • New A full interactive viewer is now included to improve the results visualization.
  • Entirely written in Python 3
  • Implicit finite element Solver for Static and Dynamics poblems
  • Finite strain constitutive laws based on the simcoon library (simcoon is developped in C++ allowing a fast execution)
  • Geometrical non linearities based on the simcoon library
  • Wide constitutive equation library including composites law, elasto-plastic law, ...
  • Include many types of elements like 2D, 3D, beam, plate, cohesive elements, ...
  • Homogeneisation: Easy application of periodic boundary conditions and fast automatic extraction of mean tangent matrices
  • Embedded results visualization using the powerfull pyvista library
  • Multi-point constraints
  • Easy scripting
  • Good compromise between a reasonable execution time and an open and lisible code. fedoo is not the fastest finite element software and doesn't intend to be, but a particular attention is paid to the computational cost.
  • Contact in 2D and 3D, Self contact
  • And many other....
PyPI package PyPI version
Conda package Conda
Documentation Documentation
License License
Website Website

Documentation

Installation

Installation with conda with recommanded dependencices:

conda install -c conda-forge -c set3mah fedoo

Minimal installation with pip:

pip install fedoo

Installation with pip including recommanded dependencies:

pip install fedoo[all]

In mac OS make sure to use petsc4py (included in the conda package) or scikit-umfpack. To install scikit-umfpack, it is recommanded to use pip (the conda package is outdated):

pip install scikit-umpack>=0.41 

For performance considerations, it is in general strongly recommended to make sure that numpy is correctly installed using a fast implementation of BLAS (MKL for windows or linux or Accelerate for mac OS).

In mac OS, the best way to take the most of MacOs accelerate framework is to install numpy from sources first:

pip install cython pybind11
pip install --no-binary :all: numpy

Also, make sure that the default number of threads is not leading to performance degradations: using explicit number of threads might help, see below for extensive control of threads number.

#Set the number of threads
import os

n_threads = 4
os.environ["OMP_NUM_THREADS"] = f"{n_threads}"
os.environ["OPENBLAS_NUM_THREADS"] = f"{n_threads}"
os.environ["MKL_NUM_THREADS"] = f"{n_threads}"
os.environ["VECLIB_MAXIMUM_THREADS"] = f"{n_threads}"
os.environ["NUMEXPR_NUM_THREADS"] = f"{n_threads}"

Metadata

Release files for fedoo 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fedoo 1.0.1
File Size Uploaded
fedoo-1.0.1.tar.gz 15.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for fedoo 1.0.1
File Interpreter ABI Platform
fedoo-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 15.9 MB

Release files / fedoo-1.0.1.tar.gz

Download URL fedoo-1.0.1.tar.gz
Size 15.4 MB
Tags Source
SHA-256 checksum
How to use checksums
dc69e419eb071e02d8b9b4c17de6e50ec97612be5084717900becdf621f84c7a
BLAKE2b-256 checksum
How to use checksums
79e98783759b37b24b4dfb4d0c01f31b0b87cccffe52e109ef6fec86c3df8319
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / fedoo-1.0.1-py3-none-any.whl

Download URL fedoo-1.0.1-py3-none-any.whl
Size 527.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d42bc3ba6f2d85bd4a1b329f453259c976fb1e461095bd3c68e9a98bd0989fab
BLAKE2b-256 checksum
How to use checksums
c5e5e971b4d134baf76198e8bc24ada63df1ab71f4b31a96b406c4cd7222c609
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page