#############################################################################
README H2020 EoCoE Performance Optimization Workshop 12/2015, ParFlow example
#############################################################################

:Author: Lukas POORTHUIS (LPo), Klaus GOERGEN (KGo)
:Contact: l.poorthuis@fz-juelich.de, k.goergen@fz-juelich.de
:Web site: http://www.hpsc-terrsys.de/simlab
:Version: 2015-11-11

**********************
Content and motivation
**********************

This is a self-contained archive with an idealized test case of the ParFlow
hydrologic model in the context of the H2020 EoCoE project 1st performance
optimization workshop in December 2015 at JSC.

Testcase: terrain.sine experiment(weak/strong scaling available by JUBE);
ParFlow only, no CLM surface model; idealized; from 1 to n tasks. Highly
versatile experiment, etc. No input data are required. Outputs might be switched
off, a real world example will be included in the future.

*********
Structure
*********

- ``ParFlowInstall.ksh``: implementation
- ``ParFlowJUBE2ctrl.xml``: JUBE2 run-control
- ``model\``: namelist directory

	+ ``terrain.sine.tcl``: ParFlow namelist
	+ ``terrain.sine.ponding.tcl``: see above but with low permeability

- ``env.ini``: set up the module environment, sourced by scripts
- ``cleaner.ksh``: attention: removes also the ``bench_run/`` with the
  results
- ``funcs.py``: contains Python calculations utilized by JUBE
- ``doc\``: contains the JUBE script documentation and ParFlow manual
- ``profiler_data\``: contains files that are needed to run the respective
  profiler
- ``templates\``: contains copies of the files that are available through the
  default ``JUBE_INIT_PATH`` and external parametersets

 	+ ``jureca-chainJobs.sh``: submit chainjobs on jureca
 	+ ``platform.xml``: default parametersets/substitutesets
 	+ ``submit.job.in``: slurm substitute template
 	+ ``profiler.xml``: custom external parametersets containing parameter
 	  for the different profiler

**************************
HPC system and environment
**************************

- JSC/JURECA
- Stage 3, intel-para/2015.07 software stack

******
Status
******

Ready to use. See ToDos below.

******************
Information / URLs
******************

- `ParFlow src <http://inside.mines.edu/~rmaxwell/parflow.r693.tar.gz>`_:

  * Version: r693
  * Date of retrieval: 2015-11-10 08:13:20

- `ParFlow homepage <http://inside.mines.edu/~rmaxwell/maxwell_software.shtml>`_
- `ParFlow Blog <http://parflow.blogspot.de/>`_
- Official ParFlow manual PDF under ``./doc``
- Recent publication:
  Maxwell, R. M., L. E. Condon, and S. J. Kollet (2015), A high-resolution
  simulation of groundwater and surface water over most of the continental
  US with the integrated hydrologic model ParFlow v3, Geosci. Model Dev.,
  8(3), 923–937, doi:10.5194/gmd-8-923-2015.

*********************
Cookbook/Instructions
*********************

See the ``doc/cookbook.rst`` file for a full usage documentation.

*****
ToDos
*****

- Improvement of the scripting environment |done|
- Implementation of Scalasca |done|
- Postprocessing visualization scripts, Python+numpy+matplotlib

  + scaling plot
  + topology plot |done|

- Add-on of test case using also CLM land model and 1D forcing data

********
Linkages
********

- NIC SBDA project of SimLab TerrSys

.. |done| unicode:: U+2713
