[cig-commits] commit: Cleanup of notation (switch m and n subscripts).
Mercurial
hg at geodynamics.org
Thu Sep 1 10:52:42 PDT 2011
changeset: 63:f2ae0c7c8915
tag: tip
user: Brad Aagaard <baagaard at usgs.gov>
date: Thu Sep 01 10:52:38 2011 -0700
files: faultRup.tex
description:
Cleanup of notation (switch m and n subscripts).
diff -r 32a982452b80 -r f2ae0c7c8915 faultRup.tex
--- a/faultRup.tex Thu Sep 01 10:09:41 2011 -0700
+++ b/faultRup.tex Thu Sep 01 10:52:38 2011 -0700
@@ -254,48 +254,48 @@ The rotation matrix $\tensor{R}_T$ is th
$\tensor{R}$ and is composed of blocks that are the transpose of the
corresponding blocks in $\tensor{R}$.
-We express the trial solution $\vec{u}$, weighting function
-$\vec{\phi}$, and Lagrange multipliers $\vec{l}$ as linear combinations
+We express the weighting function $\vec{\phi}$, trial solution
+$\vec{u}$, and Lagrange multipliers $\vec{l}$ as linear combinations
of basis functions,
\begin{gather}
-\vec{u} = \sum_{m} \vec{u}_m N_m, \\
-\vec{\phi} = \sum_{n} \vec{a}_n N_n, \\
+\vec{\phi} = \sum_{n} \vec{a}_m N_m, \\
+\vec{u} = \sum_{m} \vec{u}_n N_n, \\
\vec{l} = \sum_{p} \vec{l}_p N_p.
\end{gather}
Because the weighting function is zero on $S_u$, the number of basis
functions for the trial solution $\vec{u}$ is generally greater than
the number of basis functions for the weighting function $\vec{\phi}$,
-i.e., $m > n$. The basis functions for the Lagrange multipliers are
+i.e., $n > m$. The basis functions for the Lagrange multipliers are
associated with the fault surface, which is a lower dimension than the
domain, so $p \ll n$ in most cases. If we express the linear
combination of basis functions in terms of a matrix-vector product, we
have
\begin{gather}
-\vec{u} = \tensor{N}_m \vec{u}_m, \\
-\vec{\phi} = \tensor{N}_n \vec{a}_n, \\
+\vec{\phi} = \tensor{N}_m \vec{a}_m, \\
+\vec{u} = \tensor{N}_n \vec{u}_n, \\
\vec{l} = \tensor{N}_p \vec{l}_p.
\end{gather}
The weighting function is
-arbitrary, so the integrands must be zero for all $\vec{a}_n$, which
+arbitrary, so the integrands must be zero for all $\vec{a}_m$, which
leads to
\begin{gather}
-- \int_{V} \nabla \tensor{N}_n^T \cdot \tensor{\sigma} \, dV
-+ \int_{S_T} \tensor{N}_n^T \vec{T} \, dS
-+ \int_{S_f^{+}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p \, dS
-- \int_{S_f^{-}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p \, dS
-+ \int_{V} \tensor{N}_n^T \vec{f} \, dV
-- \int_{V} \rho \tensor{N}_n^T \tensor{N}_m \frac{\partial^2 \vec{u}_m}{\partial
+- \int_{V} \nabla \tensor{N}_m^T \cdot \tensor{\sigma} \, dV
++ \int_{S_T} \tensor{N}_m^T \vec{T} \, dS
++ \int_{S_f^{+}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p \, dS
+- \int_{S_f^{-}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p \, dS
++ \int_{V} \tensor{N}_m^T \vec{f} \, dV
+- \int_{V} \rho \tensor{N}_m^T \tensor{N}_n \frac{\partial^2 \vec{u}_n}{\partial
t^2} \, dV
=\vec{0}, \\
%
\int_{S_f} \tensor{N}_p^T
\left( \tensor{R}_T \vec{d}
- - \tensor{N}_{m^+} \vec{u}_{m^+} + \tensor{N}_{m^-} \vec{u}_{m^-}
+ - \tensor{N}_{n^+} \vec{u}_{n^+} + \tensor{N}_{n^-} \vec{u}_{n^-}
\right)
\, dS = \vec{0}.
\end{gather}
-We want to solve these equations for the coefficients $\vec{u}_m$ and
+We want to solve these equations for the coefficients $\vec{u}_n$ and
$\vec{l}_p$ subject to $\vec{u} = \vec{u}_0 \text{ on }S_u$.
For nonlinear bulk rheologies it is convenient to work with the
@@ -315,18 +315,22 @@ and the loading conditions. Considering
and the loading conditions. Considering the deformation at time
$\tpdt$,
\begin{gather}
-\label{eqn:quasi-static:residual:domain}
-- \int_{V} \nabla \tensor{N}_n^T \cdot \tensor{\sigma}(\tpdt) \, dV
-+ \int_{S_T} \tensor{N}_n^T \vec{T}(\tpdt) \, dS
-+ \int_{S_f^{+}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
-- \int_{S_f^{-}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
-+ \int_{V} \tensor{N}_n^T \vec{f}(\tpdt) \, dV
-=\vec{0}, \\
+ \label{eqn:quasi-static:residual:domain}
+ \begin{split}
+ - \int_{V} \nabla \tensor{N}_m^T \cdot \tensor{\sigma}(\tpdt) \, dV
+ + \int_{S_T} \tensor{N}_m^T \vec{T}(\tpdt) \, dS
+ + \int_{S_f^{+}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
+ - \int_{S_f^{-}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
+ \\
+ + \int_{V} \tensor{N}_m^T \vec{f}(\tpdt) \, dV
+ =\vec{0},
+ \end{split}
+ \\
%
\label{eqn:quasi-static:residual:fault}
\int_{S_f} \tensor{N}_p^T
\left( \tensor{R}_T \vec{d}(\tpdt)
- - \tensor{N}_{m^+} \vec{u}_{m^+}(\tpdt) + \tensor{N}_{m^-} \vec{u}_{m^-}(\tpdt)
+ - \tensor{N}_{n^+} \vec{u}_{n^+}(\tpdt) + \tensor{N}_{n^-} \vec{u}_{n^-}(\tpdt)
\right)
\, dS = \vec{0}.
\end{gather}
@@ -338,25 +342,25 @@ processing \cite{PETSc:web:page,PETSc:ma
processing \cite{PETSc:web:page,PETSc:manual,PETSC:efficient}. In
solving the system, we compute the residual (i.e., $\vec{r} = \vec{b}
- \tensor{A} \vec{u}$ and the Jacobian of the system ($A$). In our
-case the solution is $\vec{u} = \left( \begin{smallmatrix} \vec{u}_m
- \\ \vec{l}_m \end{smallmatrix} \right)$, and the residual is
+case the solution is $\vec{u} = \left( \begin{smallmatrix} \vec{u}_n
+ \\ \vec{l}_n \end{smallmatrix} \right)$, and the residual is
simply the left hand sides of
equations~(\ref{eqn:quasi-static:residual:domain})
and~(\ref{eqn:quasi-static:residual:fault}). That is,
\begin{equation}
\vec{r} = \left( \begin{array}{c}
\begin{aligned}
- - \int_{V} \nabla \tensor{N}_n^T \cdot \tensor{\sigma}(\tpdt) \, dV
- + \int_{S_T} \tensor{N}_n^T \vec{T}(\tpdt) \, dS
- + \int_{S_f^{+}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
- &- \int_{S_f^{-}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
+ - \int_{V} \nabla \tensor{N}_m^T \cdot \tensor{\sigma}(\tpdt) \, dV
+ + \int_{S_T} \tensor{N}_m^T \vec{T}(\tpdt) \, dS
+ + \int_{S_f^{+}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
+ &- \int_{S_f^{-}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
\\
- &+ \int_{V} \tensor{N}_n^T \vec{f}(\tpdt) \, dV
+ &+ \int_{V} \tensor{N}_m^T \vec{f}(\tpdt) \, dV
\end{aligned}
\\
\int_{S_f} \tensor{N}_p^T
\left( \tensor{R}_T \vec{d}(\tpdt)
- - \tensor{N}_{m^+} \vec{u}_{m^+}(\tpdt) + \tensor{N}_{m^-} \vec{u}_{m^-}(\tpdt)
+ - \tensor{N}_{n^+} \vec{u}_{n^+}(\tpdt) + \tensor{N}_{n^-} \vec{u}_{n^-}(\tpdt)
\right)
\, dS
\end{array} \right).
@@ -382,14 +386,14 @@ some algebra we find this portion of the
\begin{equation}
\label{eqn:jacobian:implicit:stiffness}
\tensor{K} = \frac{1}{4} \int_v
- (\nabla^T + \nabla) \tensor{N}_n^T \cdot
- \tensorfour{C} \cdot (\nabla + \nabla^T) \tensor{N}_m \, dV.
+ (\nabla^T + \nabla) \tensor{N}_m^T \cdot
+ \tensorfour{C} \cdot (\nabla + \nabla^T) \tensor{N}_n \, dV.
\end{equation}
Following a similar procedure, we find the portion of the Jacobian
associated with equation~(\ref{eqn:quasi-static:residual:fault}) is
\begin{equation}
\label{eqn:jacobian:constraint}
- \tensor{L} = \int_{S_f} \tensor{N}_p^T (-\tensor{N}_{m^+}+\tensor{N}_{m^-}) \, dS.
+ \tensor{L} = \int_{S_f} \tensor{N}_p^T (-\tensor{N}_{n^+}+\tensor{N}_{n^-}) \, dS.
\end{equation}
Thus, the Jacobian of the entire system has the form,
\begin{equation}
@@ -412,19 +416,19 @@ inertial term:
\begin{equation}
\vec{r} = \left( \begin{array}{c}
\begin{aligned}
- - \int_{V} \nabla \tensor{N}_n^T \cdot \tensor{\sigma}(\tpdt) \, dV
- + \int_{S_T} \tensor{N}_n^T \vec{T}(\tpdt) \, dS
- &+ \int_{S_f^{+}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
- - \int_{S_f^{-}} \tensor{N}_n^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
+ - \int_{V} \nabla \tensor{N}_m^T \cdot \tensor{\sigma}(\tpdt) \, dV
+ + \int_{S_T} \tensor{N}_m^T \vec{T}(\tpdt) \, dS
+ &+ \int_{S_f^{+}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
+ - \int_{S_f^{-}} \tensor{N}_m^T \tensor{N}_p \vec{l}_p(\tpdt) \, dS
\\
- &+ \int_{V} \tensor{N}_n^T \vec{f}(\tpdt) \, dV
- - \int_{V} \rho \tensor{N}_n^T \tensor{N}_m
- \frac{\partial^2 \vec{u}_m}{\partial t^2} \, dV
+ &+ \int_{V} \tensor{N}_m^T \vec{f}(\tpdt) \, dV
+ - \int_{V} \rho \tensor{N}_m^T \tensor{N}_n
+ \frac{\partial^2 \vec{u}_n}{\partial t^2} \, dV
\end{aligned}
\\
\int_{S_f} \tensor{N}_p^T
\left( \tensor{R}_T \vec{d}(\tpdt)
- - \tensor{N}_{m^+} \vec{u}_{m^+}(\tpdt) + \tensor{N}_{m^-} \vec{u}_{m^-}(\tpdt)
+ - \tensor{N}_{n^+} \vec{u}_{n^+}(\tpdt) + \tensor{N}_{n^-} \vec{u}_{n^-}(\tpdt)
\right)
\, dS
\end{array} \right).
@@ -448,17 +452,17 @@ difference scheme, so that the accelerat
\end{gather}
Expanding the inertial term yields
\begin{equation}
- - \int_{V} \rho \tensor{N}_n^T \tensor{N}_m \frac{\partial^2 \vec{u}_m}{\partial
+ - \int_{V} \rho \tensor{N}_m^T \tensor{N}_n \frac{\partial^2 \vec{u}_n}{\partial
t^2} \, dV =
- - \frac{1}{\Delta t^2} \int_{V} \rho \tensor{N}_n^T \tensor{N}_m \left(
- d\vec{u}_m(t) - \vec{u}_m(t) + \vec{u}_m(\tmdt)
+ - \frac{1}{\Delta t^2} \int_{V} \rho \tensor{N}_m^T \tensor{N}_n \left(
+ d\vec{u}_n(t) - \vec{u}_n(t) + \vec{u}_n(\tmdt)
\right) \, dV,
\end{equation}
so that the upper portion of the Jacobian is
\begin{equation}
\label{eqn:jacobian:explicit:inertia}
\tensor{K} =
- \frac{1}{\Delta t^2} \int_{V} \rho \tensor{N}_n^T \tensor{N}_m \, dV.
+ \frac{1}{\Delta t^2} \int_{V} \rho \tensor{N}_m^T \tensor{N}_n \, dV.
\end{equation}
@@ -529,34 +533,34 @@ of the general form of a linear system o
\vec{u} = \vec{b}$), our subset of equations has the form
\begin{equation}
\begin{pmatrix}
- \tensor{K}_{m^+m^+} & 0 & \tensor{L}_p^T \\
- 0 & \tensor{K}_{m^-m^-} & -\tensor{L}_p^T \\
+ \tensor{K}_{n^+n^+} & 0 & \tensor{L}_p^T \\
+ 0 & \tensor{K}_{n^-n^-} & -\tensor{L}_p^T \\
\tensor{L}_p & -\tensor{L}_p & 0
\end{pmatrix}
\begin{pmatrix}
- \vec{u}_{m^+} \\
- \vec{u}_{m^-} \\
+ \vec{u}_{n^+} \\
+ \vec{u}_{n^-} \\
\vec{l}_p \\
\end{pmatrix}
=
\begin{pmatrix}
- \vec{b}_{m^+} \\
- \vec{b}_{m^-} \\
+ \vec{b}_{n^+} \\
+ \vec{b}_{n^-} \\
\vec{b}_p \\
\end{pmatrix},
\end{equation}
-where $m^+$ and $m^-$ refer to the degrees of freedom associated with
+where $n^+$ and $n^-$ refer to the degrees of freedom associated with
the positive and negative sides of the fault,
-respectively. Furthermore, we can ignore the terms $\vec{b}_{m^+}$ and
-$\vec{b}_{m^-}$ because they do not change as we change the Lagrange
+respectively. Furthermore, we can ignore the terms $\vec{b}_{n^+}$ and
+$\vec{b}_{n^-}$ because they do not change as we change the Lagrange
multipliers or fault slip. This means we can solve the following
equations to estimate the change in fault slip $\partial \vec{d}$
corresponding to a perturbation in the Lagrange multipliers $\partial
\vec{l}_p$:
\begin{gather}
- \tensor{K}_{m^+m^+} \partial \vec{u}_{m^+} = - \tensor{L}_p^T \partial \vec{l}_p, \\
- \tensor{K}_{m^-m^-} \partial \vec{u}_{m^-} = \tensor{L}_p^T \partial \vec{l}_p, \\
- \partial \vec{d} = \tensor{R} \left( \partial \vec{u}_{m^+} - \partial \vec{u}_{m^-} \right).
+ \tensor{K}_{n^+n^+} \partial \vec{u}_{n^+} = - \tensor{L}_p^T \partial \vec{l}_p, \\
+ \tensor{K}_{n^-n^-} \partial \vec{u}_{n^-} = \tensor{L}_p^T \partial \vec{l}_p, \\
+ \partial \vec{d} = \tensor{R} \left( \partial \vec{u}_{n^+} - \partial \vec{u}_{n^-} \right).
\end{gather}
This estimate is exact if all other degrees of freedom are constrained
(which is generally only the case for simple toy problems), quite good
@@ -570,9 +574,9 @@ PyLith includes several commonly used fa
PyLith includes several commonly used fault constitutive models, all
of which specify the shear traction on the fault $T_f$ as a function
of the cohesive stress $T_c$, coefficient of friction, $\mu_f$, and
-normal traction $T_n$,
+normal traction $T_m$,
\begin{equation}
- T_f = T_c - \mu_f T_n.
+ T_f = T_c - \mu_f T_m.
\end{equation}
We use the sign convention that a compressive normal tractions are
negative. The fault constitutive models include static friction,
@@ -598,7 +602,7 @@ for details).
\item custom preconditioner
\end{itemize}
-\subsection{Dynamic Simulations}\brad{Rough draft}
+\subsection{Dynamic Simulations}
In the dynamic simulations the the Courant-Friderichs-Lewy condition
controls the stability of the time integration. In most dynamic
@@ -669,20 +673,20 @@ associated with the fault slip constrain
associated with the fault slip constraint in solving the system of
equations via a Schur's complement algorithm. We compute an initial
residual assuming the increment in the solution is zero (i.e.,
-$d\vec{u}_m = \vec{0}$ and $d\vec{l}_p = \vec{0}$,
+$d\vec{u}_n = \vec{0}$ and $d\vec{l}_p = \vec{0}$,
\begin{equation}
- \vec{r}^* = \begin{pmatrix} \vec{r}_m^* \\ \vec{r}_p^* \end{pmatrix} =
- \begin{pmatrix} \vec{b}_m \\ \vec{b}_p \end{pmatrix}
+ \vec{r}^* = \begin{pmatrix} \vec{r}_n^* \\ \vec{r}_p^* \end{pmatrix} =
+ \begin{pmatrix} \vec{b}_n \\ \vec{b}_p \end{pmatrix}
- \begin{pmatrix}
\tensor{K} & \tensor{L}^T \\ \tensor{L} & 0
\end{pmatrix}
- \begin{pmatrix} \vec{u}_m \\ \vec{l}_m \end{pmatrix}.
+ \begin{pmatrix} \vec{u}_n \\ \vec{l}_n \end{pmatrix}.
\end{equation}
We compute a corresponding initial solution to the system of equations
-$\vec{u}_m^*$ ignoring the off-diagonal blocks in the Jacobian and
+$\vec{u}_n^*$ ignoring the off-diagonal blocks in the Jacobian and
the increment in the Lagrange multipliers.
\begin{equation}
-d\vec{u}_m^* = \tensor{K}^{-1} \vec{r}_m,
+d\vec{u}_n^* = \tensor{K}^{-1} \vec{r}_n,
\end{equation}
taking advantage of the fact that we construct $\tensor{K}$ so that it
is diagonal.
@@ -693,35 +697,35 @@ residual is
residual is
\begin{equation}
\label{eqn:lumped:jacobian:residual}
- \vec{r} = \begin{pmatrix} \vec{r}_m \\ \vec{r}_p \end{pmatrix} =
- \begin{pmatrix} \vec{r}_m^* \\ \vec{r}_p^* \end{pmatrix}
+ \vec{r} = \begin{pmatrix} \vec{r}_n \\ \vec{r}_p \end{pmatrix} =
+ \begin{pmatrix} \vec{r}_n^* \\ \vec{r}_p^* \end{pmatrix}
- \begin{pmatrix}
\tensor{K} & \tensor{L}^T \\ \tensor{L} & 0
\end{pmatrix}
- \begin{pmatrix} d\vec{u}_m \\ d\vec{l}_m \end{pmatrix}.
+ \begin{pmatrix} d\vec{u}_n \\ d\vec{l}_n \end{pmatrix}.
\end{equation}
Solving the first row of equation~(\ref{eqn:lumped:jacobian:residual})
for the increment in the solution and accounting for the structure of
$\tensor{L}$ as we write the expressions for degrees of freedom on
each side of the fault, we have
\begin{gather}
- d\vec{u}_{m^+} =
- d\vec{u}_{m^+}^* - \tensor{K}_{m^+m^+}^{-1} \tensor{L}_p^T d\vec{l}_p, \\
- d\vec{u}_{m^-} =
- d\vec{u}_{m^-}^* + \tensor{K}_{m^-m^-}^{-1} \tensor{L}_p^T d\vec{l}_p.
+ d\vec{u}_{n^+} =
+ d\vec{u}_{n^+}^* - \tensor{K}_{n^+n^+}^{-1} \tensor{L}_p^T d\vec{l}_p, \\
+ d\vec{u}_{n^-} =
+ d\vec{u}_{n^-}^* + \tensor{K}_{n^-n^-}^{-1} \tensor{L}_p^T d\vec{l}_p.
\end{gather}
Substituting into the second row of
equation~(\ref{eqn:lumped:jacobian:residual}) and isolating the term
with the increment in the Lagrange multipliers yields
\begin{equation}
- \tensor{L}_p \left( \tensor{K}_{m^+m^+}^{-1} + \tensor{K}_{m^-m^-}^{-1} \right)
+ \tensor{L}_p \left( \tensor{K}_{n^+n^+}^{-1} + \tensor{K}_{n^-n^-}^{-1} \right)
\tensor{L}^T_p d\vec{l}_p =
- -\vec{r}_p^* + \tensor{L}_p \left( d\vec{u}_{m^+}^* - d\vec{u}_{m^-}^* \right).
+ -\vec{r}_p^* + \tensor{L}_p \left( d\vec{u}_{n^+}^* - d\vec{u}_{n^-}^* \right).
\end{equation}
Letting
\begin{equation}
\tensor{S}_p = \tensor{L}_p
- \left( \tensor{K}_{m^+m^+}^{-1} + \tensor{K}_{m^-m^-}^{-1} \right)
+ \left( \tensor{K}_{n^+n^+}^{-1} + \tensor{K}_{n^-n^-}^{-1} \right)
\tensor{L}^T_p,
\end{equation}
and recognizing that $S_p$ is diagonal because ${K}$ and ${L}_p$ are
@@ -729,14 +733,14 @@ multipliers,
multipliers,
\begin{equation}
d\vec{l}_p = \tensor{S}_p^{-1} \left(
- -\vec{r}_p^* + \tensor{L}_p \left( d\vec{u}_{m^+}^* - d\vec{u}_{m^-}^* \right)
+ -\vec{r}_p^* + \tensor{L}_p \left( d\vec{u}_{n^+}^* - d\vec{u}_{n^-}^* \right)
\right).
\end{equation}
Now that we have the increment in the Lagrange multipliers, we can
-correct our initial solution $d\vec{u}_m^*$ so that the true residual
+correct our initial solution $d\vec{u}_n^*$ so that the true residual
is zero,
\begin{equation}
- d\vec{u}_m = d\vec{u}_m^* - \tensor{K}^{-1} \tensor{L}^T d\vec{l}_p.
+ d\vec{u}_n = d\vec{u}_n^* - \tensor{K}^{-1} \tensor{L}^T d\vec{l}_p.
\end{equation}
Because $\tensor{K}$ and $\tensor{L}$ are comprised of diagonal
blocks, this expression for the updates to the solution are local to
@@ -754,7 +758,7 @@ simplifies to
simplifies to
\begin{equation}
\partial \vec{d} = - \tensor{R}
- \left( \tensor{K}_{m^+m+}^{-1} + \tensor{K}_{m^-m^-}^{-1} \right)
+ \left( \tensor{K}_{n^+n^+}^{-1} + \tensor{K}_{n^-n^-}^{-1} \right)
\tensor{L}_p^T \partial \vec{l}_p.
\end{equation}
More information about the CIG-COMMITS
mailing list