[cig-commits] [commit] master: Add Joey's patches to the manual (which came from a separate patch). (8ec0cd9)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Tue Sep 2 06:25:06 PDT 2014


Repository : https://github.com/geodynamics/aspect

On branch  : master
Link       : https://github.com/geodynamics/aspect/compare/873dd16d28505a844f0bd2fbf0739b4f0af46bf9...1f5a0f8d775c6f634a16eb9599891cc7d60571e5

>---------------------------------------------------------------

commit 8ec0cd9b99545c93f0f2604317549b916805dd51
Author: Wolfgang Bangerth <bangerth at math.tamu.edu>
Date:   Mon Sep 1 07:29:59 2014 -0500

    Add Joey's patches to the manual (which came from a separate patch).


>---------------------------------------------------------------

8ec0cd9b99545c93f0f2604317549b916805dd51
 doc/manual/manual.tex | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 106 insertions(+)

diff --git a/doc/manual/manual.tex b/doc/manual/manual.tex
index 058acb4..72e2cb5 100644
--- a/doc/manual/manual.tex
+++ b/doc/manual/manual.tex
@@ -4177,6 +4177,112 @@ After running the cookbook, you may modify it in a number of ways:
 \end{figure}
 
 
+\subsubsection{Using a free surface with a crust}\mbox{}\\
+\label{sec:cookbooks-freesurfaceWC}
+\textit{This section was contributed by William Durkin}.
+This cookbook is a modification of the previous example that explores changes in the way topography develops when a 
+highly viscous crust is added.  One thing to note is that the origin of this model is at the bottom left corner of a 500x200 km box.
+In this cookbook, the material changes from low viscosity mantle to high viscosity crust at $z = \texttt{jump height}$, or $z_j$. The piecewise viscosity function is defined as
+
+\begin{align*}
+  \eta(z) = \left\{
+    \begin{matrix}
+      \eta_U & \text{for}\ z > z_j, \\
+      \eta_L & \text{for}\ z  \le z_j.
+    \end{matrix}
+  \right.
+\end{align*}
+
+where $\eta_U$ and $\eta_L$ are the viscosities of the upper and lower layers, respectively. This viscosity model can be implimented by creating a plugin from a modified \texttt{simpler} material model. The most important change is the conditional statement at the section of Simpler.cc that assigns viscosity values:\\
+
+\begin{lstlisting}[frame=single,language=C++]
+    
+template <int dim>
+    void
+    Simplerwc<dim>::
+    evaluate(const typename Interface<dim>::MaterialModelInputs &in, 
+              typename Interface<dim>::MaterialModelOutputs &out ) const
+    {
+      
+      double z;
+      for (unsigned int i=0; i<in.position.size(); ++i)
+        { 
+          z = in.position[i][1];
+          out.viscosities[i] = (z>jump_depth) ?  eta_U: eta_L ;
+                     
+          out.densities[i] = reference_rho*(1.0-thermal_alpha*(in.temperature[i]-reference_T));
+          out.thermal_expansion_coefficients[i] = thermal_alpha;
+          out.specific_heat[i] = reference_specific_heat;
+          out.thermal_conductivities[i] = k_value;
+          out.compressibilities[i] = 0.0;
+        }
+    }
+\end{lstlisting}
+
+\mbox{}\\
+Additional changes make the new parameters \texttt{Jump Depth}, \texttt{Lower Viscosity}, and \texttt{Upper Viscosity}
+available to the prm file. The entire code is found in \url{cookbooks/free_surface_with_crust/plugin/simplerwc.cc}  . Refer to section~\ref{sec:plugins} for instructions on how to do this.\\
+
+The following changes modify cookbook~\ref{sec:cookbooks-freesurface} to include a crust.\\ \\
+1) Load the plugin and declare global parameters:
+
+\begin{lstlisting}[frame=single,language=prmfile]
+set Additional shared libraries            = ./plugin/libsimplerwc.so 
+
+set Dimension = 2
+set CFL number                             = 0.1
+set End time                               = 1e8
+set Output directory                       = output/
+
+subsection Checkpointing
+  set Steps between checkpoint = 50
+end
+
+\end{lstlisting}
+
+\mbox{}\\
+2) Declare values for the new parameters:
+
+\begin{lstlisting}[frame=single,language=prmfile]
+subsection Material model
+  set Model name = simplerwc
+  subsection Simplerwc model
+    set Reference density             = 3300
+    set Reference specific heat       = 1250
+    set Reference temperature         = 0.0
+    set Thermal conductivity          = 1.0 # low thermal conductivity for a sharp blob
+    set Thermal expansion coefficient = 4e-5
+  
+    #Parameters added for this cookbook:
+    # The box is 200km high and has its origin set at the bottom left corner.
+    # Setting the jump height to 170km creates a 30km thick crust
+    set Lower viscosity               =1.e20
+    set Upper viscosity               =1.e23
+    set Jump height                    =170.e3
+ 
+  end
+end
+\end{lstlisting}
+\mbox{}\\
+
+The entire script is located in \url{cookbooks/free_surface_with_crust/free_surface_wc.prm}\\ \\
+Results\\
+The crust is 30km thick and 1000 times as viscous as the lower layer. Figure~\ref{fig:freesurfaceWC} shows that
+adding a crust to the model causes the maximum topography to both decrease and occur at a later time.
+Heat flows through the system primarily by advection until the temperature anomaly reaches the base of the
+crustal layer (Fig~\ref{fig:freesurfaceWC}). The crust's high viscosity reduces the temperature anomaly's velocity substantially,
+causing it to affect the surface topography at a later time. Just as in cookbook \ref{sec:cookbooks-freesurface}, the topography
+returns to zero after a large amount of time.
+
+\begin{figure}
+  \centering
+  \includegraphics[height=0.25\textwidth]{cookbooks/free_surface_with_crust/free-surfaceWC.png}
+  \hfill
+  \includegraphics[height=0.25\textwidth]{cookbooks/free_surface_with_crust/Topography.png}
+  \caption{\it The effects adding a viscous crust has on the surface topography. The thermal anomaly spreads horizontally as it collides with the highly viscous crust (left). The addition of a crustal layer both dampens and delays the appearance of the topographic maximum and minimum (right). }
+  \label{fig:freesurfaceWC}
+\end{figure}
+
 \subsection{Geophysical setups}
 \label{sec:cookbooks-geophysical}
 



More information about the CIG-COMMITS mailing list