Common input mistakes

The things that trip people up most when starting out — usually a one-line difference. marks the ones actually hit while building this guide on ORCA 6.1.1.

MistakeSymptom · fix
Not redirecting the outputorca a.inp alone scrolls the result past and loses it. Always orca a.inp > a.out.
Frequencies on a non-optimised geometryFreq at a non-stationary point gives spurious imaginary modes. Run Opt first, at the same level.
A different basis per speciesComparing reaction energies with a different basis per species breaks error cancellation. Use the same basis for all of them.
No dispersion correction with DFTStandard DFT (B3LYP, …) misses dispersion. Add D4 almost every time.
Wrong multiplicityThe second number in * xyz 0 1 is the multiplicity (2S+1). An odd-electron system with 1 breaks the SCF; add UKS for radicals.
RIJCOSX without an auxiliary basisRIJCOSX pairs with def2/J. Omit it and you get a slowdown or an error.
Mistaking normal termination for successTERMINATED NORMALLY only means "ran to the end". Check convergence, imaginary frequencies, and ⟨S²⟩ yourself.
DLPNO + Extrapolate without AutoAux! DLPNO-CCSD(T) Extrapolate(3/4,cc) alone dies with "auxiliary basis needed". Add AutoAux.
A space after the comma in ExtrapolateExtrapolate(3/4, cc) (with a space) fails to parse. Write Extrapolate(3/4,cc).
DFT(D4) → CCSD(T) in one $new_jobD4 dispersion carries into the CC step and dies with "dispersion + correlated method". Split the CC into its own file and drop D4.
Adding dispersion to CCSD(T)CCSD(T) already contains dispersion; adding D4 double-counts it. Run the CC step without a dispersion correction.

When the SCF refuses to converge

Manual §8.3 emphasises that SCF convergence failures almost always occur in open-shell situations, and that the key to fixing them is "better starting orbitals". Recommended strategies:

Strategy ① — converge a smaller basis first

# Step 1: small basis + loose convergence + strong damping
! BP86 def2-SV def2/J SlowConv LooseSCF
%scf
   MaxIter 300
end
* xyzfile 0 3 mol.xyz

$new_job

# Step 2: read orbitals from step 1 and grow the basis
! BP86 def2-TZVP def2/J MOREAD
%moinp "step1.gbw"
%scf
   GuessMode CMatrix
end
* xyzfile 0 3

$new_job

# Step 3: finish with the target functional
! B3LYP D4 def2-TZVP RIJCOSX def2/J MOREAD
%moinp "step2.gbw"
* xyzfile 0 3

Strategy ② — SOSCF or TRAH

When DIIS stalls near ~0.001, switch on second-order SCF (SOSCF) or the Trust-Region Augmented Hessian (TRAH) SCF.

%scf
   SOSCF      true     # second-order SCF
   SOSCFStart 0.001    # switch to SOSCF when DIIS error drops below this
end
# Last resort for the hardest cases: TRAH
! B3LYP def2-TZVP TRAH

Strategy ③ — heavy damping and a level shift

%scf
   DampFac    0.90    # heavy damping
   DampErr    0.02    # damping turns off once DIIS error falls below this
   Shift shift 0.5 erroff 0 end   # push virtual orbitals up by 0.5 Eh
end

Strategy ④ — start from the related closed shell

If an odd-electron system refuses to converge, first converge the closed-shell cation or anion and read its orbitals. Closed-shell SCFs generally converge much more easily.

~80 % of convergence problems are the geometry

As the manual itself points out, the most common cause of a failed SCF is an "unreasonable structure" — a 0.5 Å bond length, two atoms occupying the same position, or coordinates accidentally given in bohr rather than Å. Before changing the method, double-check that the geometry is chemically sensible.

When the optimisation diverges

  1. Shrink the maximum step: %geom MaxStep 0.1 end (bohr). Damps oscillations.
  2. Switch the coordinate system: try ! COpt for Cartesian coordinates.
  3. Strengthen the initial Hessian: compute a Hessian cheaply, then read it with InHess Read. The manual's example is a "Step 1 NumFreq → Step 2 OptTS" pattern.
  4. Tighten the SCF: on flat surfaces SCF noise shakes the gradient. Use TightSCF or better.
  5. Tighten the integration grid: DefGrid3 for DFT.

Small negative frequencies

Imaginary modes of ± 10–30 cm⁻¹ are usually not real negative curvature — they are numerical noise. Work through these in order:

  1. Re-optimise and re-run frequencies with VeryTightSCF DefGrid3.
  2. Use VeryTightOpt for the optimisation thresholds.
  3. Re-run with NumFreq CentralDiff true (central differences, 2× cost).

Large imaginary frequencies (hundreds of cm⁻¹) are real negative curvature. Displace slightly along the mode and re-optimise. orca_pltvib conveniently builds a displaced geometry.

Out of memory

If you see "Please increase MaxCore", check these:

  • Increase %maxcore (in MB). Aim for 60–70 % of the available RAM.
  • Reduce the number of parallel processes to allocate more memory per core.
  • Ensure that the scratch directory ($ORCA_SCRDIR) points to a fast disk (preferably an NVMe SSD) with sufficient capacity.
  • Where possible, enable RI (RIJCOSX, RI-JK) to reduce memory pressure.
# Cluster submission snippet showing a scratch setup
export ORCA_SCRDIR=/scratch/$USER/orca_$$
mkdir -p $ORCA_SCRDIR
cd $ORCA_SCRDIR
orca $SLURM_SUBMIT_DIR/job.inp > $SLURM_SUBMIT_DIR/job.out
cp -r * $SLURM_SUBMIT_DIR/
cd / && rm -rf $ORCA_SCRDIR

When parallelisation feels slow

If more cores do not translate into more speed, check the following:

  • I/O bottleneck: running on a networked disk means every core hammers the same storage. Always use a local fast disk (NVMe SSD) for scratch.
  • Over-parallelisation: RI-DFT loses efficiency beyond ~16 cores; CCSD(T) is best with 8–16 cores.
  • OpenMPI inter-node communication: without a fast fabric (InfiniBand or similar), stay within a single node.
  • NumFreq, NEB and similar tasks with many independent displacements / images benefit from nprocs_group-based parallelisation across displacements.

Spin contamination

In UKS / UHF calculations, deviation of ⟨S²⟩ from its ideal value is called spin contamination. The ideal values are 0.75 for a doublet (S = 1/2) and 2.0 for a triplet (S = 1). Up to ~5 % deviation is usually acceptable; beyond ~10 %, the result becomes unreliable.

The manual's recommended diagnostic combination is ! UNO ! UCO:

! B3LYP D4 def2-SVP UNO UCO TightSCF

* xyzfile 0 1 mol.xyz

If the UCO overlap table contains values below ~0.85, those orbitals form "spin-coupled pairs" — characteristic of singlet diradicals or partially broken bonds. Such systems are at the limit of single-reference DFT / HF; for accurate results consider moving to a multi-reference method (CASSCF / NEVPT2).

Workflow recipes by situation

Precision free energy for a general organic molecule

  1. r2SCAN-3c Opt Freq for geometry and thermal correction.
  2. DLPNO-CCSD(T)/cc-pVTZ + Extrapolate(3/4,cc) single point for the electronic energy.
  3. Add SMD for solvation if needed.

Transition-metal complex (3d metal)

  1. TPSSh D4 def2-TZVP Opt Freq — meta-GGA hybrid handles spin states well.
  2. For ambiguous spin states, run every plausible multiplicity at the same level and compare.
  3. UV-Vis with TDDFT; EPR g-tensor with ! EPRNMR.

Organic photophysics (UV-Vis, fluorescence)

  1. Ground state: B3LYP D4 def2-TZVP Opt.
  2. Absorption: TDDFT NRoots=20 on the optimised geometry.
  3. Fluorescence: optimise S1 with %tddft IRoot 1 end ! Opt then re-run TD-DFT.
  4. If charge transfer is suspected, re-run with CAM-B3LYP or wB97X-V and compare.

Reaction mechanism

  1. Optimise reactant and product with r2SCAN-3c.
  2. ! XTB NEB-TS for a quick first-pass TS.
  3. DFT OptTS + AnFreq + IRC. Confirm exactly one imaginary mode.
  4. DLPNO-CCSD(T) single points + SMD on every stationary point.
  5. Compute ΔG and ΔGrxn.

General principles the manual emphasises

Consistency in the basis set

As the manual stresses in §8.2, minimal bases (STO-3G) and small split-valence bases such as 3-21G are inappropriate for quantitative work. Use the Karlsruhe def2 series consistently. Reactants, products and transition states must all use the same basis so that errors cancel.

For DFT, the grid is often the accuracy bottleneck

When working with a large basis (e.g. def2-QZVPP), leaving the DFT grid at DefGrid2 caps the accuracy at the grid noise level. Raise to DefGrid3 when you raise the basis. As the manual puts it, "don't spend basis accuracy on grid noise."

Dispersion correction is essentially free

D3 / D4 corrections add essentially no runtime while improving accuracy significantly. Unless the functional already includes dispersion (e.g. VV10 built into ωB97M-V), turn them on by default.

"Terminated normally" is not the same as "correct"

An ORCA TERMINATED NORMALLY message does not automatically mean the result is reliable. Always check (1) SCF convergence, (2) optimisation convergence, (3) all real frequencies (or exactly one imaginary mode for a TS), (4) sensible ⟨S²⟩, and (5) any WARNING messages in the output.

The manual's parting advice

There is a striking line near the end of §8.2 of the manual: "the computer does not solve the problem — the human does. Making one or two numbers slightly more accurate does not necessarily help you understand the chemistry and spectroscopy of the molecule you are working on. The risk of getting lost in technical details and losing sight of the original insight is real." Striving for accuracy is good; never forget that it does not substitute for chemical insight.

This is the final chapter of the guide. I hope it has been of some help in your everyday research. For deeper options or unusual use cases, please consult the official ORCA 6.0.0 manual (PDF) directly. And whenever you get stuck, the official forum (orcaforum.kofo.mpg.de) is a great place to look for similar cases.

ORCA English User Guide · Based on the ORCA 6.0.0 manual · This guide is unofficial.