#!/bin/bash

SCRIPTDir=`pwd`/script
VASPDir=$TkPerlDir/VASP
CMD="/usr/bin/perl $VASPDir/VASP.pl"
AddMDHistoryCMD="/usr/bin/perl $SCRIPTDir/AddMDHistory.pl"

PBE96VASPCommand=./DoVASP.sh
PBE0VASPCommand=./DoVASP-HF-mpi.sh
ModifyINCARCommand="/usr/bin/perl $SCRIPTDir/ModifyINCARforPBE0.pl"

PBE96TemplateDir=`pwd`/Template-PBE96
PBE96TemplatePath=$PBE96TemplateDir/Template-cubic-MgSiO3.cif
TemplateDir=`pwd`/Template-PBE0
#TemplatePath=$TemplateDir/Template-cubic-Perovskite.cif
#HistoryFile=History.csv

post=

#ASiteList="Mg Ca Sr Ba Cd"
#BSiteList="C Si Ge Sn Ti Zr Hf Ce Pt"
#ASiteList="Mg Ca Sr Ba Cd"
#BSiteList="Si C Ge Sn Ti Zr Hf Ce Pt"
ASiteList="Mg Ca Cd"
BSiteList="Si"

#===========================
# Calculate all
#===========================

OriginalDir=`pwd`

PrevDir=
for A in $ASiteList
do
for B in $BSiteList
do
#===============================
# PBE96 calculation
#===============================
	PBE96WorkDir=${A}${B}O3-cubic-PBE96
	echo Working in $PBE96WorkDir...

	if [ -f STOP.`hostname` ]; then
		exit -1
	fi

	if [ -d $PBE96WorkDir ]; then
		echo [$PBE96WorkDir] exists.
		echo Skip.
		continue
	fi

	mkdir $PBE96WorkDir
	cp $PBE96TemplateDir/{*.sh,hosts,*.klist} $PBE96WorkDir

	echo "sed -e \"s/{A}/$A/g\" $PBE96TemplatePath \> cif.temp"
	sed -e "s/{A}/$A/g" $PBE96TemplatePath > cif.temp
	echo "sed -e \"s/{B}/$B/g\" cif.temp \> cif.temp"
	sed -e "s/{B}/$B/g" cif.temp > $PBE96WorkDir/${A}${B}O3-cubic.cif
	rm cif.temp

	chmod +x $PBE96WorkDir/DoVASP.sh

	cd $PBE96WorkDir
	echo === Working in \"`pwd`\"
	echo === Files in \"`pwd`\"
	ls

	echo ''
	echo === Execute [$PBE96VASPCommand]
	$PBE96VASPCommand

	echo ''
	echo === Exit to \"$OriginalDir\"
	cd $OriginalDir

#===============================
# PBE0 calculation
#===============================
	PBE0WorkDir=${A}${B}O3-cubic-PBE0
	echo Working in $PBE0WorkDir...

	if [ -f STOP.`hostname` ]; then
		exit -1
	fi

	if [ -d $PBE0WorkDir ]; then
		echo [$PBE0WorkDir] exists.
		echo Skip.
		continue
	fi

	mkdir $PBE0WorkDir
	cp $PBE96WorkDir/{INCAR,POSCAR,POTCAR,KPOINTS} $PBE0WorkDir
	cp $TemplateDir/{*.sh,hosts,*.klist} $PBE0WorkDir
	$ModifyINCARCommand $PBE0WorkDir/INCAR

#	echo "sed -e \"s/{A}/$A/g\" $TemplatePath \> cif.temp"
#	sed -e "s/{A}/$A/g" $TemplatePath > cif.temp
#	echo "sed -e \"s/{B}/$B/g\" cif.temp \> cif.temp"
#	sed -e "s/{B}/$B/g" cif.temp > $WorkDir/${A}${B}O3-cubic.cif
#	rm cif.temp

	chmod +x $PBE0WorkDir/*.sh

	cd $PBE0WorkDir
	echo === Working in \"`pwd`\"
	echo === Files in \"$wd\"
	ls

	echo ''
	echo === Execute [$PBE0VASPCommand]
	$PBE0VASPCommand

	echo ''
	echo === Exit to \"$OriginalDir\"
	cd $OriginalDir

	echo ''
	echo ''

	PrevDir=$WorkDir
done
done

#===========================
# Post processors
#===========================
#$SCRIPTDir/MergePositionsInCIFs.pl --Positions=$iSite 0000.last/SCF MergedCIF.cif
#$SCRIPTDir/MakeSummaryCSV2.pl --Positions=$iSite --AtomType=$AtomType
$SCRIPTDir/MakeSummaryCSV.pl TotalEnergy.csv .

#rm $HistoryFile
#for Template in $TemplateList
#do
#	$AddMDHistoryCMD $HistoryFile $Template
#done
