/ParFlow-release-archive

(non-official) open-source, object-oriented, parallel watershed flow model

Primary LanguageCOtherNOASSERTION

See the "User's Manual" for info on "Getting Started" in ParFlow.

Note this version of Parflow uses a new configure/make system based on
the standard GNU autoconf configure system.  This replaces the home
grown set of scripts used in previous versions and should be more
portable.

Since Parflow is composed of several different parts which might
require different compilers (e.g. on some MPP architectures the
front-end machine is different from the nodes) the build process
involves compiling several different parts.

-----------------------------------------------------------------------------
Step 1: Setup
-----------------------------------------------------------------------------

Decicde where you wish to install Parflow and associated libraries.

Set the environment variable PARFLOW_DIR to your chosen location:

for csh and tcsh users:

setenv PARFLOW_DIR /home/snoopy/parflow

or for bash users:

export PARFLOW_DIR=/home/snoopy/parflow

-----------------------------------------------------------------------------
Step 2: Extract the Source
-----------------------------------------------------------------------------
Extract the source files from the compressed tar file.

mkdir ~/parflow 
cd ~/parflow 
gunzip ../parflow.tar.Z 
tar -xvf ../parflow.tar

-----------------------------------------------------------------------------
Step 3: Build and install Parflow
-----------------------------------------------------------------------------

This step builds the Parflow library and executable.  The library is
used when Parflow is used as a component of another simulation
(e.g. WRF).  

cd $PARFLOW_DIR
cd pfsimulator
./configure --prefix=$PARFLOW_DIR --with-amps=mpi1
make 
make install

This will build a parallel version of Parflow using the MPI1
libraries.

You can control build options for Parflow, use

 ./configure --help 

to see other configure options.   

Note that Parflow defaults to building a sequential version so
"--with-amps" is needed when building for a parallel computer.  You
can explicitly specify the path to the MPI to use with the
"--with-mpi" option to configure.

-----------------------------------------------------------------------------
Step 4: Build and install pftools
-----------------------------------------------------------------------------

pftools is a package of utilities and a TCL library that is used to
setup and postprocess Parflow files.  The input files to Parflow are
TCL scripts so TCL must be installed on the system.

A typical configure and build looks like:

cd pftools
./configure --prefix=$PARFLOW_DIR --with-amps=mpi1
make 
make install
make doc_install

Note that pftools is NOT parallel but some options for how files are
written are based on the communication layer so pftools needs to know
what what used to build the Parflow library.

If TCL is not installed in the system locations (/usr or /usr/local) you need
to specify the path with the "--with-tcl=<PATH> configure option.

See "./configure --help" for additional configure options for pftools.

-----------------------------------------------------------------------------
Step 5: Running a sample problem
-----------------------------------------------------------------------------

If all went well a sample Parflow problem can be run using:

cd test
tclsh default_single.pftcl

Note that PAFLOW_DIR must be set for this to work and it assume tclsh
is in your path.  Make sure to use the same TCL as was used in the
pftools configure.

----------------------------------------------------------------------------
Notes: RMM
----------------------------------------------------------------------------
To compile with CLM add
--with-clm
to the configure line

To change compilers, set the CC, CF and F77 variables. For example:
setenv CC icc
setenv FC ifort
setenv F77 ifort