A full compilation of NWChem can easily take 20-40 minutes, depending on your build machine.
Sometimes you need to make changes to the source code, e.g. if you want to use GabEdit to analyse output -- ECCE is a fantastic piece of software and is great for managing computations, but GabEdit has implemented some pretty interesting routines for orbital analyses. In order for you to be able to reliably import NWChem output into GabEdit you need to modify a handful of fortran files.
See e.g. http://verahill.blogspot.com.au/2013/02/3xx-modifying-nwchem-611-to-work-with.html for patching NWChem, and http://verahill.blogspot.com.au/2012/11/visualising-nwchem-output-with-gabedit.html for how to run your nwchem jobs and how to visualize them in gabEdit (you need to explicitly define your basis sets).
Angelo Rossi made this comment:
Hello: Thank you so much for this valuable information. But under the heading of "Compilation" above, the directions lead to a pointer to compile the entire NWChem source. But only one or two subroutines are modified. Shouldn't there be a more surgical way of proceeding after making the suggested changes? Actually this would make a great separate post. That is, provide a procedure to recompile and link when small changes to NWChem are made. I've done this, but I can't remember. Kind regards, Angelo
The answer was on this page: http://xray.isc.kharkov.com/ext_docs/NWChem/prog/node12.html
So here we go:
Partial recompile/relinking of NWChem
1. Environmental variables
Define your environmental variable like you would during a normal compile
2. Run make in modified directoriesexport LARGE_FILES=TRUE export TCGRSH=/usr/bin/ssh export NWCHEM_TOP=`pwd` export NWCHEM_TARGET=LINUX64 export NWCHEM_MODULES="all python" export PYTHONVERSION=2.7 export PYTHONHOME=/usr export BLASOPT="-L/opt/openblas/lib -lopenblas" export USE_MPI=y export USE_MPIF=y export USE_MPIF4=y export MPI_LOC=/usr/lib/openmpi/lib export MPI_INCLUDE=/usr/lib/openmpi/include export LIBRARY_PATH=$LIBRARY_PATH:/usr/lib/openmpi/lib:/opt/acml/acml5.2.0/gfortran64_int64/lib:/opt/openblas/lib export LIBMPI="-lmpi -lopen-rte -lopen-pal -ldl -lmpi_f77 -lpthread" export FC=gfortran
In the GabEdit example we made changes to files in src/ddscf, src/nwdft/scf_dft, and src/mcscf
cd $NWCHEM_TOP/src/ddscf make cd $NWCHEM_TOP/src/nwdft/scf_dft make cd $NWCHEM_TOP/src/mcscf make
3. Run make link in the src directory
cd $NWCHEM_TOP/src make link
4. Do your usual post-compilation memory magic
cd $NWCHEM_TOP/contrib ./getmem.nwchem
Done!
This all in all took around 6 seconds instead of 30-odd minutes.
Hello:
ReplyDeleteThank you. I like.
Warm regards,
Angelo
Angelo,
Deleteyou're welcome. It was a good idea, and I've been asking myself the same thing -- I just needed the extra push.