What is ORCA?
ORCA is a general-purpose quantum chemistry program package that features virtually all modern electronic structure methods (density functional theory, many-body perturbation and coupled cluster theories, and multireference and semiempirical methods). It is a flexible, efficient and easy-to-use general purpose tool for quantum chemistry with specific emphasis on spectroscopic properties of open-shell molecules. It features a wide variety of standard quantum chemical methods ranging from semiempirical methods to DFT to single- and multireference correlated ab initio methods. It can also treat environmental and relativistic effects.
ORCA uses standard Gaussian basis functions and is fully parallelized. Due to the user-friendly style, ORCA is considered to be a helpful tool not only for computational chemists, but also for chemists, physicists and biologists that are interested in developing the full information content of their experimental data with help of calculations.
Which can ORCA do?
ORCA is able to carry out geometry optimizations and to predict a large number of spectroscopic parameters at different levels of theory. Besides the use of Hartee Fock theory, density functional theory (DFT) and semiempirical methods, high level ab initio quantum chemical methods, based on the configuration interaction and coupled cluster methods, are included into ORCA to an increasing degree.
ORCA is released as precompiled binaries at no cost for academic research use. User should read and agree the license terms on ORCA End Users License Agreement and is expected to register with the ORCA developers in the official forum.
(A) Prepare ORCA input file
The suffix of ORCA input file can be anything – by convention unix input is .inp. The general structure of a ORCA input file consist of several blocks:
- BASIS: Basis sets are specified
- CASSCF: Control of CASSCF/NEVPT2 and DMRG calculations<
- CIS: Control of CIS and TD-DFT calculations (synonym is TDDFT)
- COORDS: Input of atomic coordinates
- COSMO: Control of the conductor like screening model
- ELPROP: Control of electric property calculations
- EPRNMR: Control of SCF level EPR and NMR calculations
- FREQ: Control of frequency calculations
- GEOM: Control of geometry optimization
- MD: Control of molecular dynamics simulation
- LOC: Localization of orbitals
- MDCI: Controls single reference correlation methods
- METHOD: A computation method is specified here
- MP2: Controls the details of the MP2 calculation
- MRCI: Control of MRCI calculations
- OUTPUT: Control of output
- PAL: Control of parallel jobs
- PARAS: Input of semiempirial parameters
- PLOTS: Control of plot generation
- REL: Control of options relativistic
- RR: Control of resonance Raman and absorption/fluorescence bandshape calculations
- SCF: Control of the SCF procedure
Comments in the file start by a ‘#‘ and can be closed by a second ‘#‘. Blocks start with ‘%‘ and end with ‘end‘.
Here is an example input file, which request a single point energy calculation on water:
%method method hf end # Select the Hartree-Fock method water energy # Title section 0 1 # Molecule specification O -0.464 0.177 0.0 H -0.464 1.137 0.0 H 0.441 -0.143 0.0
In general the input is not case sensitive. However, inside strings the input is case sensitive under Linux systems.
Parallel version of ORCA is installed in our HPC cluster system. It can be run in either single-core or parallel (MPI) mode. ORCA requires MPI even for communication between cores on a single node. Single core operations do not require any specifics. For MPI mode, you should give the number of processes in the ORCA input file:
%pal nprocs n end
where n (any positive integer) represents number of cores to be used.
The following modules are presently parallelized:
- CASSCF / NEVPT2
- MDCI (Coupled-Cluster)
- MP2 and RI-MP2 (including gradient)
- Numerical Gradients and Frequencies
The efficiency is such that for RI-DFT perhaps up to 20 processors are a good idea while for hybrid DFT and Hartree-Fock a few more processors are appropriate. Above this, the overhead becomes signicant and the parallelization loses efficiency. Coupled cluster calculations usually scale well up to at least 8 processors but probably it is also worthwhile to try 20. For Numerical Frequencies or Gradient runs it makes sense to use as many processors as 3*Number of Atoms.
(B) Set up ORCA in parallel environment
Parallel ORCA can be used with OpenMPI only and it will required OpenMPI libraries.
|HPC2015||3.0.3||module load orca/3.0.3|
|4.0.0||module load orca/4.0.0|
|4.2.0||module load orca/4.2.0|
|HPC2021||5.0.0||module load orca/5.0.0|
|5.0.2||module load orca/5.0.2|
(C) Submit ORCA jobs
Submission of ORCA jobs can only be done via the PBS/SLURM queuing system.
To allow easy use of ORCA, we have prepared sample PBS/SLURM command file and ORCA input files for your reference. Explanation is embedded in these files. These sample files could be obtained at /share1/orca/sample/.
Published works based on the usage of ORCA must contain appropriate citation. The generic reference for ORCA are:
Neese, F. (2012) The ORCA program system, Wiley Interdiscip. Rev.: Comput. Mol. Sci., 2, 73-78.
Neese, F. (2017) Software update: the ORCA program system, version 4.0, Wiley Interdiscip. Rev.: Comput. Mol. Sci., 8, e1327.
Please refer to ORCA Manual (Section 11) for more information on ORCA publication citing guide.
Official ORCA website: https://orcaforum.kofo.mpg.de/
ORCA Input Library: http://sites.google.com/site/orcainputlibrary/
ORCA compound scripts repository: https://github.com/ORCAQuantumChemistry/CompoundScripts
ORCA Tutorials by FAccTs: https://www.orcasoftware.de/tutorials_orca/