A GPU-accelerated finite element analysis framework with JAX.
Project description
FEAX
FEAX (Finite Element Analysis with JAX) is a compact, high-performance finite element analysis engine built on JAX. It provides an API for solving partial differential equations on XLA.
What is FEAX?
FEAX combines automatic differentiation with finite element methods. It's designed for:
- Differentiable Physics: Compute gradients through entire FE simulations for optimization, inverse problems, and machine learning
- High Performance: JIT compilation and vectorization through JAX for maximum computational efficiency
JAX Transformations in FEAX
FEAX leverages JAX's powerful transformation system to enable:
- Automatic Differentiation: Compute exact gradients through finite element solvers
- JIT Compilation: Compile to optimized machine code for maximum performance
- Vectorization: Efficiently process multiple scenarios in parallel with
vmap - Parallelization: Scale across multiple devices with
pmap
Installation
Use pip to install:
pip install feax
To install the latest commit from the main branch:
pip install git+https://github.com/Naruki-Ichihara/feax.git@main
Documentation
feax.flat
Flat (Feax Lattice) is a utility for asymptotic homogenization of lattice unit cell.
License
FEAX is licensed under the GNU General Public License v3.0. See LICENSE for the full license text.
Acknowledgments
FEAX builds upon the excellent work of:
- JAX for automatic differentiation and compilation
- JAX-FEM for inspiration and reference implementations
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file feax-0.0.6.dev13.tar.gz.
File metadata
- Download URL: feax-0.0.6.dev13.tar.gz
- Upload date:
- Size: 4.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
535b1eb408b64c89244afe03519dd35ec8ff62de3f51bd24bf8dd820daa92752
|
|
| MD5 |
e3253bb12974fd73904dd8b33b9e723f
|
|
| BLAKE2b-256 |
a74c59f4a06a7fbd5849834183fd6609647a404b9b1a83416af5a53b1b81d101
|
File details
Details for the file feax-0.0.6.dev13-py3-none-any.whl.
File metadata
- Download URL: feax-0.0.6.dev13-py3-none-any.whl
- Upload date:
- Size: 107.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25dc9ed16e963a3c153c5e60799a3267f0c9a70f504e3a94911117cd853796f5
|
|
| MD5 |
4a1a0f1cc74070b85f21731e89687e65
|
|
| BLAKE2b-256 |
75571ac6440216828bbfe577184c597c25137ce54a3b94f332a07f975dd6f2c9
|