[cig-commits] r15145 - doc/CitcomS/manual

tan2 at geodynamics.org tan2 at geodynamics.org
Mon Jun 8 15:00:14 PDT 2009


Author: tan2
Date: 2009-06-08 15:00:14 -0700 (Mon, 08 Jun 2009)
New Revision: 15145

Modified:
   doc/CitcomS/manual/citcoms.lyx
Log:
* Update Cookbook 9 for the new convergence enhancement
* update the ccoupler/ecoupler parameters in Appendix A
* update the version number 3.0.3 -> 3.1.0


Modified: doc/CitcomS/manual/citcoms.lyx
===================================================================
--- doc/CitcomS/manual/citcoms.lyx	2009-06-08 21:03:32 UTC (rev 15144)
+++ doc/CitcomS/manual/citcoms.lyx	2009-06-08 22:00:14 UTC (rev 15145)
@@ -1,4 +1,4 @@
-#LyX 1.5.3 created this file. For more info see http://www.lyx.org/
+#LyX 1.5.5 created this file. For more info see http://www.lyx.org/
 \lyxformat 276
 \begin_document
 \begin_header
@@ -103,7 +103,7 @@
 \begin_layout Author
 © California Institute of Technology
 \newline
-Version 3.0.3
+Version 3.1.0
 \end_layout
 
 \begin_layout Date
@@ -666,8 +666,9 @@
  geographic-dependent, top surface temperature boundary conditions, contributed
  by Mike Gurnis; Allowing multi-component chemical viscosity; Optimizing
  the speed.
- Cookbook 8 becomes 13% faster than v3.0; Moving input parameter "mantle_temp"
- from [CitcomS.solver.param] to [CitcomS.solver.ic] section.
+ Cookbook 8 becomes 13% faster than v3.0; Better convergence for the coupled
+ solver case; Moving input parameter "mantle_temp" from [CitcomS.solver.param]
+ to [CitcomS.solver.ic] section.
  Several bugs are fixed.
  Important bug fixes include: A memory bug in visual/project_geoid.c, fixed
  by Thorsten Becker; Initial temperature "tic_method=0" for regional model
@@ -2324,7 +2325,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-$ tar xzf CitcomS-3.0.3.tar.gz
+$ tar xzf CitcomS-3.1.0.tar.gz
 \end_layout
 
 \begin_layout Standard
@@ -2332,7 +2333,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-$ gunzip -c CitcomS-3.0.3.tar.gz | tar xf -
+$ gunzip -c CitcomS-3.1.0.tar.gz | tar xf -
 \end_layout
 
 \begin_layout Section
@@ -2354,7 +2355,7 @@
 \newline
 
 \newline
-$ cd CitcomS-3.0.3
+$ cd CitcomS-3.1.0
 \end_layout
 
 \begin_layout Enumerate
@@ -3149,7 +3150,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-$ cd CitcomS-3.0.3/
+$ cd CitcomS-3.1.0/
 \end_layout
 
 \begin_layout LyX-Code
@@ -3583,7 +3584,7 @@
 \end_inset
 
 .
- The CitcomS v3.0.3 source package was created with Autoconf 2.61, Automake
+ The CitcomS v3.1.0 source package was created with Autoconf 2.61, Automake
  1.9.6, and Libtool 1.5.26.
 \end_layout
 
@@ -11317,6 +11318,8 @@
 \begin_layout Standard
 The embedded solver (esolver) is nested within the domain of the containing
  solver (csolver).
+ The velocity boundary conditions of the esolver are fixed normal velocity
+ and shear stress, whose values are received from the esolver.
  The containing solver can be either a full CitcomS solver or a regional
  one.
  The embedded solver can only be a regional one.
@@ -11487,9 +11490,21 @@
 \end_layout
 
 \begin_layout Standard
-Two additional parameters are for the ecoupler only.
- These parameters specify whether the top and bottom boundary of the esolver
- will be imposed with the velocity and temperature from the csolver.
+A good initial guess of pressure field can speed up the convergence of the
+ iterative Stokes solver.
+ We will use the pressure solution of the containing solver as the initial
+ guess of pressure of the embedded solver.
+\end_layout
+
+\begin_layout LyX-Code
+exchange_pressure = on
+\end_layout
+
+\begin_layout Standard
+Three additional parameters are for the ecoupler only.
+ The following two parameters specify whether the top and bottom boundary
+ of the esolver will be imposed with the velocity and temperature from the
+ csolver.
  For models with prescribed top or bottom boundary conditions, you can turn
  on these two parameters:
 \end_layout
@@ -11501,9 +11516,43 @@
 \end_layout
 
 \begin_layout Standard
-The velocity boundary conditions of the esolver are fixed normal velocity
- and shear stress, whose values are received from the esolver.
- Without turning on 
+The next parameter deserves a little more explanation.
+ The continuity equation 
+\begin_inset LatexCommand ref
+reference "eq:conservation of mass"
+
+\end_inset
+
+ can be rearranged according to Gauss's divergence theorem to become:
+\begin_inset Formula \begin{eqnarray}
+\ointop_{surface\ area}\rho_{0}\overrightarrow{u}\cdot\overrightarrow{n}dA & = & 0\label{eq:gauss div}\end{eqnarray}
+
+\end_inset
+
+This equation requires that the normal velocity 
+\begin_inset Formula $\overrightarrow{u}$
+\end_inset
+
+ imposed on the embedded solver must have zero outflow.
+ Due to finite accuray of the containing solver and the interpolation process,
+ the normal velocity received by the embedded solver might not have zero
+ outflow, which could cause convergence problem in the embedded solver.
+ One can amend the received normal velocity slightly to satisfy Eqaution
+ 
+\begin_inset LatexCommand ref
+reference "eq:gauss div"
+
+\end_inset
+
+ by setting:
+\end_layout
+
+\begin_layout LyX-Code
+amending_outflow = on
+\end_layout
+
+\begin_layout Standard
+Without turning on 
 \family typewriter
 side_sbcs
 \family default
@@ -11707,6 +11756,28 @@
 adv_sub_iterations = 2
 \end_layout
 
+\begin_layout Standard
+The purpose of the csolver is to provide the proper boundary condition for
+ the esolver, and we don't need a high accuracy for that.
+ So we will use a low accuracy for the csolver and a moderate accuracy for
+ the esolver.
+\end_layout
+
+\begin_layout LyX-Code
+[CitcomS.csolver.vsolver]
+\newline
+accuracy = 2e-2
+\newline
+
+\newline
+[CitcomS.esolver.vsolver]
+\newline
+accuracy =
+ 1e-3
+\newline
+
+\end_layout
+
 \begin_layout Subsubsection
 Example: Nested Solver Coupling for Ridge-Plume Interaction, cookbook9.cfg
 \end_layout
@@ -11735,34 +11806,41 @@
 exchange_initial_t
 emperature = off
 \newline
+exchange_pressure = on
+\newline
 
 \newline
 [CitcomS.ecoupler]
 \newline
-two_way_communication = on
+two_way_communication
+ = on
 \newline
-exchange_initial_temp
-erature = off
+exchange_initial_temperature = off
 \newline
+exchange_pressure = on
+\newline
+amending_outflow
+ = on
+\newline
 exclude_top = off
 \newline
 exclude_bottom = off
 \newline
 
 \newline
-# assigning processors
- to csolver and esolver
+# assigning processors to csolver
+ and esolver
 \newline
 [CitcomS.layout]
 \newline
 containing_group = [0-1]
 \newline
-embedded_group
- = [2-3]
+embedded_group = [2-3]
 \newline
 
 \newline
-[CitcomS.ccontroller]
+[Citcom
+S.ccontroller]
 \newline
 monitoringFrequency = 2
 \newline
@@ -11770,8 +11848,8 @@
 \newline
 [CitcomS.econtroller]
 \newline
-monitorin
-gFrequency = 10
+monitoringFrequency
+ = 10
 \newline
 
 \newline
@@ -11781,10 +11859,10 @@
 \newline
 datafile_old = cntn
 \newline
-datadir
- = output
+datadir = output
 \newline
-datafile = cntn
+datafile
+ = cntn
 \newline
 rayleigh = 1e8
 \newline
@@ -11794,23 +11872,23 @@
 \newline
 nprocz = 2
 \newline
-nodex
- = 17
+nodex = 17
 \newline
 nodey = 17
 \newline
-nodez = 25
+nodez
+ = 25
 \newline
 radius_outer = 1.0
 \newline
 radius_inner = 0.55
 \newline
-theta_min =
- 1.171
+theta_min = 1.171
 \newline
 theta_max = 1.971
 \newline
-fi_min = 0
+fi_min
+ = 0
 \newline
 fi_max = 0.8
 \newline
@@ -11820,10 +11898,10 @@
 \newline
 
 \newline
-[Cit
-comS.csolver.bc]
+[CitcomS.csolver.bc]
 \newline
-topvbc = 1
+topvbc
+ = 1
 \newline
 
 \newline
@@ -11831,10 +11909,10 @@
 \newline
 file_vbcs = on
 \newline
-vel_bound_file
- = velocity/bvel.dat
+vel_bound_file = velocity/bvel.dat
 \newline
-start_age = 0
+start_ag
+e = 0
 \newline
 
 \newline
@@ -11842,31 +11920,37 @@
 \newline
 tic_method = -1
 \newline
-solution_cycles
-_init = 0
+solution_cycles_init = 0
 \newline
 
 \newline
-[CitcomS.csolver.tsolver]
+[CitcomS.csolver.tso
+lver]
 \newline
 ADV = on
 \newline
 filter_temp = off
 \newline
-monitor_max_T =
- off
+monitor_max_T = off
 \newline
 finetunedt = 0.9
 \newline
-fixed_timestep = 0
+fixed_timestep
+ = 0
 \newline
 adv_gamma = 0.5
 \newline
-adv_sub_iterations =
- 2
+adv_sub_iterations = 2
 \newline
 
 \newline
+[CitcomS.csolver.vsolver]
+\newline
+accuracy
+ = 2e-2
+\newline
+
+\newline
 [CitcomS.csolver.visc]
 \newline
 VISC_UPDATE = on
@@ -11875,8 +11959,8 @@
 \newline
 visc0 = 1,1,1,1
 \newline
-TDEPV =
- on
+TDEPV
+ = on
 \newline
 viscE = 1.6,1.6,1.6,1.6
 \newline
@@ -11947,32 +12031,38 @@
 \newline
 
 \newline
+[CitcomS.esolver.vsolver]
+\newline
+accuracy
+ = 1e-3
+\newline
+
+\newline
 [CitcomS.esolver.tsolver]
 \newline
-ADV =
- on
+ADV = on
 \newline
 filter_temp = off
 \newline
 monitor_max_T = off
 \newline
-finetunedt = 0.9
+finetu
+nedt = 0.9
 \newline
 fixed_timestep = 0
 \newline
-adv_gamm
-a = 0.5
+adv_gamma = 0.5
 \newline
 adv_sub_iterations = 2
 \newline
 
 \newline
-[CitcomS.esolver.visc]
+[CitcomS.esolver.vi
+sc]
 \newline
 VISC_UPDATE = on
 \newline
-num_mat
- = 4
+num_mat = 4
 \newline
 visc0 = 1,1,1,1
 \newline
@@ -11980,12 +12070,12 @@
 \newline
 viscE = 1.6,1.6,1.6,1.6
 \newline
-viscT = 0,0,0,0
+viscT
+ = 0,0,0,0
 \newline
 VMIN = on
 \newline
-visc_min
- = 1.0
+visc_min = 1.0
 \newline
 VMAX = on
 \newline
@@ -11995,7 +12085,8 @@
 \newline
 [CitcomS.esolver.bc]
 \newline
-side_sbcs = on
+side_s
+bcs = on
 \end_layout
 
 \begin_layout Subsection
@@ -23034,7 +23125,7 @@
 
 \begin_layout Standard
 \begin_inset Tabular
-<lyxtabular version="3" rows="4" columns="2">
+<lyxtabular version="3" rows="5" columns="2">
 <features>
 <column alignment="left" valignment="top" leftline="true" rightline="true" width="1.85in">
 <column alignment="left" valignment="top" rightline="true" width="4.25in">
@@ -23107,7 +23198,7 @@
 \end_inset
 </cell>
 </row>
-<row topline="true" bottomline="true">
+<row topline="true">
 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
@@ -23132,6 +23223,29 @@
 \end_inset
 </cell>
 </row>
+<row topline="true" bottomline="true">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Standard
+
+\family typewriter
+\size small
+exchange_pressure=on
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Standard
+Whether to send the pressure solution to esolver.
+\end_layout
+
+\end_inset
+</cell>
+</row>
 </lyxtabular>
 
 \end_inset
@@ -23149,7 +23263,7 @@
 
 \begin_layout Standard
 \begin_inset Tabular
-<lyxtabular version="3" rows="6" columns="2">
+<lyxtabular version="3" rows="8" columns="2">
 <features>
 <column alignment="left" valignment="top" leftline="true" rightline="true" width="1.85in">
 <column alignment="left" valignment="top" rightline="true" width="4.25in">
@@ -23253,6 +23367,29 @@
 
 \family typewriter
 \size small
+exchange_pressure=on
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Standard
+Whether to receive the initial guess of pressure from csolver.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row topline="true">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Standard
+
+\family typewriter
+\size small
 exclude_top=off
 \end_layout
 
@@ -23271,7 +23408,7 @@
 \end_inset
 </cell>
 </row>
-<row topline="true" bottomline="true">
+<row topline="true">
 <cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
@@ -23295,6 +23432,30 @@
 \end_inset
 </cell>
 </row>
+<row topline="true" bottomline="true">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Standard
+
+\family typewriter
+\size small
+amending_outflow=off
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Standard
+Whether to amend the velocity boundary conditions to satisfy the continuity
+ equation.
+\end_layout
+
+\end_inset
+</cell>
+</row>
 </lyxtabular>
 
 \end_inset



More information about the CIG-COMMITS mailing list