\[\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}\]
2. Viscous formulation#
2.1. Piola-Kirchhoff stress tensor 2#
The viscosity is modelled by introducing a Prony series on the isochoric part of the second Piola-Kirchhoff tensor \({\stressPKTwo}^{\mathrm{iso}}\). The Piola-Kirchhoff stress tensor for the visco-elastic part is written as the finite sum of \(N\) tensors \(\tensTwo{H}_{i}\)
(2.1)#\[ {\ stress PKTwo} ^\ mathrm {visc}
=
\ sum_ {i=1} ^N\ TensTwo {H} _ {i}\]
With,
(2.2)#\[\begin{split} \ TensTwo {H} _ {i} |_ {t+\ Delta t}
=
\ exp\ left (-\ frac {dt} {\ tau_ {i}}\ right)\ left. \ tensTwo {H} _ {i}\ right\ green_ {t}
+
g_i\ tau_ {i}\ left (1-\ exp\ left (-\ frac {dt} {\ tau_ {i}}\ right)\ right)\ right)\ frac {\ left ({\ left ({\ stress PKTwo}} ^\\ stress} ^\ mathrm {iso}\ left ({\ stress}} ^\ mathrm {iso}\ green_ {t+\ Delta t}
-
{\ stress PKTwo} ^\ mathrm {iso}\ green_ {t}\ right)} {dt}\end{split}\]
The Prony series depends on two lists of parameters \({g_i}\) and \({\tau_i}\), which respectively present the long-term shear relaxation module and the relaxation time correspondent.
2.2. Lagrangian elasticity tensor#
The elastic stiffness tensor (« tangent » matrix for Newton’s problem) is given by deriving the stress tensor:
(2.3)#\[ \ ModulusTangent
=
\ sum_ {i=1} ^N\ frac {\ partial\ TensTwo {H} _ {i}} {\ partial\ ECGDroite}\]