Description of MRCC interface to Cc4s

Table of Contents

This section explains how to interface an MRCC calculation with Cc4s. For details on the compilation and execution of MRCC we refer to the User manual of MRCC.

The interface was tested with MRCC released on March 18, 2022. For interfacing with Cc4s no modifications of MRCC are required.

1. MRCC calculation

To obtain the necessary input files, start an MRCC calculation using calc=DF-CCSD or calc=DF-CCSD(T). Note that these calculations only need to reach the point at which the necessary input files have been written. An example MINP input file for the C2H4 molecule in the cc-pVTZ basis set is provided below.

basis=cc-pvtz
calc=DF-CCSD
symm=off
mem=50000MB
geom=xyz

6

 C                     0.65578303    -0.11679284     2.54108880
 H                     1.04724381    -1.12391167     2.53662054
 H                     1.37085682     0.69327113     2.53658721
 C                    -0.65577348     0.11678979     2.54109769
 H                    -1.37084543    -0.69327473     2.53660160
 H                    -1.04723659     1.12390869     2.53663949

symm=off and mem=50000MB are used as a safe default.

Running the driver program of MRCC, dmrcc, will execute the following sequence of programs:

  1. integ (AO integrals).
  2. scf (Hartree–Fock calculation).
  3. integ (AO integrals).
  4. drpa (MO integrals).
  5. ccsd (CCSD calculation).

The program is executed in the directory where the MINP file is located.

This procedure creates the following four binary files, which are needed as input for Cc4s:

FOCK
Fock matrix.
MOCOEF
Molecular orbital coefficients.
TEINT
Three-center Coulomb integrals in AO representation (sparse format).
TEDAT
Index information for the TEINT file.

In addition, we recommend providing the standard output of the MRCC calculation.

All required files are created in the second call of integ. This implies that the MRCC calculation can safely be stopped at the beginning of the drpa step.

An example for a minimal bash script that runs MRCC and stops at the beginning the drpa step is given by.

#!/usr/bin/env bash

# Check if the binary is in the PATH
if ! which "dmrcc" > /dev/null 2>&1; then
  echo "Error: dmrcc not found in PATH."
  echo "Solution: Add dmrcc to the PATH using:"
  echo "export PATH=\$PATH:/some/default/path/to/a/mrcc/version"
  exit 1
fi

# use openmp threading in MRCC
export OMP_NUM_THREADS=24

echo "Starting dmrcc in the background now."
dmrcc > mrcc_stdout &
pid=$!
echo "dmrc process with pid" $pid "will be killed when \"Executing drpa\" is written to mrcc_stdout." 
# Starting dmrcc
while true; do
  grep -q "Executing drpa" mrcc_stdout && kill "$pid" && break
  sleep 5
done

2. Reading MRCC input and running CCSD(T) calculation in Cc4s

The Cc4s calculation will then process the files from the MRCC calculation using the algorithm MrccReader. An example cc4s.in file is given below

- name: MrccReader
  in:
    mrccStdOut: mrcc_stdout
  out:
    coulombVertex: CoulombVertex
    eigenEnergies: EigenEnergies

- name: VertexCoulombIntegrals
  in:
    slicedCoulombVertex: CoulombVertex
  out:
    coulombIntegrals: CoulombIntegrals

- name: CoupledCluster
  in:
    method: Ccsd
    integralsSliceSize: 100
    slicedEigenEnergies: EigenEnergies
    coulombIntegrals: CoulombIntegrals
    slicedCoulombVertex: CoulombVertex
    maxIterations: 30
    energyConvergence: 1.0E-8
    amplitudesConvergence: 1.0E-8
    mixer:
      type: DiisMixer
      maxResidua: 5
  out:
    amplitudes: Amplitudes

- name: PerturbativeTriples
  in:
    slicedEigenEnergies: EigenEnergies
    amplitudes: Amplitudes
    coulombIntegrals: CoulombIntegrals
  out:
    {}

Running Cc4s with the above input file will perform a canonical CCSD(T) calculation.

The above Cc4s calculation requires the following input files produced by MRCC: FOCK, MOCOEF, TEINT, TEDAT and mrcc_stdout. mrcc_stdout contains the standard output of the MRCC calculation from the previous section.

For the given example of the C2H4 molecule in the cc-pVTZ basis, the following correlation energy contributions are obtained.

Table 1: Correlation energy summary for C2H4 in cc-pVTZ basis. All energies in Hartree.
Contribution Value
2nd-order correlation energy: -0.335329069
Ccsd correlation energy: -0.360100373
(T) correlation energy: -0.014962119

Another full Cc4s calculation can be found in the tests (H2O2 molecule).

Created: 2025-09-04 Thu 15:35