Skip to main content

FEAX API Reference

Complete API documentation for FEAX (Finite Element Analysis with JAX).

Core Modules​

Problem Definition​

Finite Elements​

  • feax.fe - FiniteElement class definitions
  • feax.basis - Shape functions and quadrature rules

Assembly & Solving​

  • feax.assembler - System matrix and residual assembly
  • feax.solver - High-level solver creation (create_solver)
  • feax.solvers - Solver infrastructure (options, linear, Newton, AMG, reduced)
  • feax.solvers.direct - CPU host-side direct backends: spsolve, umfpack, cholmod
  • feax.solvers.time_solver - Time stepping (TimePipeline, ImplicitPipeline, ExplicitPipeline, TimeConfig, run)
  • feax.solvers.eigen - Linear buckling (create_linear_buckling_solver; backends "sparse" (ARPACK, default), "dense", "matfree", and "cudss" GPU shift-invert)
  • feax.solution - Solution return type (.dofs, .field(i), .node_var(component=))

Boundary Conditions​

Internal Variables​

Utilities​

  • feax.utils - Utility functions (save_sol, XDMFWriter, zero_like_initial_guess)

Mechanics​

Constitutive models for finite element simulations:

Topology Optimization (gene)​

Density-based topology optimization with adaptive remeshing:

Experimental​

APIs that are usable but may change without a deprecation cycle:

  • feax.experimental.cmg - Matrix-free O(band) geometric multigrid on a StructuredGrid band (NarrowBandCMG, ScalarMaterial, KernelMaterial, build_geometry)
  • feax.experimental.narrowband - Moving-band OC loop and multires bootstrap (oc_update, run_narrowband_oc, run_narrowband_multires, create_sensitivity_filter)
  • feax.experimental.mma - Pure-JAX MMA / GCMMA (MMA, GCMMA)

Flat Toolkit​

Lattice material analysis and homogenization:

Browse All​

Use the sidebar to explore all classes, functions, and modules in detail.