\[\newcommand{\vector}[1]{\underline{#1}} \newcommand{\vectorZero}{\vector{0}} \newcommand{\tensTwo}[1]{\boldsymbol{#1}} \newcommand{\tensTwoZero}{\tensTwo{0}} \newcommand{\tensTwoUnit}{\tensTwo{I}} \newcommand{\tensFour}[1]{\mathbb{#1}} \newcommand{\inverse}[1]{{#1}^{-1}} \newcommand{\transpose}[1]{{#1}^{T}} \newcommand{\inverseTranspose}[1]{ {#1}^{-T}} \newcommand{\vectorCmpCO}[2]{#1_{\left(#2\right)}} \newcommand{\vectorCmpCT}[2]{#1^{\left(#2\right)}} \newcommand{\tensTwoCmpCO}[3]{#1_{\left(#2 #3\right)}} \newcommand{\tensTwoCmpCT}[3]{#1^{\left(#2 #3\right)}} \newcommand{\tensTwoInva}[2]{I^{#1}_{#2}} \newcommand{\tensTwoDevia}[1]{\boldsymbol{\tilde{#1}}} \newcommand{\tensFourCmpCO}[5]{#1_{\left(#2 #3 #4 #5\right)}} \newcommand{\tensFourCmpCT}[5]{#1^{\left(#2 #3 #4 #5\right)}} \newcommand{\domain}{\Omega} \newcommand{\domainRefe}{\domain^{0}} \newcommand{\domainCurr}{\domain^{t}} \newcommand{\bound}{\partial\domain} \newcommand{\boundRefe}{\bound^{0}} \newcommand{\boundCurr}{\bound^{t}} \newcommand{\boundN}{\bound_{\textrm{N}}} \newcommand{\boundNRefe}{\boundN^{0}} \newcommand{\boundNCurr}{\boundN^{t}} \newcommand{\boundD}{\bound_{\textrm{D}}} \newcommand{\boundDRefe}{\boundD^{0}} \newcommand{\boundDCurr}{\boundD^{t}} \newcommand{\normal}{\vector{n}} \newcommand{\normalRefe}{\normal^{0}} \newcommand{\normalCurr}{\normal^{t}} \newcommand{\posi}{\vector{x}} \newcommand{\posiRefe}{\posi^{0}} \newcommand{\posiCurr}{\posi^{t}} \newcommand{\disp}{\vector{u}} \newcommand{\dispVirt}{\delta\vector{v}} \newcommand{\funcTransfor}{\vector{\varphi}^{t}} \newcommand{\gradTransfor}{\tensTwo{F}} \newcommand{\jacobTransfor}{J} \newcommand{\posiIncr}{\vector{dx}} \newcommand{\posiIncrRefe}{\posiIncr^{0}} \newcommand{\posiIncrCurr}{\posiIncr^{t}} \newcommand{\strainCmp}{\varepsilon} \newcommand{\strain}{\tensTwo{\strainCmp}} \newcommand{\EGLCmp}{E} \newcommand{\ECGDroiteCmp}{C} \newcommand{\ECGGaucheCmp}{B} \newcommand{\ELOGCmp}{{E}_{ln}} \newcommand{\EGL}{\tensTwo{\EGLCmp}} \newcommand{\ECGDroite}{\tensTwo{\ECGDroiteCmp}} \newcommand{\ECGGauche}{\tensTwo{\ECGGaucheCmp}} \newcommand{\ELOG}{\tensTwo{\ELOGCmp}} \newcommand{\EDilCmp}{C^{\star}} \newcommand{\EDil}{\tensTwo{\EDilCmp}} \newcommand{\divTensTwo}[1]{\vector{\nabla} {\cdot} #1 } \newcommand{\divVector}[1]{\vector{\nabla} {\cdot} #1 } \newcommand{\gradScal}[1]{\vector{\nabla} \times #1 } \newcommand{\gradVector}[1]{\vector{\nabla} \times #1 } \DeclareMathOperator{\rand}{rand} \DeclareMathOperator{\round}{round} \DeclareMathOperator{\trace}{trace} \newcommand{\metric} {\tensTwo{g}} \newcommand{\vectorBaseCV}[1]{\vector{g_{#1}}} \newcommand{\vectorBaseCT}[1]{\vector{g^{#1}}} \newcommand{\metricRefe} {\metric^{t}} \newcommand{\metricCurr} {\metric^{0}} \newcommand{\discVect}[1]{\lbrace #1 \rbrace} \newcommand{\discVectLigne}[1]{\langle #1 \rangle} \newcommand{\discVectZero}{\discVect{0}} \newcommand{\discVectCmp}[2]{\lbrace #1 \rbrace_{(#2)}} \newcommand{\discVectLigneCmp}[2]{\langle #1 \rangle_{(#2)}} \newcommand{\discMatr}[1]{\left[ #1 \right]} \newcommand{\discMatrZero}{\discMatr{0}} \newcommand{\discMatrCmp}[3]{\left[ #1 \right]_{(#2#3)}} \newcommand{\onQuadPoint}[2]{{#1}_{#2}} \newcommand{\onNode}[2]{{#1}^{#2}} \newcommand{\quadOrder}{k_{Q}} \newcommand{\nbQuadPoint}{n_Q} \newcommand{\quadWeight}[1]{\omega_{#1}} \newcommand{\quadPointIndex}{i_{\textrm{pg}}} \newcommand{\nodeIndex}{i_{\textrm{no}}} \newcommand{\pres}{p} \newcommand{\presRefe}{\pres^{0}} \newcommand{\presCurr}{\pres^{t}} \newcommand{\stressCmp}{\sigma} \newcommand{\stress}{\tensTwo{\stressCmp}} \newcommand{\stressPKTwoCmp}{S} \newcommand{\stressPKTwo}{\tensTwo{\stressPKTwoCmp}} \newcommand{\work}[1]{W^{#1}} \newcommand{\enerInterne}{\Psi_i} \newcommand{\yieldStress}{\sigmaCmp_{Y}} \newcommand{\youngModulus}{E} \newcommand{\youngModulusCplx}{E^{\star}} \newcommand{\poissonCoef}{\nu} \newcommand{\poissonCoefCplx}{\nu^{\star}} \newcommand{\shearModulus}{G} \newcommand{\bulkModulus}{K} \newcommand{\modulusTangent}{\tensFour{K}} \newcommand{\anglDila}{\psi} \newcommand{\anglFric}{\varphi} \newcommand{\cohesion}{c} \newcommand{\presCapi}{\pres_{c}} \newcommand{\presEau}{\pres_{w}} \newcommand{\presAir}{\pres_{a}} \newcommand{\shapeFunc}{\Phi} \newcommand{\shapeDFunc}{B} \newcommand{\measLine}{\, \mathrm{d} l} \newcommand{\measDomain}{\, \mathrm{d} \domain} \newcommand{\measBound}{\, \mathrm{d} \Gamma} \newcommand{\normEucl}[1]{\Vert{#1} \Vert } \newcommand{\derivee}[2]{#1_{, #2}} \newcommand{\soundSpeed}{c} \newcommand{\soundSpeedComp}{c_{P}} \newcommand{\soundSpeedCisa}{c_{S}} \newcommand{\posiTang}{\posi_{\tau}} \newcommand{\posiNorm}{{x}_{n}} \newcommand{\dispTang}{\disp_{\tau}} \newcommand{\dispNorm}{{u}_{n}} \newcommand{\basisVector}[1]{\vector{e}_{#1}} \newcommand{\sigmVector}{\vector{t}} \newcommand{\sigmVectorTang}{\sigmVector_{\tau}} \newcommand{\sigmVectorNorm}{t_{n}} \newcommand{\lameLambda}{\lambda} \newcommand{\lameMu}{\mu}\]

3. Analytical expressions#

In this paragraph, the analytical expressions of the visco-hyper-elastic law are described. We recall that when the shear relaxation modulus is equal to zero, we find the equations of the hyper-elastic law.

3.1. Piola-Kirchhoff 2 stress tensor of the visco_hyper_elastic law#

3.1.1. The case of hyper-elastic stresses#

We will detail the analytical expression of the Piola-Kirchhoff constraints for the hyper-elastic potential of Signorin (\(p=2\) and \(q=1\)) in the incompressible case. We therefore have the Piola-Kirchhoff stress tensor 2, representing the stresses measured in the initial configuration, which is written as:

(3.1)#\[ \ stress PKTwo = 2\ frac {\ partial {\ Psi} ^ {\ mathrm {iso}}} {\ partial\ partial\ partial\ ECGDroite}} + 2\ frac {\ partial {\ Psi} ^ {\ mathrm {vol}}}} {\ partial\ partial\ partial\ ECGDroite}\]

With both potentials:

(3.2)#\[ \begin{align}\begin{aligned} {\ Psi} ^ {\ mathrm {iso}} = {C} _ {10}\ left (\ TensTwoInVa {1} {\ EDil} - 3\ right) + {C} _ {01}\ left (\ TensTwoInVa {2} {\ EDil} - 3\ right) + {C} _ {20}\ left (\ TensTwoInVa {1} {\ EDil} -3\ right) ^ {2}\\ \ text {and}\\ {\ Psi} ^ {\ mathrm {vol}} = \ frac {\ bulkModulus} {2} {\ left (\ JacobTransfor-1\ right)} ^ {2}\end{aligned}\end{align} \]

To obtain the constraints, it is necessary to derive the potential:

(3.3)#\[\begin{split} \ left\ {\ begin {array} {ll} \ TensTwoCmpco {\ stress PKTwo ^ {\ mathrm {iso}}} {i} {j} = 2\ frac {\ partial {\ Psi} ^ {\ mathrm {iso}}}} {\ partial\ TensTwoinva {1} {\ EDil}} \ frac {\ partial\ TensTwoInVa {1} {\ EDil}} {\ partial {\ TensTwoCmpco {\ stress PKTwo} {i} {i} {j}}}} + 2\ frac {\ partial {\ Psi} ^ {\ mathrm {iso}}}} {\ partial\ TensTwoinva {2} {\ EDil}} \ frac {\ partial\ TensTwoInVa {2} {\ EDil}} {\ partial {\ TensTwoCmpco {\ stress PKTwo} {i} {j}}}}}\\ \ TensTwoCmpco {\ stress PKTwo ^ {\ mathrm {vol}}} {i} {j} = 2\ frac {\ partial {\ Psi} ^ {\ mathrm {vol}}} {\ partial\ JacobTransfor}} {\ partial\ JacobTransfor} \ frac {\ partial\ JacobTransfor} {\ partial {\ partial {\ tenstwOCmpco {\ stress PKTwo} {i} {j}}}}} \ end {array}\ right.\end{split}\]

With:

(3.4)#\[\begin{split} \ left\ {\ begin {array} {ll} \ frac {\ partial {\ Psi} ^ {\ mathrm {iso}}}} {\ partial\ TensTwoInva {1} {\ EDil}} = {C} _ {10} + 2 C_ {20}\ left (\ TensTwoInVa {1} {\ EDil} -3\ right)\\ \ frac {\ partial {\ Psi} ^ {\ mathrm {iso}}}} {\ partial\ TensTwoinva {2} {\ EDil}} = {C} _ {01} \ end {array}\ right.\end{split}\]

As well as the derivatives of the reduced invariants (cf. [bib5] _ for the derivatives of the invariants of a tensor):

(3.5)#\[ \ frac {\ partial\ TensTwoInVa {1} {\ EDil}} {\ partial {\ TensTwoCmpco {\ ECGDroite} {i} {i} {j}}}} = \ left (\ TensTwoInva {3} {\ ECGDroite}\ right) ^ {-\ frac {1} {3}} \ left ( {\ tensTwoCmpco {{\ tensTwoUnit}} {i} {j}} - \ frac {1} {3} {\ TenStwOcmpco {\ inverse {\ ECGDroite}} {i} {j}}}\ TensTwoInVa {1} {\ ECGDroite} {\} \ right)\]
(3.6)#\[ \ frac {\ partial\ TensTwoInVa {2} {\ EDil}} {\ partial {\ TensTwoCmpco {\ ECGDroite} {i} {i} {j}}}} = \ left (\ TensTwoInva {3} {\ ECGDroite}\ right) ^ {-\ frac {2} {3}} \ left ( \ tensTwoInva {1} {\ ECGDroite}\ tensTwoImpco {{\ tensTwoUnit}} {i} {j} - {\ tensTwoCmpco {\ ECGDroite} {i} {j}} - \ frac {2} {3} {\ TenStwOcmpco {\ inverse {\ ECGDroite}} {i} {j}}}\ TensTwoInVa {2} {\ ECGDroite} {\} \ right)\]
(3.7)#\[ \ frac {\ partial\ JacobTransfor} {\ partial {\ partial {\ TenStwocmpco {\ ECGDroite} {i} {j}}}}} = \ frac {1} {2}\ left (\ TensTwoInva {3} {\ ECGDroite}\ right) ^ {\ frac {1} {2}} {\ TenStwocmpco {\ inverse {\ Ocmpco {\ inverse {\ ECGDroite}}} {\ inverse {\}}} {i} {j}}\]

So here is the analytical expression for volume constraints:

(3.8)#\[ \ TensTwoCmpco {\ stress PKTwo ^ {\ mathrm {vol}}} {i} {j} = \ BulkModulus\ left (\ JacobTransfor-1\ right)\ JacobTransfor {\ TenStwocmpco {\ inverse {\ ECGDroite}} {i} {i} {j}} {j}}\]

And isochoric constraints:

(3.9)#\[ \ TensTwoCmpco {\ stress PKTwo ^ {\ mathrm {iso}}} {i} {j} = 2\ left\ lbrace \ left ({C} _ {10} + 2 C_ {20}\ left (\ TensTwoInVa {1} {\ EDil} -3\ right)\ right)\ right) {\ JacobTransfor} ^ {-\ frac {2} {3}} \ left ( \ TensTwoCmpco {{\ TensTwoUnit}} {i} {j} - \ frac {1} {3} {\ TenStwOcmpco {\ inverse {\ ECGDroite}} {i} {j}}}\ TensTwoInVa {1} {\ ECGDroite} {\} \ right) + {C} _ {01} {\ JacobTransfor} ^ {-\ frac {4} {3}} \ left (\ TensTwoInVa {1} {\ ECGDroite}\ TensTwoInVa {1} {\ TensTwoInVa {1} {\}\ TensTwoInVa {1} {\}\ TenStwoInVa {1} {\ TensTwoInVa - {\ tensTwoCmpco {\ ECGDroite} {i} {j}} - \ frac {2} {3} {\ TenStwOcmpco {\ inverse {\ ECGDroite}} {i} {j}}}\ TensTwoInVa {2} {\ ECGDroite} {\} \ right) \ right\ rbrace\]

3.1.2. Case of visco-hyper-elastic stresses#

By coupling viscosity with hyper-elasticity, the Piola-Kirchhoff 2 stress tensor becomes:

(3.10)#\[ {\ stress PKTwo} = {\ stress PKTwo} ^ {\ mathrm {iso}} + {\ stress PKTwo} ^ {\ mathrm {vol}} + \ sum_ {i=1} ^N\ TensTwo {H} _ {i}\]

3.1.3. Case of the elastic matrix of the hyperelastic law#

We will detail the analytical expression of the elastic matrix for the hyper-elastic potential of Signorin (\(p=2\) and \(q=1\)) in the incompressible case. So we have:

(3.11)#\[ \ ModulusTangent = 4\ frac {\ partial^ {2} {\ Psi} ^ {\ mathrm {iso}}}} {\ partial C\ partial C} + 4\ frac {\ partial^2 {\ Psi} ^ {\ mathrm {vol}}} {\ partial C\ partial C}\]

It is therefore necessary to derive (twice) the potential. For the isochoric part:

\[\]

: label: eq-49a

TensFourCMPCO {modulusTangent^ {mathrm {iso}}} {i} {j} {k} {k} {l} {l} = frac {partial^2 {Psi} ^ {mathrm {iso}}}

{partial^2tensTwoInVa {1} {EDil}}

frac {partial^2TensTwoInVa {1} {EDil}}

{partialTensTwoCmpco {ECGDroite} {} {i} {i} {i} {j}partialTensTwoCmpco {ECGDroite} {k} {k} {l}}

frac {partial^2 {Psi} ^ {mathrm {iso}}}

{partial^2TensTwoInVa {2} {EDil}}

frac {partial^2TensTwoInVa {2} {EDil}}

{partialTensTwoCmpco {ECGDroite} {} {i} {i} {i} {j}partialTensTwoCmpco {ECGDroite} {k} {k} {l}}

And for the volume part

\[\]

: label: eq-49b

TensFourCMPCO {modulusTangent^ {mathrm {vol}}} {i} {j} {k} {k} {l} {l} = frac {partial^2 {Psi} ^ {mathrm {vol}}}}

{partial^2JacobTransfor}

frac {partial^2JacobTransfor}

{partialTensTwoCmpco {ECGDroite} {} {i} {i} {i} {j}partialTensTwoCmpco {ECGDroite} {k} {k} {l}}

Material constants are assumed to be constant. So we have:

\[\]

: label: eq-50

frac {partial^2 {Psi} ^ {mathrm {iso}}} {partial^2TensTwoinva {1} {EDil}}} = 2 C_ {20}} text {and} frac {partial^2 {Psi} ^ {mathrm {iso}}}} {partial^2TensTwoinva {2} {EDil}}} = 0

We can see that the coefficient \(\bulkModulus\) is indeed a penalty coefficient and that its choice has an impact on the conditioning of the matrix. Derivatives of reduced invariants:

(3.12)#\[ \ frac {\ partial^2\ TensTwoInVa {1} {\ EDil}} {\ partial\ TensTwoCmpco {\ ECGDroite} {\} {i} {i} {i} {j}\ partial\ TensTwoCmpco {\ ECGDroite} {k} {k} {l}} = \ left (\ TensTwoInva {3} {\ ECGDroite}\ right) ^ {-\ frac {1} {3}} \ left ( \ TensTwoCmpco {\ inverse {\ ECGDroite}} {k} {i} {i}\ TensTwoCmpco {\ inverse {\ ECGDroite}} {l} {j}\ TensTwoInva {1} {\ ECGDroite}} - \ TensTwoCmpco {\ inverse {\ ECGDroite}} {i} {i} {j}\ TenStwocmpco {{\ TensTwoUnit}} {k} {l} - \ TensTwoCmpco {\ inverse {\ ECGDroite}} {k} {k} {l}\ TenStwocmpco {{\ TensTwoUnit}} {i} {j} + \ frac {1} {3}\ TensTwoCmpco {\ inverse {\ ECGDroite}} {k} {l}\ TensTwoCmpco {\ inverse {\ ECGDroite}} {i} {j} {j}\ TensTwoInVa {1} {\ ECGDroite}} \ right)\]
\[\]

: label: eq-52

frac {partial^2TensTwoInVa {2} {EDil}}

{partialTensTwoCmpco {ECGDroite} {} {i} {i} {i} {j}partialTensTwoCmpco {ECGDroite} {k} {k} {l}}

= -frac {2} {3}left (tensTwoInva {3} {ECGDroite}right) ^ {-frac {2} {2} {3}}

TensTwoCmpco {inverse {ECGDroite}} {k} {l} left (

tensTwoInva {1} {ECGDroite}tensTwoImpco {{tensTwoUnit}} {i} {j} - TensTwoCmpco {ECGDroite} {i} {j} {j} - frac {2} {3}TensTwoCmpco {inverse {ECGDroite}} {i} {j}TensTwoInVa {2} {ECGDroite}

right) + left (TensTwoInva {3} {ECGDroite}right) ^ {-frac {2} {3}} left (

TensTwoCmpco {{TensTwoUnit}} {k} {k} {l}TensTwoCmpco {{TensTwoUnit}} {i} {j} - TensTwoCmpco {{TensTwoUnit}} {i} {i} {k}TensTwoCmpco {{TensTwoUnit}} {j} {l} + frac {2} {3}TensTwoCmpco {inverse {ECGDroite}} {k} {i}

TensTwoCmpco {inverse {ECGDroite}} {l} {j} TensTwoInVa {2} {ECGDroite}

frac {2} {3}TensTwoCmpco {inverse {ECGDroite}} {i} {j}
left (

TensTwoInVa {1} {ECGDroite} TensTwoCmpco {{TensTwoUnit}} {k} {l} - TensTwoCmpco {ECGDroite} {k} {l}

right)

right)

(3.13)#\[ \ frac {\ partial^2\ JacobTransfor} {\ partial\ TensTwoCmpco} {\ ECGDroite} {i} {j}\ partial\ TensTwocmpco {\ ECGDroite} {\} {\} {k} {l}} = \ frac {1} {4}\ left (\ TensTwoInVa {3} {\ ECGDroite}\ right) ^ {\ frac {1} {4}} \ left ( \ TensTwoCmpco {\ inverse {\ ECGDroite}} {k} {l} \ TensTwoCmpco {\ inverse {\ ECGDroite}} {i} {j} - 2\ TenStwocmpco {\ inverse {\ ECGDroite}} {k} {i} \ TensTwoCmpco {\ inverse {\ ECGDroite}} {l} {j} \ right)\]

3.1.4. Case of the elastic matrix of the visco-hyper-elastic law#

In the case of taking viscosity into account, the analytical expression for the elastic matrix becomes:

(3.14)#\[ \ ModulusTangent = \ modulusTangent^ {\ mathrm {vol}} + \ modulusTangent^ {\ mathrm {iso}} + \ sum_ {i=1} ^N\ frac {\ partial\ TensTwo {H} _ {i}} {\ partial\ ECGDroite} = \ modulusTangent^ {\ mathrm {vol}} + \ modulusTangent^ {\ mathrm {iso}} \ left ( 1 + \ sum_ {i=1} ^N g_i\ tau_ {i} \ frac {\ left (1-\ exp\ left (-\ frac {dt} {\ tau_ {i}}\ right)\ right)\ right)} {dt} \ right)\]