[cig-commits] commit 2479 by ian.rose to /var/svn/dealii/aspect

dealii.demon at gmail.com dealii.demon at gmail.com
Fri Apr 11 08:30:57 PDT 2014


Revision 2479

Merge from mainline

_U  branches/freesurface/
U   branches/freesurface/cookbooks/gplates-2d.prm
U   branches/freesurface/doc/manual/cookbooks/gplates/gplates-comparison.png
U   branches/freesurface/doc/manual/manual.tex
U   branches/freesurface/doc/manual.pdf
U   branches/freesurface/include/aspect/simulator.h
U   branches/freesurface/source/simulator/core.cc
U   branches/freesurface/source/simulator/parameters.cc
U   branches/freesurface/source/velocity_boundary_conditions/gplates.cc


http://www.dealii.org/websvn/revision.php?repname=Aspect+Repository&path=%2F&rev=2479&peg=2479

Diff:
Index: branches/freesurface
===================================================================
--- branches/freesurface	2014-04-11 15:22:36 UTC (rev 2478)
+++ branches/freesurface	2014-04-11 15:30:54 UTC (rev 2479)

Property changes on: branches/freesurface
___________________________________________________________________
Modified: svn:mergeinfo
## -2,4 +2,4 ##
 /branches/compositional:1141-1251
 /branches/fully-nonlinear:542-728
 /branches/j-dannberg:1679,1875-1882
-/trunk/aspect:2386-2467
+/trunk/aspect:2386-2478
\ No newline at end of property
Modified: branches/freesurface/cookbooks/gplates-2d.prm
===================================================================
--- branches/freesurface/cookbooks/gplates-2d.prm	2014-04-11 15:22:36 UTC (rev 2478)
+++ branches/freesurface/cookbooks/gplates-2d.prm	2014-04-11 15:30:54 UTC (rev 2479)
@@ -64,7 +64,7 @@
 subsection Initial conditions
   set Model name = adiabatic
 
-  subsection Function
+  subsection Adiabatic
     set Age top boundary layer = 5e7
   end
 end

Modified: branches/freesurface/doc/manual/cookbooks/gplates/gplates-comparison.png
===================================================================
(Binary files differ)

Modified: branches/freesurface/doc/manual/manual.tex
===================================================================
--- branches/freesurface/doc/manual/manual.tex	2014-04-11 15:22:36 UTC (rev 2478)
+++ branches/freesurface/doc/manual/manual.tex	2014-04-11 15:30:54 UTC (rev 2479)
@@ -5014,17 +5014,18 @@
 allows for the use of two- and three-dimensional models incorporating the
 GPlates velocities. Since the output by GPlates is threedimensional in any case,
 spect{} internally handles the 2D model by rotating the model plane to the
-specified orientation and projecting the plate velocities into this plane. The
+orientation specified by the user and projecting the plate velocities into this plane. The
 user specifies the orientation of the model plane by prescribing two points that
 define a plane together with the coordinate origin (i.e. in the current
 formulation only great-circle slices are allowed). The coordinates need to be in
 spherical coordinates $	heta$ and $\phi$ with $	heta$ being the colatitude (0
 at north pole) and $\phi$ being the longitude (0 at Greenwich meridian, positive
 eastwards) both given in radians.
+The approach of identifying two points on the surface of the Earth along with
+its center allows to run computations on arbitrary two-dimensional slices
+through the Earth with realistic boundary conditions.
 
-The relevant section of the input file is then as follows (you will need
-to adjust the first part of the 	exttt{Data directory} below to where your
-spect{} installation is located):
+The relevant section of the input file is then as follows:
 egin{lstlisting}[frame=single,language=prmfile,escapechar=\%]
 subsection Model settings
   set Prescribed velocity boundary indicators = 1:gplates % \index[prmindex]{Prescribed velocity boundary indicators} \index[prmindexfull]{Model settings!Prescribed velocity boundary indicators} %
@@ -5036,51 +5037,100 @@
 
 subsection Boundary velocity model
   subsection GPlates model
-    set Data directory = .../data/velocity-boundary-conditions/gplates/ % \index[prmindex]{Data directory} \index[prmindexfull]{Boundary velocity model!GPlates model!Data directory} %
+    set Data directory = $ASPECT_SOURCE_DIR/data/velocity-boundary-conditions/gplates/ % \index[prmindex]{Data directory} \index[prmindexfull]{Boundary velocity model!GPlates model!Data directory} %
     set Velocity file name = current_day.gpml % \index[prmindex]{Velocity file name} \index[prmindexfull]{Boundary velocity model!GPlates model!Velocity file name} %
     set Time step = 1e6 % \index[prmindex]{Time step} \index[prmindexfull]{Boundary velocity model!GPlates model!Time step} %
     set Point one = 1.5708,4.87 % \index[prmindex]{Point one} \index[prmindexfull]{Boundary velocity model!GPlates model!Point one} %
     set Point two = 1.5708,5.24 % \index[prmindex]{Point two} \index[prmindexfull]{Boundary velocity model!GPlates model!Point two} %
+    set Interpolation width = 2000000 % \index[prmindex]{Interpolation width} \index[prmindexfull]{Boundary velocity model!GPlates model!Interpolation width} %
   end
 end
 \end{lstlisting}
 
-\paragraph{Comparing and visualizing 2D models.}
+In the model settings subsection the user prescribes the boundary that is supposed to 
+use the GPlates plugin. Although currently nothing forbids the user to use GPlates plugin for other
+boundaries than the surface, its current usage and the provided sample data only make sense
+for the surface of a spherical shell (boundary number 1 in the above provided parameter file). 
+In case you are familiar with this kind of modelling and the plugin you could however also use it to prescribe mantle
+movements 	extit{below} a lithosphere model. All plugin specific options may be set in 
+section~
ef{parameters:Boundary_20velocity_20model}. Possible options include the data directory
+and file name of the velocity file/files, the time step (in model units, mostly seconds or years depending on the 
+``	exttt{Use years in output instead of seconds}'' flag) and the points that define the 2D plane.
+The parameter ``	exttt{Interpolation width}'' is used to smooth the provided velocity files by
+a moving average filter. All velocity data points within this distance are averaged to determine the
+actual boundary velocity at a certain mesh point. This parameter is usually set to 0 (no interpolation, use
+nearest velocity point data) and is only needed in case the original setting is unstable or slowly converging.
 
-The approach of identifying two points on the surface of the Earth along with
-its center allows to run computations on arbitrary two-dimensional slices
-through the Earth with realistic boundary conditions. Fig.~
ef{fig:gv-1} shows an example
-of three such computations the results of which are plotted simultaneously in a
-single three-dimensional figure.
+\paragraph{Comparing and visualizing 2D and 3D models.}
 
+The implementation of plate velocities in both two- and three-dimensional model
+setups allows for an easy comparison and test for common sources of error
+in the interpretation of model results. The left top figure in Fig.~
ef{fig:gv-1} 
+shows a modification of the above presented parameter file by setting 
+``	exttt{Dimension = 3}'' and ``	exttt{Initial global refinement = 3}''. 
+The top right plot of Fig.~
ef{fig:gv-1} shows an example of three independent 
+two-dimensional computations of the same reduced resolution. The models were prescribed 
+to be orthogonal slices by setting:
+egin{lstlisting}[frame=single,language=prmfile,escapechar=\%]
+    set Point one = 3.1416,0.0 % \index[prmindex]{Point one} \index[prmindexfull]{Boundary velocity model!GPlates model!Point one} %
+    set Point two = 1.5708,0.0 % \index[prmindex]{Point two} \index[prmindexfull]{Boundary velocity model!GPlates model!Point two} %
+\end{lstlisting}
+and
+egin{lstlisting}[frame=single,language=prmfile,escapechar=\%]
+    set Point one = 3.1416,1.5708 % \index[prmindex]{Point one} \index[prmindexfull]{Boundary velocity model!GPlates model!Point one} %
+    set Point two = 1.5708,1.5708 % \index[prmindex]{Point two} \index[prmindexfull]{Boundary velocity model!GPlates model!Point two} %
+\end{lstlisting}
+
+The results of these models are plotted simultaneously in a single three-dimensional figure
+in their respective model planes. The necessary information 
+to rotate the 2D models to their respective planes (rotation axis and angle) is provided by the 
+GPlates plugin in the beginning of the model output.  The bottom plot 
+of Fig.~
ef{fig:gv-1} finally shows the results of the original \url{cookbooks/gplates-2d.prm} 
+also in the three mentioned planes. 
+
+Now that we have model output for otherwise identical 2D and 3D models with equal resolution and additional 2D output
+for a higher resolution an interesting question to ask would be: What additional information can be created by
+either using three-dimensional geometry or higher resolution in mantle convection models with prescribed boundary velocities.
+As one can see in the comparison between the top right and bottom plot in Fig.~
ef{fig:gv-1} additional resolution clearly
+improves the geometry of small scale features like the shape of up- and downwellings as well as the maximal temperature
+deviation from the background mantle. However, the limitation to two dimensions leads to inconsistencies, 
+that are especially apparent at the cutting lines of the individual 2D models. 
+Note for example that the Nacza slab of the South American subduction zone is only
+present in the equatorial model plane and is not captured in the polar model plane west 
+of the South American coastline. The (coarse) three-dimensional model on the other hand
+shows the same location of up- and downwellings but additionally provides a consistent solution
+that is different from the two dimensional setups. Note that the Nazca slab is subducting eastward,
+while all 2D models (even in high resolution) predict a westward subduction.
+
+Finally we would like to emphasize that these models (especially the used material model)
+are way too simplified to draw any scientific conclusion out of it. Rather it is thought
+as a proof-of-concept what is possible with the dimension independent approach of
+spect{} and its plugins.
+
 egin{figure}
-  \includegraphics[width=0.48	extwidth]{cookbooks/gplates/gplates-comparison.png}
+  \includegraphics[width=	extwidth]{cookbooks/gplates/gplates-comparison.png}
   \hfill
- % \includegraphics[width=0.48	extwidth]{cookbooks/gplates/gplates-3d.png}
-  


More information about the CIG-COMMITS mailing list