Requirements:
Compilers: Intel Fortran / C / C++ , version 8.0
MPI implementation: LAM 7.1.2b20
hdf5 library: hdf5-1.6.4
Chombo library: Chombo 1.4 --make sure you get the latest version!
Installation
For Mckenzie users, you should be using switcher compiler = intel-8.0.
First make sure the Intel compilers are properly installed and the appropriate environment configuration files are sourced.
Build LAM with the following:
./configure CC=icc CXX=icpc FC=ifort CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" --prefix=/home/merz/lib/lam-7.1.2b20
make
make install
Make sure to set your prefix to the desired location. In particular note the CFLAGS, which enable large file support. This is not necessary for hdf5, but desirable. Before you continue you should set your $PATH to find your new LAM executables first, which can be done in csh with:
setenv PATH '/home/merz/lib/lam-7.1.2b20/bin/:'$PATH
using my prefix path as an example.
Next build a parallel and serial hdf5 library. On Mckenzie a global serial hdf5 library can be found in /opt, choose the most recent. To build parallel hdf5:
./configure --enable-fortran --enable-cxx --enable-parallel --enable-production CXX=mpiCC F9X=mpif77 CC=mpicc "CFLAGS=-O3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" --prefix=/home/merz/lib/phdf5-1.6.4
make
lamboot
make check
make install
As before make sure set prefix to the desired location. If the test fails because you are using an nfs filesystem it may be due to not using the noac nfs option, and you can quickly test by setting $HDF5_PARAPREFIX to a local ext3 filesystem. The Fortran and C++ wrappers to the library are optional and not necessary for Chombo.
Now it is time to install Chombo. First edit the Make.defs.local file to apply the following changes:
CXX = icpc
FC = ifort
MPI = TRUE
MPICXX = mpiCC
HDFINCFLAGS = -I/opt/hdf5-oscar-1.6.3/include
HDFLIBFLAGS = -L/opt/hdf5-oscar-1.6.3/lib -lhdf5 -lz
HDFMPIINCFLAGS= -I/home/merz/lib/phdf5-1.6.4/include
HDFMPILIBFLAGS= -L/home/merz/lib/phdf5-1.6.4/lib -lhdf5 -lz
EMT =
Make sure that the HDF library and include file paths are set to agree with where you have them installed. This file also controls debug/optimization selection and compiler flags to support these modes. I have found that if I set DIM=3 that there is a problem with the chombo fortran pre-processor and $CHOMBO_HOME/lib/src/BoxTools/STATE.H had to be edited to have all comments removed. I have also found that DEBUG=FALSE causes a Makefile conflict - a quick workaround is to edit $CHOMBO_HOME/lib/mk/Make.defs.default to hardwire DEBUG=FALSE. Continue building the library, testing programs, and then run them:
make lib
make test
make run
If the tests all pass correctly you should be ready to begin!
ChomboVis
Download and untar the "ChomboVis and Everything" package. ChomboVis will not compile using the current version of gcc on Mckenzie and as such one should perform the following after untarring the package:
make gcc
setenv PATH '/scratch/merz/Chombo/ChomboVis-4.8.10-and-everything/usr/bin/:'$PATH
make all
Where the PATH variable has been updated in a csh compatable shell to point to the location where the 3.3 version of gcc has been installed. Now you should be able to cd into that path to find the chombovis executable. You should be able to launch it from any of the devel nodes or hosehead and then load in the sample data sets that are contained in the ChomboVis directory labelled data.
Updated 050516