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