Nonlinear Hyperelasticity Problem
This tutorial demonstrates solving nonlinear hyperelasticity problems using FEAX. We consider a beam subjected to a torsional surface traction using a Neo-Hookean material model, showcasing Newton's method for nonlinear finite element analysis.
Problem Description
Consider a beam with the left face clamped and a torsional traction applied to the right face. The governing equation is:
where is the first Piola-Kirchhoff stress tensor. Unlike linear elasticity, the stress depends nonlinearly on the deformation gradient .
Neo-Hookean Material Model
For hyperelastic materials, the stress derives from a strain energy density function :
The compressible Neo-Hookean model uses:
where , , , and .
Setup
import feax as fe
import jax
import jax.numpy as np
import os
# Box geometry
Lx, Ly, Lz = 5., 1., 1.
mesh_size = 0.1
# Cross-section centroid of the right face (used in torsional traction)
y_c = Ly / 2.
z_c = Lz / 2.
# Torsional traction magnitude
T = 20.
Problem Definition: Energy-Based Approach
FEAX leverages JAX's automatic differentiation to compute stress from energy. Define the energy function and let JAX compute .
The torsional traction on the right face is tangential in the yz-plane, creating a torque about the x-axis: