hc module

hc is a C-language implementation of a Hager & O'Connell (1981), semi-analytical, propagator matrix approach to solving for velocities and tractions in spherical shell Stokes flow in the presence of only radially varying viscosity.

This code is based on work by  Bernhard Steinberger who modified the original source from  Brad Hager and  Rick O'Connell.

Bernhard's F77 was rewritten in C by  Thorsten Becker and  Craig O'Neill in 2006 during the CIG mantle flow benchmarking effort.

References

Screenshots of hc run from within SEATREE

source:/trunk/doc/seatree/Screenshot-1.png source:/trunk/doc/seatree/Screenshot-7.png

Availability

A current version of hc can be found is included in the SEATREE distribution.

The development version of hc is hosted at  CIG's SVN server.

Requirements

A C compiler such as gcc for command line functionality, GMT for advanced functionality.

Installation

hc needs to be compiled before it can be used within SEATREE or as a standalone. This can be done automatically using the SEATREE installation process, or by hand. To install hc by hand, extract the tar file, follow the instructions in the README, and type "make".

Documentation

1. Use of hc within the Seatree environment is described in the Seatree user documentation.

2. Use of hc from the python command line interface is described in the python driver help page

> ../../../py-drivers/py-hc/calc_vel_and_plot.py -h
Usage: calc_vel_and_plot.py [options]

Options:
  -h, --help            show this help message and exit
  --compute=COMPUTE     0: only plot 1: compute velocities or tractions with
                        HC (default = 1)
  --cdir=COMPUTEDIR, --compute-dir=COMPUTEDIR
                        directory to store computation results
  --dfac=DFAC, --density-factor=DFAC
                        density file scaling factor (default = 0.25)
  --dsf=DSF, --density-scaling-file=DSF
                        density scaling factor file (depth-dependent, like
                        viscosity), overrides --dfac (default = )
  --dt=DENSTYPE, --density-type=DENSTYPE
                        density SH type (dshs is short Becker & Boschi
                        tomography type, default = dshs)
  --dm=DENSMODEL, --density-model=DENSMODEL
                        density model, assumes % anomalies (default =
                        /home/walter/becker/progs/src/seatree/py-drivers/py-
                        hc/example_data/smean.31.m.ab)
  --free-slip           use free slip boundary condition (default = True)
  --gmt-path=GMTPATH    path to GMT binarym if not in system path
  --hc=HCPATH, --hc-path=HCPATH
                        path to HC binary, if not in system path
  --layers=LAYERS       comma separated layers for velocity or traction
                        plotting (default = 21,15,6,2)
  --no-slip             use no slip boundary condition (default free slip)
  --plot=PLOT           for plotting, supply 1 or more of the following
                        options: 'g' to plot geoid, 'v' to plot plate
                        velocities, 't' to plot radial tractions, 'n' for none
                        (default = gvt)
  --pdir=PLOTDIR, --plot-dir=PLOTDIR
                        directory to store plots
  --pvel=PLATEVELF, --plate-velocity-file=PLATEVELF
                        use plate velocity boundary condition, overrides -f
                        and sets -n
  --verbosity=VERBOSITY
                        verbosity level between 0 and 3 (default = 1)
  --vf=VISCFILE, --viscosity-file=VISCFILE
                        viscosity file (default =
                        /home/walter/becker/progs/src/seatree/py-drivers/py-
                        hc/example_data/visc.C2)
Cleaning Up...

3. Use of the individual hc binaries is described in a readme file.