Skip to main content

Finite elements library

Project description

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

The documentation is provided by readthedocs at https://fedoo.readthedocs.io.

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}"

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fedoo-0.8.1.tar.gz (15.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fedoo-0.8.1-py3-none-any.whl (356.5 kB view details)

Uploaded Python 3

File details

Details for the file fedoo-0.8.1.tar.gz.

File metadata

  • Download URL: fedoo-0.8.1.tar.gz
  • Upload date:
  • Size: 15.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fedoo-0.8.1.tar.gz
Algorithm Hash digest
SHA256 a743809c6328af1880234d7250c2122208ed055a41077ee286c8405919fc331b
MD5 a96c8e328a996c4fd41d60e0edf107d0
BLAKE2b-256 b56ece5ee9b29c5d3b0793c70dd2a27b2467b988b4968da42c0fa42d4a03b9af

See more details on using hashes here.

File details

Details for the file fedoo-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: fedoo-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 356.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fedoo-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 99f34bb06c1232848a669ddd80b11a5ebdf7026a0d309b1fcbdcc0639842c804
MD5 1970ad3c54ed494f532e5ebd26e9b7f3
BLAKE2b-256 dc02ab05911cc62e4a9cea39e3a26013c4569bec11d94a80dbc0f99c3f61efc3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page