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

#==========================================
# VASP Prameters
#==========================================

export NPAR=4
export KPAR=1

#SpinPolarized={SpinPolarized}
export SpinPolarized=No
  #export SpinPolarized=Yes
  export SpinOrbit=.FALSE.
  #export SpinOrbit=.TRUE.
  #export NonCollinear=
  export NoSOCForIonDynamics=0
  export LMAXMIX=4
  export LMAXMIXForSO=6
#UseConventionalCell={UseConventionalCell}
export UseConventionalCell=No
#UseConventionalCell=Yes
#DFT Functional=PAW_LDA54|PAW_PBE54|PAW_LDA52|PAW_PBE52|GGA|US|PAW|PAW_PBE
export Functional=PAW_PBE54
  export HybridFunctional=
  #export HybridFunctional=PBE0
  #export HybridFunctional=HSE
#Meta GGA: TPSS|RTPSS|M06L|MBJ
  export METAGGA=
  if [ "$METAGGA" = "MBJ" ]; then
    export FunctionalForMBJ=PAW_LDA54
    export LASPH=.TRUE.
    #export CMBJ="1.5,1.5"
    export IMIX=1
  fi
#Choose POTCAR if needed
export UseRecommendedPOTCAR=0
  #export UseRecommendedPOTCAR=Ba=Ba_sv,Si=Si,O=O_h
#BurstPOTCAR: 0 => Use same POTCAR for the same atom types; Site => Burst POTCAR for independent atom sites
  export BurstPOTCAR=0
  export MakeCIFParams=
# Spcify the volume percentages of WS spheres if update RWIGS in INCAR
  export UseDBRWIGs=1
  export UpdateRWIGsByRBader=0.9

export SpinOrbitForIonDynamics=.FALSE.

#******** IMPORTANT *********
# For accurate tasks, VCRelax, SCF and postprocessors
# For phonon, EDIFF should be very small, EDIFFG should be negative and small
#   Typical values: EDIFF=1e-4, EDIFFG=1e-3 for DFT
#                   EDIFF=1e-4, EDIFFG=-1e-4 for phonon for 'normal' crystal
#                   EDIFF=1e-8, EDIFFG=-1e-5 for phonon for 'naive' crystal
export EDIFFCommon=1.0e-4
#export EDIFFCommon=1e-08
#export EDIFFCommon=1e-06
export EDIFFGCommon=1.0e-3
#export EDIFFGCommon=-1.0e-4
#export EDIFFGCommon=-1.0e-3

# Precision: Accurate (High), Normal, Low
export PrecisionCommon=Accurate
#export PrecisionCommon=High
#export aKProductCommon=2.5
export aKProductCommon=2.0
#export aKProductCommon=fix:3,3,3
#export aKProductCommon=fix:8/2,8/2,6/3
export GammaOnlyCommon=0
#export GammaOnlyCommon=1
export ISMEARCommon=-5
#export ISMEARCommon=0
#export ISMEARCommon=2
export SIGMACommon=0.01
#export SIGMACommon=0.1

KeepSymmetryCommon=1
POTIMCommon=2.0

# For others: Normal or Fast would be recommended
export ALGOCommon=48
#export ALGOCommon=All
#export ALGOCommon=Diag
#export ALGOCommon=38

# For hybrid: All, Diag, or Damped
export HybridALGOCommon=Diag
export ISMEARHybridFunctionalCommon=-5
export SIGMAHybridFunctionalCommon=0.1

export LREALCommon=Auto
export LAECHGCommon=.TRUE.
export LDIPOLCommon=.TRUE.
export LELFCommon=.FALSE.

export LVHARCommon=.TRUE.
export LVTOTCommon=.FALSE.

export LWAVECommon=.TRUE.

export PStressCommon=0.0

MPIParamsCommon="--Param:NPAR=$NPAR --Param:KPAR=$KPAR --Param:LPLANE=.TRUE."

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