   AdvancedUser/README

This directory contains some additional software.

1) getrsync  putrsync
   This is a very useful wrapper for rsync. It allows for synchronizing
   two MCTDH directories.

2) add2path
   This script allows to add or remove entries to/from the PATH variable.

3) ediff
   This program is used to make the output of diff more readable to
   human beings. Usage: diff file1 file2 | ediff
   ediff is used by mdiff and ddiff

4) mcalc
   This is a simple but useful (non-graphical) pocket calculator
   which knows many constants (e.g. energy conversion constants).

5) crema
   Change Record Marker. This tool changes the FORTRAN record markers
   from 8 to 4 or from 4 to 8 bytes. Useful if one runs GCC-3 (g77) and
   GCC-4 (gfortran) in parallel.


To install this software one first has to choose a bin directory to
which the binaries and scripts should be moved. The default is ~/bin.
(To change this, modify line 12 of the Makefile.)
One may think that an obvious choice would be $MCTDH_DIR/bin, but this may
lead to problems when one uses getrsync and the synchronization modifies
the getrsync script. Hence let us assume you want to store the binaries and
scripts to ~/bin. If you did not have a ~/bin directory before, it must be
added to your PATH variable. Since add2pathf must be sourced, you have to
add the lines
export PATH=~/bin:$PATH
source ~/bin/add2pathf
to your bashrc. This is accomplished by typing "make bashrc" while being
in the AdvancedUser directory.

To compile the programs and to move them to ~/bin just type "make".
If ~/bin (or whatever you have chosen for $(BIN) in the Makefile)
does not exist, make will create it.
It could be that mcalc does not compile because some software (yacc,lex)
or some include file (readline.h) is missing on your computer.
In this case go to the yaccflex directory and try if "./mcalc-test" works.
If it does, simply copy mcalc-test to ~/bin/mcalc and you are done.
If it does not work, copy the content of yaccflex (except mcalc-test)
to AdvancedUser, move to AdvancedUser and type "make mcalc".
If it still does not work, you have to install the missing software
(inspect the output of make). You should also try to in-comment
 -lncurses (or -llibncurses) in line 16 of the Makefile.

You may call make with different targets:

"make"  or "make all"   installs everything.

"make getrsync"         installs getrsync and putrsync

"make add2path"         installs add2pathf

"make ediff"            installs ediff

"make mcalc"            installs mcalc

"make crema"            installs crema

"make bashrc"           adds ~/bin to the PATH and sources add2pathf

"make clean"            removes newly created files from AdvancedUser

"make clean_bin"        removes getrsync,putrsync,add2pathf,ediff,
                        and mcalc from ~/bin

Do not forget to source the ~/.bashrc to activate its modification.

