ORCA: A Versatile Tool for Quantum Chemistry

ORCA is a flexible, efficient, and user-friendly general-purpose tool for quantum chemistry, designed with a particular emphasis on the spectroscopic properties of open-shell molecules [1]. ORCA includes a wide range of standard quantum chemical methods, such as semiempirical approaches, Density Functional Theory (DFT), and single- and multi-reference correlated ab initio methods. The software also supports the treatment of environmental and relativistic effects.

1.     Useful Resources

·        ORCA Forumhttps://orcaforum.kofo.mpg.de/app.php/portal

·        FACCTShttps://www.faccts.de/

·        ORCA Tutorialshttps://www.orcasoftware.de/tutorials_orca/index.html

 

2.     Installing ORCA 6.0.1 on Ubuntu

2.1                 Preparation

Switch to the root user and navigate to the /opt/ directory.

 

sudo su

cd /opt/

 

 

2.2                 Extract Installation Files

Download the installation files from the ORCA forum or copy them from a local machine. Extract them using:

tar xvf /path_to_orca/orca_6_0_1_linux_x86-64_shared_openmpi416.tar.xz

 

Rename the extracted folder for simplicity:

 

mv orca_6_0_1_linux_x86-64_shared_openmpi416 orca_6_0_1

 

2.3                 Create an ORCA Group

groupadd -g 2222 orca

 

2.4                 Add User to ORCA Group

Replace your_user_id with your username:

usermod -a -G orca your_user_id

 

2.5                 Update Permissions

 

cd /opt/

chown -R root:2222 /opt/orca_6_0_1/

chmod -R 750       /opt/orca_6_0_1/

 

2.6                 Install GCC Compiler

 

apt install gcc build-essential

 

2.7                 Enable Parallelization

2.7.1                             Install OpenMPI

cd /opt/

wget https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.6.tar.gz

mv openmpi-4.1.6.tar.gz /path_to_source_codes/

tar xvf /path_to_source_codes/openmpi-4.1.6.tar.gz

cd openmpi-4.1.6/

./configure --prefix=/opt/.openmpi

make all install

chown -R root:2222 /opt/openmpi-4.1.6

chmod -R 750       /opt/openmpi-4.1.6

 

 

2.8                 Installing the xTB Module

The following steps guide you through downloading, extracting, and installing the xTB module, which is commonly used for semi-empirical quantum chemical calculations.

2.8.1                             Download the Latest Version of xTB. Visit the Grimme lab’s xTB repository to get the latest version: xTB Releases on GitHub. Use the wget command to download the current release (version 6.7.1):

cd ~/Downloads/

wget https://github.com/grimme-lab/xtb/releases/download/v6.7.1/xtb-6.7.1-linux-x86_64.tar.xz

 

 

2.8.2                             Extract the Downloaded File

tar -xf xtb-6.7.1-linux-x86_64.tar.xz

 

This will create a directory called xtb-dist, containing the xTB binaries and related files.

 

2.8.3                             Move the xTB Binary to the ORCA Directory

Copy the xTB executable into the ORCA installation directory:

sudo cp xtb-dist/bin/xtb /opt/orca_6_0_1/

·        sudo: Grants administrative privileges to copy files to system directories.

·        xtb-dist/bin/xtb: The path to the xTB binary.

·        /opt/ orca_6_0_1/: The directory where ORCA is installed.

2.8.4                             Verify that the xtb binary is accessible by running the following command:

/opt/orca_6_0_1/xtb --version

 

2.9                 Update .bashrc

Switch back to your user account and update the .bashrc file:

 

su your_user_id

cd

cat << EOF >> ~/.bashrc

# ORCA 6.0.1

export PATH=/opt/orca_6_0_1/:$PATH

export LD_LIBRARY_PATH=/opt/orca_6_0_1/:$LD_LIBRARY_PATH

export PATH=/opt/.openmpi/bin:$PATH

export LD_LIBRARY_PATH=/opt/.openmpi/lib:$LD_LIBRARY_PATH

alias orca="/opt/orca_6_0_1/orca"

EOF

source ~/.bashrc

 

3.     Calculating RESP Charges Using ORCA and Multiwfn

This section provides a step-by-step guide to calculate RESP (Restrained Electrostatic Potential) charges using ORCA and Multiwfn [2].

3.1                 Generating a Molden Input File

RESP charge calculation requires a Molden-format file from your ORCA calculation. To generate this file, Navigate to the directory containing your ORCA calculation files and run the following commands:

orca_2mkl job -molden

mv job.molden.input job.molden

·        orca_2mkl: A utility provided by ORCA to convert ORCA output into various formats.

·        job: Replace this with the base name of your ORCA input/output files.

·        -molden: Specifies the generation of a Molden-format file.

·        mv job.molden.input job.molden: Renames the generated file for compatibility with Multiwfn.

The job.molden file will now serve as input for the RESP charge calculation in Multiwfn.

3.2                 Extracting RESP Charges with Multiwfn

Once the Molden file is ready, use Multiwfn to extract RESP charges. Run the following script, replacing job.molden with your file name:

 

Multiwfn << EOF

job.molden

7

18

1

y

0

0

q

EOF

3.3                 Handling Missing Atom Radii

If you encounter missing atom radii during the process, Multiwfn will prompt you to provide them. Options include:

·        Manually inputting radii: You can enter the missing radii based on your molecular system.

·        Scaling radii: Follow the instructions provided by Multiwfn to scale the radii appropriately.

 

3.4                 Addressing Library Errors

Multiwfn may require additional system libraries. If errors like "missing library" occur, install the dependencies using the following commands:

 

3.4.1                             Switch to superuser mode:

sudo su

 

3.4.2                             Update the package manager:

apt-get update -y

 

3.4.3                             Install the required libraries:

apt-get install -y libmotif-common libxm4 libgfortran3

·        libmotif-common: A library required for GUI support in Multiwfn.

·        libxm4: A dependency for motif-based applications.

·        libgfortran3: A library for Fortran-based computations.

After resolving these issues, rerun Multiwfn to complete the RESP charge fitting.

4.     Extracting Force Constants from Frequency Calculations

The orca_vib utility in ORCA allows you to extract force constants from the results of a frequency calculation. It processes the Hessian file generated by ORCA and outputs vibrational frequency data, including force constants.

Procedure

4.1                 Ensure that your ORCA frequency calculation has successfully completed and generated the necessary Hessian file (e.g., 2.hess).

4.2                 Use the following command to process the Hessian file:

 

orca_vib 2.hess > 2.freq

·        orca_vib: The ORCA utility for vibrational analysis.

·        2.hess: The Hessian file generated by the frequency calculation.

·        2.freq: The output file containing vibrational frequencies and force constants.

Output

The resulting file (2.freq) contains detailed vibrational information, including frequencies, normal modes, and the force constants for each mode. These force constants are often used in further analyses, such as molecular vibrations, thermodynamic properties, or reaction dynamics.

Force constants are presented in the Approximate Stretching Force Constants section of the 2.freq file. This section shows force constants for bonds between atoms in the system and provides additional details:

·        Bond types (e.g., C-H, C-C, etc.).

·        Bond lengths (in angstroms).

·        Force constants (in mdyne/Å).

Below is an example output from the 2.freq file:

 

--------------------------------------

APPROXIMATE STRETCHING FORCE CONSTANTS

--------------------------------------

 

NN FOR ATOM                   0:      1         2         3         4         9        96  

TYPE                           :     C-H       C-H       C-C       C-N       C-C       C-H 

BOND LENGTH (ANGSTROEM)         :    1.1050    1.1054    1.4829    2.5602    2.5782    1.0999

FORCE CONSTANT (MDYNE/ANGSTROEM):    4.7625    4.7419    3.9918    0.4335    0.3340    4.9909

 

NN FOR ATOM                   1:      0         2         3        96  

TYPE                           :     H-C       H-H       H-C       H-H 

BOND LENGTH (ANGSTROEM)         :    1.1050    1.7831    2.1578    1.7829

FORCE CONSTANT (MDYNE/ANGSTROEM):    4.7625    0.3070    0.3889    0.2796

Note: In ORCA and the 2.freq file, atom numbers start from 0 rather than 1.

4.3                 Conversion of Force Constants

The force constants in the 2.freq file are expressed in mdyne/Å. For molecular dynamics simulations using software like AMBER, you may need to convert these values to kcal/(mol·Å²). Use the conversion factor 143.836 for this purpose:

Force Constant (kcal/(mol.A˚²))=Force Constant (mdyne/A˚)×143.836

 

5.     Calculation of EHLQM1+ptch23 Using ORCA

The total QM/MM energy in electrostatic embedding is calculated as follows [3,4]:

EQM/MM = EHLQM1+ptch23  +  ECLMM123,q1=0  − EHLMM1,q1=0        

where:

·        EHLQM1+ptch23 is the QM energy of system 1 (the QM system), truncated by hydrogen link (HL) atoms, and embedded in a set of point charges representing systems 2 and 3 (the MM systems). This term excludes the self-energy of the point charges.

·        EHLMM1,q1=0  is the MM energy of the QM system, also truncated by HL atoms, but with no electrostatic interactions.

·        ECLMM123,q1=0  is the classical energy of all atoms in the system, using carbon link (CL) atoms, with the charges of the QM system set to zero (to avoid double counting electrostatic interactions).

·        To calculate EHLQM1+ptch23 using ORCA, the interactions of point charges with the QM system must be included. ORCA reads these point charges from a file that specifies their coordinates and magnitudes. To enable this, include the following keyword in your ORCA input file:

%pointcharges "pointcharges.pc"

 

Below is an example ORCA input file for optimizing methane in the presence of a water molecule (represented as point charges) at the TPSS/def2-SVP level with an auxiliary RIJ basis set:

 

! TPSS OPT def2-SVP def2/J NormalPrint NormalSCF

 

%scf

   MaxIter 300

   CNVDIIS 1

   CNVSOSCF 1

end

 

%output

   print[p_mos] true

   print[p_basis] 5

end

 

%pal

   nprocs 4

end

 

%pointcharges "pointcharges.pc"

 

* xyz 0 1

   C       -3.85992        0.91702       -0.00631

   H       -3.00431        0.24234       -0.17317

   H       -3.68963        1.86274       -0.54597

   H       -3.97234        1.12877        1.07018

   H       -4.78269        0.44545       -0.38236

*

 

The pointcharges.pc file specifies the number of point charges, their magnitudes (in atomic units), and their positions (in Angstroms). Note that interactions between point charges are not included in the nuclear energy calculation, as these are typically handled by the MM program.

Sample pointcharges.pc File

3

-0.834    -1.11423       -1.35017       -0.22015

 0.417    -0.92917       -0.82211        0.57773

 0.417    -1.85814       -1.90905        0.06976

 

6.     References

[1]      F. Neese, The ORCA program system, WIREs Comput. Mol. Sci. 2 (2012) 73–78. https://doi.org/10.1002/wcms.81  .

[2]      T. Lu, F. Chen, Multiwfn: A multifunctional wavefunction analyzer, J. Comput. Chem. 33 (2012) 580–592. https://doi.org/10.1002/jcc.22885.

[3]      U. Ryde, The coordination of the catalytic zinc in alcohol dehydrogenase studied by combined quantum-chemical and molecular mechanics calculations., J. Comput. Aided. Mol. Des. 10 (1996) 153–164. https://doi.org/10.1007/BF00402823.

[4]      U. Ryde, M.H.M. Olsson, Structure, strain, and reorganization energy of blue copper models in the protein, Int. J. Quantum Chem. 81 (2001) 335–347. https://doi.org/10.1002/1097-461X(2001)81:5<335::AID-QUA1003>3.0.CO;2-Q.

 

University of Kurdistan, Sanandaj logo

Department of Chemistry, Faculty of Science, University of Kurdistan