Applying external pressure on a large deformed media

I need to solve a hyperelastic problem in the form seen in the FEniCS tutorial.

\Pi = \int_{\Omega} \psi(u) \, {\rm d} x - \int_{\Omega} B \cdot u \, {\rm d} x - \int_{\partial\Omega} T \cdot u \, {\rm d} s.

The problem I have with this variational formulation is that it considers that the traction force is applied to the reference area. Since the Neumann boundary conditions in my code are in the form of external pressures, I will need the traction force to be applied to the deformed area, not the undeformed one. I just wanted to ask how do I need to modify the equation above to be compatible with my simulations.

You would need to use Nanson’s formula (as derived clearly in a Wikipedia article) to obtain \mathbf{n}da, where \mathbf{n} is the deformed normal (i.e., the direction in which a pressure traction would act) and da is the measure for integration over the deformed surface. In the notation of the linked Wikipedia article, “dA” would correspond to ds in a total Lagrangian implementation (like the hyperelasticity demo), and \mathbf{N} would be FacetNormal(mesh).

Also, you would have to add the traction term directly to the residual to get a problem like

D_\mathbf{v}\Pi - \int_{\partial\Omega}\mathbf{t}\cdot\mathbf{v}\,da = 0\text{ ,}

instead of adding \int_{\partial\Omega}\mathbf{T}\cdot\mathbf{u}\,dA to \Pi. Note that

D_{\mathbf{v}}\int_{\partial\Omega}\mathbf{t}\cdot\mathbf{u}\,da \neq \int_{\partial\Omega}\mathbf{t}\cdot\mathbf{v}\,da\text{ ,}

because \mathbf{t} and da also depend on \mathbf{u}.

3 Likes

Thanks a lot, I did exactly as you said and yeah it works perfectly.

Hi,

I am also encountering the same issue. Could you please send me the corrected FEnics code?

Thanks for raising the issue.

I have a question please, I wasn’t able to derive this part :

How was the second term derived on the current configuration, since the derivation was done on Π defined on the original configuration, unless we have the property ∫_{∂Ω{(t)}} \pmb t⋅\pmb v da = ∫_{∂Ω_0} \pmb T⋅\pmb v dA ? (in which case we don’t need a transformation ?)

What I could find is \pmb T = \pmb P . \pmb N = J ∣ \pmb F ^{-T} \pmb N ∣ \pmb t on ∂Ω_0 (also same formula is found in Cardiovascular Mathematics, 2009 ) using also Nanson’s formula, giving eventually

D_v Π − ∫_{∂Ω_0} J ∣ \pmb F ^{-T} \pmb N ∣ \pmb t dA = 0 .
Do you find the same formula ? (But that assumes that D_v Π − ∫_{∂Ω_0} \pmb T⋅\pmb v dA=0 and not D_v Π − ∫_{∂Ω} \pmb t⋅\pmb v da=0

I appreciate the help. Thank you in advance.
@kamensky