Wiki

Clone wiki

pflotran-dev / Installation / Linux

Linux Installation Instructions

Required software packages:

  • Fortran 2003 compiler: gfortran > 4.7.x, intel >= 14
  • Mercurial source control management tool
  • git source control management tool
  • Message Passing Interface (MPI): E.g. MPICH2, Open MPI, etc.
  • BLAS/LAPACK libraries
  • Hierarchical Data Format HDF5
  • The developer version of PETSc: petsc-dev
  • METIS/ParMETIS (for unstructured grids)

Installation Instructions

  1. Install Mercurial (to clone the PFLOTRAN) and git (to clone petsc-dev). git is usually installed by default on most modern operating systems. Both are usually available through your package manager.

  2. Install MPI, BLAS/LAPACK and HDF5 libraries (Note that petsc-dev can be configured to download and install these libraries automatically. E.g. --download-mpich=yes or --download-openmpi=yes, --download-hdf5=yes, --download-f-blas-lapack=yes)

  3. Install PETSc

    3.1. Clone petsc and check out the supported version:

    git clone https://bitbucket.org/petsc/petsc petsc
    cd petsc
    git checkout c41c7662de68b036bda6be236f939e8b55959cb0
    

    NOTE: petsc-dev is the development version of PETSc. It may be unstable or have internal API changes that require changes to pflotran's source code. petsc-dev does not have traditional version numbers, e.g. 3.4.2, instead versions are identified by the changeset-id. The only supported version is specified by the changeset-id above. The supported version will change periodically as we need bug fixes or new features and changes will be announced on the mailing lists. The supported version of petsc-dev is used on the buildbot automated testing system.

    3.2. Configure petsc-dev (see petsc-dev installation instructions).

    ./configure --with-mpi-dir=<dir> --with-hdf5-dir=<dir> --with-blas-lapack-dir=<dir>
    

    or

    ./configure --download-mpich=yes --download-hdf5=yes --download-fblaslapack=yes
    

    3.3. Compile petsc-dev

    cd $PETSC_DIR
    make all
    

    or even better follow the 'make' instructions printed at the end of configuration. E.g.

    xxx=========================================================================xxx
      Configure stage complete. Now build PETSc libraries with:
      make PETSC_DIR=/proj/geo002/petsc-dev PETSC_ARCH=cray-xt4-pgi all
    xxx=========================================================================xxx
    
  4. Download (clone) PFLOTRAN.

hg clone https://bitbucket.org/pflotran/pflotran-dev
  1. Compile PFLOTRAN (ensure that PETSC_DIR and PETSC_ARCH environment variables are properly defined)
cd pflotran/src/pflotran
make pflotran
  1. Previous PETSc releases used in PFLOTRAN:

014-12-30 (Hammond c7e85fd): git checkout c41c7662de68b036bda6be236f939e8b55959cb0

2014-09-02 (Hammond 1651559): git checkout 821a7925fede8aa3b3b482fc9ccb2d087e2f80fa

2014-04-17 (Hammond 84b6ab5): git checkout 0c8c14c5

2014-03-29 (Andre e220b6c): git checkout 4663132a

2014-01-14 (Andre 7ef104a): git checkout 06283fd4

Updated