This interface implements MP2 extrapolation to the complete basis set limit and an optional higher-order correction (e.g. CCSDT(T), MP2.5 - see the examples).
A following scheme is used:
The interface implements a single unnamed method; 'method' keyword not necessary
The following examples, along with all other files needed to run them, can be found in the directory cuby4/interfaces/extrapolate_cbs/examples
#===============================================================================
# Example 1: MP2/CBS extrapolation
#===============================================================================
job: energy
geometry: S66:water_dimer
interface: extrapolate_cbs
# Switch off the higher-order correction
extrapolate_cbs_correction: no
# Common setup for all calculations
calculation_common:
charge: 0
scf_convergence: 10
density_convergence: 10
correlation_convergence: 9
# MP2 calculation in small basis set
calculation_mp2_small:
interface: turbomole
method: mp2
basisset: cc-pVDZ
# Note that basis set zeta has to be defined to make extrapolation possible:
basisset_zeta: 2
# MP2 calculation in large basis set
calculation_mp2_large:
interface: turbomole
method: mp2
basisset: cc-pVTZ
# Note that basis set zeta has to be defined to make extrapolation possible:
basisset_zeta: 3
#===============================================================================
# Example 2: Composite CCSD(T)/CBS calculation
#===============================================================================
job: energy
geometry: S66:water_dimer
interface: extrapolate_cbs
# Use higher-order correction
extrapolate_cbs_correction: yes
# Common setup for all calculations
calculation_common:
charge: 0
scf_convergence: 10
density_convergence: 10
correlation_convergence: 9
# MP2 calculation in small basis set
calculation_mp2_small:
interface: turbomole
method: mp2
basisset: cc-pVDZ
# Note that basis set zeta has to be defined to make extrapolation possible:
basisset_zeta: 2
# MP2 calculation in large basis set
calculation_mp2_large:
interface: turbomole
method: mp2
basisset: cc-pVTZ
# Note that basis set zeta has to be defined to make extrapolation possible:
basisset_zeta: 3
# CCSD(T) calculation
calculation_corr:
interface: cfour
method: ccsd(t)
basisset: STO-3G
# Run all the calculations in parallel
cuby_threads: 3
# Print the energy components (SCF energy, MP2/CBS corerlation)
print: energy_decomposition
#===============================================================================
# Example 3: Composite MP2.5/CBS calculation
#===============================================================================
# Scaled MP3 correction is added to a MP2/CBS result
job: interaction
bsse_correction: yes
geometry: S66:water_dimer
interface: extrapolate_cbs
# Extrapolation scheme setup:
extrapolate_cbs_correction: yes # Use higher-order correction
extrapolate_cbs_corr_weight: 0.5 # Scaling factor for the correction
# Common setup for all calculations
calculation_common:
interface: turbomole
charge: 0
scf_convergence: 10
density_convergence: 10
correlation_convergence: 9
# MP2 calculation in small basis set
calculation_mp2_small:
method: mp2
basisset: cc-pVDZ
# Note that basis set zeta has to be defined to make extrapolation possible:
basisset_zeta: 2
# MP2 calculation in large basis set
calculation_mp2_large:
method: mp2
basisset: cc-pVTZ
# Note that basis set zeta has to be defined to make extrapolation possible:
basisset_zeta: 3
# MP3 calculation as a correction
calculation_corr:
method: mp3
basisset: SVP
# Print the energy components (SCF energy, MP2/CBS corerlation)
print: energy_decomposition
#===============================================================================
# Example 4 - CSCD(T)/CBS geometry optimization
#===============================================================================
job: optimize
geometry: A24:water # Water molecule from A24 data set
interface: extrapolate_cbs
# To extrapolate gradient and to calculate the gradient of the correction,
# additional calculations are needed
extrapolate_cbs_grad_mode: separate_calculations
# Common setup
calculation_common:
charge: 0
interface: turbomole
scf_convergence: 10
density_convergence: 10
correlation_convergence: 9
mem: 2000
calculation_mp2_small:
method: mp2
basisset: cc-pVDZ
basisset_zeta: 2
calculation_mp2_large:
method: mp2
basisset: cc-pVTZ
basisset_zeta: 3
# In addition to the two MP2 calculation, separate HF calculations in
# the same basis sets have to be performed:
calculation_hf_small:
method: hf
basisset: cc-pVDZ
calculation_hf_large:
method: hf
basisset: cc-pVTZ
calculation_corr:
# In this case, we override the commmon setup to use cfour interface,
# cfour is one of the few packages that implement CCSD(T) gradient
interface: cfour
method: ccsd(t)
basisset: 3-21G
# In addition to the CCSD(T) calculation, a MP2 calculation with the
# same setup is needed to calculate the correction which is defined
# as CCSD(T) - MP2
calculation_corr_mp2:
# For consistency, this calculation has to use the same interface
# as the CCSD(T) one
interface: cfour
method: mp2
basisset: 3-21G
opt_quality: 0.5
#===============================================================================
# Example 5 - CSCD(T)/CBS geometry optimization with gradient components
#===============================================================================
# The geometry otimization in Example 4 required additional calculations because
# the HF and MP2 gradients usually have to be comuted separately. However,
# some programs (e.g. turbomole used here) allow obtaining these two gradients
# from a single run. This will save us two calculations.
job: optimize
geometry: A24:water # Water molecule from A24 data set
interface: extrapolate_cbs
# Enable the use of gradient components
extrapolate_cbs_grad_mode: use_mp2_gradient_components
# Common setup
calculation_common:
charge: 0
interface: turbomole
scf_convergence: 10
density_convergence: 10
correlation_convergence: 9
mem: 2000
# MP2 calculations, separate HF ones are no longer needed
calculation_mp2_small:
method: mp2
basisset: cc-pVDZ
basisset_zeta: 2
turbomole_scf_grad: yes # Use of gradient components has to be enabled
calculation_mp2_large:
method: mp2
basisset: cc-pVTZ
basisset_zeta: 3
turbomole_scf_grad: yes # Use of gradient components has to be enabled
# To calculate the CCSD(T) correction, we still need the
# additional MP2 calculation
calculation_corr:
interface: cfour
method: ccsd(t)
basisset: 3-21G
calculation_corr_mp2:
interface: cfour
method: mp2
basisset: 3-21G
opt_quality: 0.5