Linear¶
Constitutive theory¶
For the linear poromechanics model, the strain energy density is given by
where \(\firstlame_{u} = \firstlame_{d} + B^2 M\) is undrained first Lamé parameter while \(\firstlame_{d}, \secondlame_{d}\) are Lamé parameters measured in drained condition (i.e., Lamé parameters of the solid skeleton frame), \(B, M\) are the Biot effective stress coefficient and Biot modulus defined by
with mixture bulk modulus \(\bulk_{d}\) measured in drained condition (solid skeleton bulk modulus, also referred to as \(k^{\rm{skel}}\) in other references) and solid and pore fluid bulk moduli \(\bulk_\rs, \bulk_\rf\), respectively.
To derive the constitutive law (stress-strain relationship) for the linear poroelasticity model we have
where , \(\bm\sigma' = \firstlame_{d} (\trace \bm\varepsilon) \bm{I} + 2 \, \secondlame_{d} \, \bm{\varepsilon}\) is effective stress, \(p\) is pore pressure, and the variation of pore fluid content \(\zeta\) is
Strong and weak formulations¶
The strong form of linear poroelasticity (mixed \((\bm u\text{-}p_\rf)\) formulation) for constitutive equation (291) based on conservation of momentum (for static case) and mass may be stated as follows: Given body forces \(\bm f^\rs, \bm f^\rf\) and volumetric injected fluid rate \(\dot{\gamma}\), Dirichlet boundaries \(\bar{\bm u}, \bar{p}\), applied traction \(\bar{\bm t}\) and fluid flux \(\bar{s}\) and initial conditions \(\bm u_0, p_{\rf,0}\), find the displacement and pressure variables \((\bm u, p_\rf) \in \mathcal{V} \times \mathcal{Q} \) (here \(\mathcal{V} = H^1(\Omega), \mathcal{Q} = H^1(\Omega) \) ), such that:
with \(\bm n\) be the unit normal on the boundary and in the conservation of mass (second equation), we replaced \(\zeta\) from constitutive equation (292). The weak form can be derived as:
where we have used Darcy’s law \(\dot{\bm w} = - \varkappa \left(\nabla p_\rf - \bm f^\rf \right)\) (equation (36) for static case).
Generic weak formulation¶
The generic weak formulation for linear poroelasticity is similar to incompressible elasticity explained in Generic weak form (mixed fields). However, in equation (294) we have time derivatives of displacement and pressure fields and for deriving jacobian we need to add \(\mathrm{shift_v}\) as shown in (224).
For linear poroelasticity described in (294) we have
where \(\mathrm{shift_v}\) evaluated at time \(\mathrm{shift_v} = \frac{\partial\dot{\phi}}{\partial\phi}|_{\phi_n}\) for generic variable \(\phi\) and we have used the linearization of time dependent variables explained (224), and we assume body forces \(\bm{f}^\alpha\) are negligible.
For dynamic example acceleration is not zero and we use the PETSc Timestepper (TS) object to manage timestepping. Specifically, Ratel uses the Generalized-Alpha method for second order systems (TSALPHA2
) to solve the second order system of equations. More information on the PETSc TSALPHA2
time stepper can be found in the PETSc documentation TS.
For linear poroelastodynamics we consider the solid accelearation in the first equation and in second equation we use (36) (assume \(\ddot{\bm w}=0\)). That results in adding following terms:
being added to the first and second equations of (294), where \(\rho^b\) (the mixture density) is defined in (35) and the jacobian is
where \(\mathrm{shift_a}\) is related to the inverse of time step \(\Delta t\) square (see (224)), such that