[cig-commits] [commit] master, python-removal, rajesh-petsc-schur: Merge branch 'master' into python-removal (81148ac)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Wed Nov 5 19:15:01 PST 2014


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

On branches: master,python-removal,rajesh-petsc-schur
Link       : https://github.com/geodynamics/citcoms/compare/464e1b32299b15819f93efd98d969cddb84dfe51...f97ae655a50bdbd6dac1923a3471ee4dae178fbd

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

commit 81148ac68c6a6c5f36acee477757317882decf5c
Merge: 7389970 fb1839e
Author: Eric Heien <emheien at ucdavis.edu>
Date:   Thu Oct 9 16:22:02 2014 -0700

    Merge branch 'master' into python-removal



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

81148ac68c6a6c5f36acee477757317882decf5c
 doc/citcoms-manual.pdf | Bin 10837986 -> 10839947 bytes
 doc/citcoms-manual.tex | 100 ++++++++++++++++++++++++++++++++++++++-----------
 visual/autocombine.py  |  27 ++++++++++++-
 visual/batchcombine.py |   2 +-
 visual/combine.py      |  46 ++++++++++++++++++++++-
 5 files changed, 150 insertions(+), 25 deletions(-)

diff --cc doc/citcoms-manual.pdf
index 4ea62b3,c4baae9..9608d53
Binary files differ
diff --cc doc/citcoms-manual.tex
index 5d352c6,8c44935..10c9203
--- a/doc/citcoms-manual.tex
+++ b/doc/citcoms-manual.tex
@@@ -85,7 -85,7 +85,7 @@@ COMPUTATIONAL INFRASTRUCTURE FOR GEODYN
  
  \color{dark_grey}
  \hfill{\Huge \fontfamily{\sfdefault}\selectfont User Manual \\
- \raggedleft \huge \fontfamily{\sfdefault}\selectfont Version {3.?.?}\\}
 -\raggedleft \huge \fontfamily{\sfdefault}\selectfont Version {3.2.0}\\}
++\raggedleft \huge \fontfamily{\sfdefault}\selectfont Version {3.3.0}\\}
  
  \null
  \vfill
@@@ -193,8 -206,13 +204,13 @@@ the authors of the code, and CIG \url{g
  
  
  \section*{Support}
- Support of CitcomS is based upon work supported by the National Science Foundation 
- under Grant No. EAR-0406751. Any opinions, findings, and conclusions or
+ 
 -Pyre development is funded by the U.S. Dept. of Energy's Advanced
++Pyre development was funded by the U.S. Dept. of Energy's Advanced
+ Simulation and Computing program \url{www.sandia.gov/NNSA/ASC} and
+ the National Science Foundation's \url{www.nsf.gov} Information Technology
+ Research (ITR) program (grant \#0205653). Continued support of CitcomS
+ is based upon work supported by the National Science Foundation under
+ Grant No. EAR-0406751. Any opinions, findings, and conclusions or
  recommendations expressed in this material are those of the authors
  and do not necessarily reflect the views of the National Science Foundation.
  
@@@ -384,7 -409,7 +400,7 @@@ and is now $10^{-4}$
  \item The input parameter ``mantle\_temp'' is moved from the {[}CitcomS.solver.param{]}
  to the {[}CitcomS.solver.ic{]} section.
  \end{enumerate}
--This release of CitcomS 3.2 adds numerous changes since 3.1.1 which
++The release of CitcomS 3.2 added numerous changes since 3.1.1 which
  was released in 2009. These include improved implementations of internal
  stress, radial layer dependent viscosity, and velocity boundary conditions.
  Improvements have also been made in solver convergence controls, VTK
@@@ -410,7 -440,43 +426,23 @@@ PDEPV psrw=on parameter
  \end{itemize}
  \end{itemize}
  
 -\section{About Pyre}
 -
 -Pyre is an object-oriented environment capable of specifying and launching
 -numerical simulations on multiple platforms, including Beowulf class
 -parallel computers and grid computing systems. Pyre allows the binding
 -of multiple components such as solid and fluid models used in Earth
 -science simulations, and different meshers. The Pyre framework enables
 -the elegant setup, modification and launching of massively parallel
 -three-dimensional solver applications. 
 -
 -The Pyre framework incorporates features aimed at enabling the scientific
 -non-expert to perform tasks easily without hindering the expert. Target
 -features for end users allow complete and intuitive simulation specification,
 -reasonable defaults, consistency checks of input, good diagnostics,
 -easy access to remote facilities, and status monitoring. Target features
 -for developers include easy access to user input, a shorter development
 -cycle, and good debugging support. 
 -
 -
 -\section{Pyre and CitcomS}
 -
 -Pyre provides a simulation framework that includes solver integration
 -and coupling, uniform access to facilities, and integrated visualization.
 -The framework offers a way to add new solvers to CitcomS and to fine-tune
 -CitcomS simulations. 
 -
 -Developers have created Pyre classes for CitcomS to facilitate simulation
 -setup. However, they are not independent classes in a strict sense.
 -They still share the same underlying data structure and their functionality
 -is not divided clearly. CitcomS was not designed to be object-oriented
 -and to make it so would require significant investment of effort with
 -little return. However, the lack of object-oriented features does
 -not hinder the coupling of CitcomS with other solvers. 
++This release (3.3) removes the Python dependencies from CitcomS and provides
++a tool to convert Python style parameter files to the original CitcomS
++parameter files.  Python support was proving problematic because of
++incompatibility with versions of Python newer than 2.6 (final release 2008)
++and other internal issues.  The removal of Python should
++simplify much of the code while retaining almost all functionality.
++A full list of the changes includes:
+ 
++\begin{itemize}
++\item Removed Python sections of CitcomS
++\item Wrote Python to standard parameter file conversion tool (Py2C)
++\item Converted Python cookbooks parameter files to original style parameter files
++\item Added output of parameters to a pidXXXXXX style file
++\item Updated the manual to correspond to the new changes
++\end{itemize}
+ 
  \section{Governing Equations\label{sec:Governing-Equations}}
 -
  With CitcomS, the mantle is treated as an anelastic, compressible,
  viscous spherical shell under Truncated Anelastic Liquid Approximation.
  With these assumptions, thermal convection is governed by the equations
@@@ -936,15 -1018,90 +968,15 @@@ mpicc~hcc~mpcc~mpcc\_r~mpxlc~cmpic
  \section{Downloading and Unpacking Source}
  
  To obtain CitcomS, go to the Geodynamics Software Packages web page
--\url{geodynamics.org/cig/software/packages/mc/citcoms}, download
++\url{geodynamics.org/cig/software/citcoms}, download
  the source archive and unpack it using the \texttt{tar} command: 
  \begin{lyxcode}
--\$~tar~xzf~CitcomS-3.2.0.tar.gz
++\$~tar~xzf~CitcomS-3.3.0.tar.gz
  \end{lyxcode}
  
  If you don't have GNU Tar, try the following command instead: 
  \begin{lyxcode}
--\$~gunzip~-c~CitcomS-3.2.0.tar.gz~|~tar~xf~-
++\$~gunzip~-c~CitcomS-3.3.0.tar.gz~|~tar~xf~-
  \end{lyxcode}
  
  \section{Installation Procedure}
@@@ -955,7 -1112,7 +987,7 @@@ CitcomS
  \item Navigate (i.e., \texttt{cd}) to the directory containing the CitcomS
  source\texttt{.}~\\
  \texttt{}~\\
--\texttt{\$ cd CitcomS-3.2.0}
++\texttt{\$ cd CitcomS-3.3.0}
  \item Type .\texttt{/configure} to configure the package for your system\texttt{.}~\\
  \texttt{}~\\
  \texttt{\$ ./configure}
@@@ -1233,9 -1440,55 +1265,9 @@@ commands
  You may need to set \texttt{GMTHOME} and \texttt{NETCDFHOME} environment
  variables if these packages is not installed in the system directory.
  
 -
 -\section{\label{sec:Batch-System-Configuration}Batch System Configuration}
 -
 -If you are installing CitcomS on a cluster with a batch system, you
 -can configure Pyre such that the \texttt{citcoms} command automatically
 -submits jobs to the batch queue. Pyre contains support for the LSF,
 -PBS, and Globus batch systems.
 -
 -The command to submit a batch job depends upon the particular batch
 -system used. Further, the command used in a batch script to launch
 -an MPI program varies from one cluster to the next. This command can
 -vary between two clusters, even if the clusters use the same batch
 -system! On some systems, \texttt{mpirun} is invoked directly from
 -the batch script. On others, a special wrapper is used instead. If
 -you need help to configure Pyre for your cluster, you can contact
 -CIG Mantle Convection Mailing List \url{cig-mc at geodynamics.org} for
 -assistance.
 -
 -Properly configured, Pyre can handle job submissions automatically,
 -insulating users from the details of the batch system and the site
 -configuration. This feature has the most value when the system administrator
 -installs a global Pyre configuration file on the cluster (under \texttt{/etc/pythia-0.8}),
 -for the benefit of all users and all Pyre-based applications.
 -
 -For more information on configuring Pyre for your batch system, see
 -CIG's Pythia page \url{geodynamics.org/cig/software/packages/cs/pythia/docs/batch}.
 -For more information on batch system configuration as it pertains
 -to running CitcomS, see Section \vref{sub:Launchers-and-Schedulers}.
 -
 -
 -\section{\label{sec:Installing-without-Pyre}Installing with Pyre}
 -
 -By default, CitcomS 3.2.0 does not install using Pyre. To build CitcomS
 -binaries with the Pyre wrappers (necessary for the example Cookbooks),
 -call \texttt{configure} using the \texttt{-{}-with-pyre} option:
 -\begin{lyxcode}
 -\$~./configure~-{}-with-pyre=yes
 -\end{lyxcode}
 -The only system requirements for this configuration are an MPI library
 -and a C compiler. With Pyre the make command will build \texttt{pycitcoms}
 -and \texttt{mpipycitcoms} as well as the script \texttt{citcoms} used
 -for running CitcomS. Without Pyre the \texttt{make} command will build
 -two command-line tools, \texttt{CitcomSFull} and \texttt{CitcomSRegional},
 -for running the full solver and the regional solver, respectively.
 -
 -
  \section{\label{sec:Software-Repository}Installing from the Software Repository}
  
--The CitcomS source code is available via a Subversion server at the
++The CitcomS source code is available via Git at the
  Geodynamics website \url{geodynamics.org}. This allows users to view
  the revision history of the code and check out the most recent development
  version of the software.
@@@ -1250,14 -1503,14 +1282,22 @@@ In addition to the usual system require
  of additional development tools installed in order to work with the
  source from the CIG software repository.
  
--First, you must have a Subversion client installed. To check, type
--\texttt{svn}; it should return a usage message.
++First, you must have a Git client installed. To check, type
++\texttt{git}; it should return a usage message.
  \begin{lyxcode}
--\$~svn
++\$~git
  
--Type~'svn~help'~for~usage.
++usage: git [--version] [--help] [-C <path>] [-c name=value]
++           [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
++           [-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
++           [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
++           <command> [<args>]
  \end{lyxcode}
--For more information on Subversion, visit the Subversion website \url{subversion.tigris.org}.
++For more information on Git, we recommend one of the following websites:
++
++http://github.com/
++http://git-scm.com/
++https://www.atlassian.com/git/
  
  Second, you must have the GNU tools Autoconf, Automake, and Libtool
  installed. To check, enter the following commands:
@@@ -1269,28 -1522,28 +1309,28 @@@
  \$~libtoolize~-{}-version
  \end{lyxcode}
  For more information about these GNU tools, see the GNU website \url{www.gnu.org/software}.
--The CitcomS v3.2.0 source package was created with Autoconf 2.68,
++The CitcomS v3.3.0 source package was created with Autoconf 2.68,
  Automake 1.11.2, and Libtool 2.4.2.
  
  
  \subsection{Download Source from Subversion}
  
--To check out the latest version of the software, use the \texttt{svn
--checkout} command:
++To check out the latest version of the software, use the \texttt{git 
++clone} command:
  \begin{lyxcode}
--\$~svn~checkout~http://geodynamics.org/svn/cig/mc/3D/CitcomS/trunk~CitcomS
++\$~git~clone~https://github.com/geodynamics/citcoms
  \end{lyxcode}
--This will create the local directory \texttt{CitcomS} (if it doesn't
++This will create the local directory \texttt{citcoms} (if it doesn't
  already exist) and fill it with the latest CitcomS source from the
  CIG software repository.
  
  The \texttt{CitcomS} directory thus created is called a \emph{working
  copy}. To merge the latest changes into an existing working copy,
--use the \texttt{svn update} command:
++use the \texttt{git pull update} command:
  \begin{lyxcode}
--\$~cd~CitcomS
++\$~cd~citcoms
  
--\$~svn~update
++\$~git~pull
  \end{lyxcode}
  This will preserve any local changes you have made to your working
  copy.
@@@ -2580,13 -3151,14 +2621,14 @@@ of time steps (200), how often outputs 
  of the output filenames (\texttt{cookbook3}), and the Rayleigh number
  ($10^{6}$).
  \begin{lyxcode}
 -steps~=~200~\\
 -monitoringFrequency~=~25~\\
 -datafile~=~cookbook3~\\
 -rayleigh~=~1e6
 +steps=200\\
 +monitoringFrequency=25\\
 +datafile=cookbook3\\
 +rayleigh=1e6
  \end{lyxcode}
 -The \texttt{solver.visc} facility assigns the viscosities. The parameters
 -specify whether the viscosity should be updated at every time step
 -(\texttt{on}), the number of viscous layers (4), the viscosity of
 +The parameters specify whether the viscosity should be updated at every time
 +step (\texttt{on}), the number of viscous layers (4), the viscosity of
++>>>>>>> python-removal
  each layer (1,1,1,1), whether the viscosity is temperature dependent
  (\texttt{on}), the type of viscosity law to use (4), the activation
  energy of each layer (0.2,0.2,0.2,0.2), the temperature offset of
@@@ -2595,18 -3167,18 +2637,32 @@@ whether to apply the minimum cutoff (\t
  minimum cutoff (1.0), whether to apply the maximum cutoff (\texttt{on}),
  and the value of the maximum cutoff (100.0). 
  \begin{lyxcode}
+ VISC\_UPDATE~=~on~\\
+ num\_mat~=~4~\\
+ visc0~=~1,1,1,1~\\
+ TDEPV~=~on~\\
+ rheol~=~4~\\
+ viscE~=~0.2,0.2,0.2,0.2~\\
+ viscT~=~0,0,0,0~\\
+ viscZ~=~0,0,0,0~\\
+ VMIN~=~on~\\
+ visc\_min~=~1.0~\\
+ VMAX~=~on~\\
+ visc\_max~=~100.0
++=======
 +VISC\_UPDATE=on\\
 +num\_mat=4\\
 +visc0=1,1,1,1\\
 +TDEPV=on\\
 +rheol=4\\
 +viscE=0.2,0.2,0.2,0.2\\
 +viscT=0,0,0,0\\
 +viscZ=0,0,0,0\\
 +VMIN=on\\
 +visc\_min=1.0\\
 +VMAX=on\\
 +visc\_max=100.0
++>>>>>>> python-removal
  \end{lyxcode}
  The range of the layers are determined by the following parameters:
  layer 1 extends from the top surface to a depth of \texttt{solver.const.z\_lith}



More information about the CIG-COMMITS mailing list