From: frohne Date: Fri, 22 Feb 2013 23:25:55 +0000 (+0000) Subject: integrating the changes in section 7 for damping X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=29d246ed346f4aaea2292619b841fcc0a8de6b69;p=dealii-svn.git integrating the changes in section 7 for damping git-svn-id: https://svn.dealii.org/trunk@28535 0785d39b-7218-0410-832d-ea1e28bc413d --- diff --git a/deal.II/examples/step-42/doc/intro.dox b/deal.II/examples/step-42/doc/intro.dox index 509d2e90be..94dd0077be 100644 --- a/deal.II/examples/step-42/doc/intro.dox +++ b/deal.II/examples/step-42/doc/intro.dox @@ -287,30 +287,53 @@ time.

The primal-dual active set algorithm combined with the inexact semi smooth Newton method

-Now we describe an algorithm that combines the Newton-method, which we use for -the nonlinear constitutive law, with the semismooth Newton method for the contact. It -sums up the results of the sections before and works as follows: +Now we describe an algorithm that combines the damped semismooth Newton-method, +which we use for the nonlinear constitutive law, with the semismooth Newton +method for the contact. It sums up the results of the sections before and works as follows:
    -
  1. Initialize $\mathcal{A}_k$ and $\mathcal{F}_k$, such that $\mathcal{S} = \mathcal{A}_k \cup \mathcal{F}_k$ and $\mathcal{A}_k \cap \mathcal{F}_k = \emptyset$ and set $k = 1$. -
  2. Assemble the Newton matrix $a'(U^k;\varphi_i,\varphi_j)$ and the right-hand-side $F(U^k)$. -
  3. Find the primal-dual pair $(U^k,\Lambda^k)$ that satisfies +
  4. Initialize $\mathcal{A}_k$ and $\mathcal{F}_k$, such that + $\mathcal{S} = \mathcal{A}_k \cup \mathcal{F}_k$ and $\mathcal{A}_k \cap + \mathcal{F}_k = \emptyset$ and set $k = 1$. The start value $\hat U^0 := + P_{\mathcal{A}_k}(0)$ fullfills our obstacle condition. +
  5. Assemble the Newton matrix $A := a'(\hat + U^{k-1};\varphi_i,\varphi_j)$ and the right-hand-side $F(\hat U^{k-1})$. +
  6. Find the primal-dual pair $(\bar U^k,\Lambda^k)$ that satisfies @f{align*} - AU^k + B\Lambda^k & = F, &\\ - \left[B^TU^k\right]_i & = G_i & \forall i\in\mathcal{A}_k,\\ + A\bar U^k + B\Lambda^k & = F, &\\ + \left[B^T\bar U^k\right]_i & = G_i & \forall i\in\mathcal{A}_k,\\ \Lambda^k_i & = 0 & \forall i\in\mathcal{F}_k. @f} +
  7. Damping for $k>2$ by applying a line search and calculating a linear + combination of $U^{k-1}$ and $\bar U^k$. Find an + $\alpha_i:=2^{-i},(i=0,\ldots,10)$ so that + @f{gather*}U^k := \alpha_i\bar U^k + + (1-\alpha_i)U^{k-1}@f} + yields + @f{gather*}\vert F\left(U^{k}\right) \vert < \vert F\left(U^{k-1}\right) \vert.\f}
  8. Define the new active and inactive sets by @f{gather*}\mathcal{A}_{k+1}:=\lbrace i\in\mathcal{S}:\Lambda^k_i + c\left(\left[B^TU^k\right]_i - G_i\right) > 0\rbrace,@f} @f{gather*}\mathcal{F}_{k+1}:=\lbrace i\in\mathcal{S}:\Lambda^k_i + c\left(\left[B^TU^k\right]_i - G_i\right) \leq 0\rbrace.@f} + Projection $U^k$ so that it holds the second equation in (2) + @f{gather*}\hat U^K := P_{\mathcal{A}_{k+1}}(U^k).@f}
  9. If $\mathcal{A}_{k+1} = \mathcal{A}_k$ and $\vert - F\left(U^{k+1}\right) \vert < \delta$ then stop, else set $k=k+1$ and go to - step (2). + F\left(U^{k}\right) \vert < \delta$ then stop, else set $k=k+1$ and go to + step (1).
-The mass matrix $B\in\mathbb{R}^{n\times m}$, $n>m$, is quadratic in our -situation since $\Lambda^k$ is only defined on $\Gamma_C$: +The meaning of the decorated and none decorated $U$ is as follows: $\bar U$ +denotes the solution of the linear system of equations in (2), $U$ is the +damped solution and equals to $\bar U$ if the damping parameter $\alpha_0 = +1$ and $\hat U := P_{\mathcal{A}}(U)$ is the projection of the active +components in $\mathcal{A}$ to the gap + +@f{gather*}P_{\mathcal{A}}(U):=\begin{cases} +U_i, & \textrm{if}\quad i\notin\mathcal{A}\\ +{}^{G_i}/_{B^T_i}, & \textrm{if}\quad +i\in\mathcal{A}. +\end{cases}@f}\\ +The mass matrix $B\in\mathbb{R}^{n\times m}$, $n>m$, is quadratic in our situation since $\Lambda^k$ is only defined on $\Gamma_C$: @f{gather*}B_{ij} = \begin{cases} \int\limits_{\Gamma_C}\varphi_i^2(x)dx, & \text{if}\quad i=j\\ 0, & \text{if}\quad i\neq j. @@ -325,15 +348,27 @@ The vector $G$ is defined by a suitable approximation $g_h$ of the gap $g$ \end{cases}@f} Compared to step-41, step (1) is added but it should be clear -from the sections above that we only linearize the problem. In step (2) we have to solve a linear -system of equations again. And now the solution has to fulfill two stopping -criteria. $\mathcal{A}_{k+1} = \mathcal{A}_k$ makes sure that the contact zones are iterated out and the second ensures an accurate enough residual which means +from the sections above that we only linearize the problem. In step (2) we have +to solve a linear system of equations again. And now the solution has to fulfill two stopping +criteria. $\mathcal{A}_{k+1} = \mathcal{A}_k$ makes sure that the contact zones +are iterated out and the second ensures an accurate enough residual which means that the plastic zones are also iterated out. -The idea of this method can also be found in Brunssen, Schmid, Schäfer, +A similar method can also be found in Brunssen, Schmid, Schäfer, Wohlmuth: A fast and robust iterative solver for nonlinear contact problems using a primal-dual active set strategy and algebraic multigrid, Int. J. Numer. -Meth. Engng, 2007, 69, pp. 524-543. +Meth. Engng, 2007, 69, pp. 524-543. But in advance we apply a line search to +obtain a more robust method regarding the start value. Solving an elastic +problem in the very first step ($k=1$) we get a reasonable start value but as +you can see in the results damping is important if we choose for example a ball as +obstacle. + +Damping our Newton method is more important for the nonlinearity cause by the +constitutive law as for the contact. For this reason we start to damp our method +for $k>2$ when we have two plastic iterations. Note that $U^1$ is a solution of +an elastic problem and $U^2$ is the first plastic solution. A linear combination +between these both results in stresses which are not in the convex set +of the feasible stresses.

Adaptive mesh refinement