====Abinit====
ABINIT is an open-source suite of programs for materials science. It implements density functional theory, using a plane wave basis set and pseudopotentials, to compute the electronic density and derived properties of materials ranging from molecules to surfaces to solids. More information and tutorials can be found [[https://www.abinit.org/|here]].
Below is a walkthrough of a test example for running Abinit
====Environment Setup====
Edit your ''$HOME/.bashrc'' file to contain these modules to begin working with Abinit. This will load the dependencies required for the Module.
module load gcc/4.5.0
module load openmpi/1.5.4
module load mkl/11.1
module load abinit
====Example Job====
Create a directory to run your Abinit jobs in ''ABINIT-JOBS'', then add the ''Input'' and ''Psps_for_tests'' folders to the directory you created. These test require their own pseudopotential files which is why we copy the ''Psps_for_tests'' directory.
razor-l3:jokinsey:~$ mkdir ABINIT-JOBS
razor-l3:jokinsey:~$ cd ABINIT-JOBS/
razor-l3:jokinsey:~/ABINIT-JOBS$ cp -r /share/apps/abinit-6.12.3/share/abinit-test/tutorial/Input .
razor-l3:jokinsey:~/ABINIT-JOBS$ cp -r /share/apps/abinit-6.12.3/share/abinit-test/Psps_for_tests .
In your ''$HOME/ABINIT-JOBS/Input'' directory modify the ''tparal_3.files'' file to reflect the new relative location of the pseudopotential file used in the job.
Change the line in ''tparal_3.files''
../../../Psps_for_tests/HGH/79au.11.hgh
So that it reads
../Psps_for_tests/HGH/79au.11.hgh
In the directory ''$HOME/ABINIT-JOBS'' create a file called ''abinit.pbs'' which will be the PBS script we will use to run our job.
Your PBS script should look like this.
#!/bin/bash
#PBS -N abinit
#PBS -q tiny12core
#PBS -j oe
#PBS -o abinit.$PBS_JOBID
#PBS -l nodes=1:ppn=12
#PBS -l walltime=1:00:00
cd $PBS_O_WORKDIR
cp -r $HOME/ABINIT-JOBS/Input /scratch/$PBS_JOBID
cp -r $HOME/ABINIT-JOBS/Psps_for_tests /scratch/$PBS_JOBID
cd /scratch/$PBS_JOBID/Input
NP=$(wc -l < $PBS_NODEFILE)
mpirun -np $NP -machinefile $PBS_NODEFILE abinit < tparal_3.files >& tparal_3.log
mv *.log *.out *LOG* $PBS_O_WORKDIR/
In the ''PBS'' script first we move into the working directory and copy all of our directories with the necessary files from our home directory to the temporary ''/scratch/$PBS_JOBID'' directory to run our computation. Then once we run the computation we move the output files back to the directory where we submitted the job from.
Then submit the job to the queue. There will be a lot of log files output. I would start looking at ''tparal_3.log''.
razor-l3:jokinsey:~/ABINIT-JOBS/Input$ qsub abinit.pbs