#!/bin/bash
# use -x option for debug

#==========================================
# Prameters
#==========================================

script_dir=${0%/*}
if [ -e $script_dir/vasp_config.sh ]; then
	. $script_dir/vasp_config.sh
elif [ -e $DataRoot/scripts/vasp_config.sh ]; then
	. $DataRoot/scripts/vasp_config.sh
else
	echo 
	echo *** ERROR: Can not find [$script_dir/vasp_config.sh] nor [$DataRoot/scripts/vasp_config.sh]
	echo
	exit
fi
if [ -e $script_dir/vasp_params.sh ]; then
	. $script_dir/vasp_params.sh
fi


#MDMode: MD|VCMD
MDMode=VCMD
InitializeVelocity=0

PrecisionMD=Norm
EDIFFMD=3.0e-4
EDIFFGMD=5.0e-3
ALGOMD=53
GammaOnlyMD=0
aKProductMD=1.0
#aKProductMD=1.5
#aKProductMD=fix:1/1,1/1,1/1
ISMEARMD=1
SIGMAMD=0.1

NKREDMD=$NKREDCommon
HybridALGOMD=$HybridALGOCommon
ISMEARHybridFunctionalMD=$ISMEARHybridFunctionalCommon
SIGMAHybridFunctionalMD=$SIGMAHybridFunctionalCommon

KeepSymmetryMD=0

PStressMD=$PStressCommon
TEBEGMD=2100
TEENDMD=2100

NSWMD=2000
POTIMMD=2.0
SMASSMD=-1
NBLOCKMD=50

LELFMD=.FALSE.


#====================================================
# MD command
#====================================================
#MPIParamsMD="--Param:NPAR=$NPAR --Param:KPAR=$KPAR --Param:LPLANE=.TRUE."
MPIParamsMD=$MPIParamsCommon

# For phonon, use LREAL=.FALSE. and large ENCUT like 500 eV
# For usual DFT use default for ENCUT (comment out) and LREAL=Auto
AdditionalParametersMD=$AdditionalParametersCommon
#AdditionalParametersMD="--Param:LREAL=Auto"
#AdditionalParametersMD="--Param:LREAL=Auto --Param::LWANNIER90_RUN=.FALSE."
#AdditionalParametersMD="--Param:LREAL=Auto --NBANDS=x2"
#AdditionalParametersMD="--Param:LREAL=.FALSE. --NBANDS=64 --Param:SYMPREC=1e-4";
#AdditionalParametersMD="--Param:LREAL=Auto --NBANDS=64 --ENCUT=500"
#AdditionalParametersMD="--Param:LREAL=.FALSE. --ENCUT=500"

CommonParametersMD="--SpinOrbit=$SpinOrbitForIonDynamics --NonCollinear=$NonCollinear --LMAXMIX=$LMAXMIX \
	--SpinPolarized=$SpinPolarized"
HFParametersMD="--HybridFunctional=$HybridFunctional \
	--NKRED=$NKREDMD \
	--ISMEARHybridFunctional=$ISMEARHybridFunctionalMD \
	--SIGMAHybridFunctional=$SIGMAHybridFunctionalMD"
PrecisionParametersMD="--Precision=$PrecisionMD --Param:EDIFF=$EDIFFMD --Param:EDIFFG=$EDIFFGMD \
	--Param:ISMEAR=$ISMEARMD --Param:SIGMA=$SIGMAMD \
	--Param:ALGO=$ALGOMD --Param:LELF=$LELFMD \
	--GammaOnly=$GammaOnlyMD --aKProduct=$aKProductMD"

CMDMD="$CMD --Action=ModifyFiles --Function=$MDMode \
	--InitializeVelocity=$InitializeVelocity \
	$MPIParamsMD \
	$CommonParametersMD \
	$HFParametersMD \
	$PrecisionParametersMD \
	$AdditionalParametersMD \
	--KeepSymmetry=$KeepSymmetryMD \
	--PStress=$PStressMD \
	--Param:NSW=$NSWMD --Param:NBLOCK=$NBLOCKMD \
	--Param:TEBEG=$TEBEGMD --Param:TEEND=$TEENDMD \
	--Param:POTIM=$POTIMMD --Param:SMASSMD=-1 \
	$ARG1"

#====================================
# Relax
#====================================
echo ' '
echo '================================================================'
echo "  Modify inputfiles for MD: [$CMDMD]"
echo '================================================================'

$CMDMD


echo 
echo ======================================================================
echo vasp_modify_md.sh finished.
echo ======================================================================
echo 
