Szczepanik Research Group

Department of Theoretical Chemistry
Faculty of Chemistry, Jagiellonian University
Gronostajowa 2, 30-387 Krakow, Poland
Tel: (+48) 12 686 23 90
E-mail: dariusz.szczepanik@uj.edu.pl

HOME      PROJECTS      PUBLICATIONS      runEDDB      X

About EDDB       Download       Tutorials       Manual



◼ Tutorials

Everything on this page runs on runEDDB’s built-in GFN2-xTB engine: a plain .xyz geometry is all you need, and every command finishes in seconds. Start with the video for the 5-minute overview, pick a worked example below, and keep the cheat-sheet at the bottom open while you work.

Quick start in five minutes (video)
Quick-start video — coming soon
download → install → a crystal-structure geometry → EDDB, BDF and NICS-xTB in five minutes
Worked examples
TUTORIAL 1 · 15 min
Heterocycles: how much of a lone pair delocalizes?
Pyrrole, furan and 1,4-dihydropyridine. The global analysis, the population table you will read most often, and the CDI — the EDDB aromaticity index.
EDDB_GEDDB_PCDI--table npa--export-cube
TUTORIAL 2 · 20 min
Phenanthrene: Clar’s rule made visible
Let runEDDB find the rings, get a CDI for each in one loop, and draw the signed BDF map that tells delocalized bonds from localized ones.
-rCDIBDFNOBD--export-fchk
TUTORIAL 3 · 30 min
A metallacycle: Hückel or Möbius aromatic?
C7H7FeCl from geometry to verdict. Same tools, harder molecule — and the habit of checking the automatic π-selection before trusting the number.
EDDB_GCDINOBD--auto-pi-s
TUTORIAL 4 · 25 min
Aza-supernaphthalene: what oxidation does to Clar sextets
An 82-electron π-system, neutral and 4+. Charged molecules, the BDF map of a big molecule, where the positive charge sits, and the CDI of eleven rings before and after.
chargeBDFED_GCDI-c 150
The tutorials build on each other, but each one is self-contained: every geometry and every output is on its page.

◼ Command cheat-sheet

The commands you will use most often, on a molecule everybody knows: the built-in benzene model, -i @benzene, which needs no file at all (see the note below). Prefer a file? Download benzene.xyz (an idealized D6h geometry, same atom numbering) and write -i benzene.xyz instead. Swap in your own file and atom numbers for real work. Below the commands, a compact reference to the three things you steer on every run: what to analyse (scope), what to report (tables), and what to export for visualization.

 runEDDB — the everyday commands
$ runEDDB -i @benzene -q                                   # summary only (quiet)
$ runEDDB -i @benzene --table npa                          # charges + populations
$ runEDDB -i @benzene --export-cube eddb -n 4              # EDDB_G map (.cube), 4 cores
$ runEDDB -i @benzene --export-cube bdf -a                 # signed π-BDF map
$ runEDDB -i @benzene -p 1-2-3-4-5-6-1 -a --table npa      # ring CDI (π only)
$ runEDDB -i @benzene -r 6                                 # find rings → benzene.rings
$ runEDDB -i @benzene --export-fchk nobd -a --table nobd   # π-NOBDs as .fchk
$ runEDDB -i @benzene --cite both                          # references for this run
$ runEDDB -i @list                                         # built-in model catalogue
$ runEDDB -i benzene.fchk                                  # ab-initio wavefunction instead
About @benzene. runEDDB ships a built-in library of test geometries, so every command above works without any file at hand — the same goes for @naphthalene, @pyrrole, @coronene, @porphine and some 30 more (runEDDB -i @list prints the catalogue). Ring atoms are numbered consecutively, heteroatom first (pyrrole: N1, C2–C5), so a pathway like 1-2-3-4-5-6-1 means what you expect; for fused rings use -r to get the strings. The library geometries are force-field conformers meant for testing — for real work use your own optimized structure, e.g. the benzene.xyz above. Windows PowerShell users: quote the name, -i '@benzene', because a bare @ is PowerShell’s splatting operator (in cmd.exe no quotes are needed).

1 · Choose what to analyse — the five scope modes (-g / -h / -f / -p / -r)

One mutually-exclusive flag selects the region of delocalization the analysis (and any exported cube) focuses on. They are the backbone of an EDDB study:

See §3 Analysis Modes for the full details (plus NOBD dissection and the NAO basis subsets).

2 · Read the bonding — universal analysis tables (--table)

These print straight to the terminal — no file written — and are powerful, universal one-liners that work on any wavefunction the program can read. Two of them stand out:

(--table no adds the natural-orbital occupancy table, with its multireference / spin-contamination indices shown under -v; --table nobd the NOBD-resolution table; --table mo the per-MO ED / EDLB / EDDB decomposition when canonical MOs are present; --table all emits everything.) For example, what a benzene C–C bond is actually made of — one command:

 runEDDB -i benzene.fchk --table bo
  ┌────────────────────────────────────────────────────────────────────────────────────┐
  │                       BOND-ORDER ORBITALS (BOO) IN NVB BASIS                       │
  └────────────────────────────────────────────────────────────────────────────────────┘
    Index      Atom pair         Total        BOO occupations with symmetry labels
   ─────── ─────────────────   ─────────  ─────────────────────────────────────────────
        1      1~2      C~C     1.44010    0.97498(σ) 0.44444(π) 0.01997(π) 0.00071(σ)
        5      1~4      C~C     0.11731    0.11111(π) 0.00383(σ) 0.00236(π)
        8      1~6      C~C     1.44010    0.97498(σ) 0.44444(π) 0.01997(π) 0.00071(σ)
       12      1~7      C~H     0.97256    0.97256(σ)
        … (atoms 2–6 repeat the same C–C and C–H pattern)
   ─────── ─────────────────   ─────────  ─────────────────────────────────────────────
    (σ/π/δ/φ = bond-orbital symmetry; Total = full Wiberg index over all BOOs)

  Each row leads with the global Index of the pair’s first BOO (its last is implicit
  — one below the next row’s Index — and matches the MO numbering of --export-fchk bo).
  Each aromatic C–C bond resolves into 0.975 σ + 0.444 π — the π piece is
  exactly the delocalized component EDDB maps; the weak 1–4 "meta" interaction
  is pure π; every C–H is a single σ.

3 · Export for visualization (--export-cube / --export-fchk)

Write Gaussian .cube volumetric fields (ed, eddb, edlb, bdf, their differential maps, and per-orbital cubes via ao|no|nobd|bo|xtb[LIST] — one exactly-evaluated cube per selected orbital, faithful in any viewer) or Gaussian .fchk orbitals (nobd, no, bo, the ao basis set, or the GFN2-xTB wavefunction) for any cube/FCHK viewer. Each verb takes a comma-separated list, so one call can emit many coherent files at once. See §5 Output Files and §6 Differential Maps.

Where to go next. The full reference lives in the Manual: §2 covers every input format and the built-in GFN2-xTB engine; §3 the analysis modes; §4 every command-line option; §5–§7 the outputs and how to read them.

4 · Feed an ab-initio wavefunction (--input FILE)

GFN2-xTB is a fast first pass. For publication-quality numbers, run a single point in your quantum-chemistry program and hand the wavefunction file to runEDDB — the analysis is identical regardless of the source program; only the way you generate the file differs. The inputs below all run benzene at the CAM-B3LYP/cc-pVDZ level (a long-range-corrected functional, important for a balanced description of delocalization; cc-pVDZ is built into every program listed, so the inputs stay short and comparable). Each block is one program — expand the one you use.

Gaussian 16

The route section requests a checkpoint, which formchk converts to a formatted one (tested: ES64L-G16RevC.01). Input file: 💾 benzene.gjf.

 benzene.gjf
%Chk=benzene.chk
#P CAM-B3LYP/cc-pVDZ

benzene, CAM-B3LYP/cc-pVDZ single point for runEDDB

0 1
C         1.39100000       0.00000000       0.00000000
C         0.69550000       1.20464134       0.00000000
C        -0.69550000       1.20464134       0.00000000
C        -1.39100000       0.00000000       0.00000000
C        -0.69550000      -1.20464134       0.00000000
C         0.69550000      -1.20464134       0.00000000
H         2.47400000       0.00000000       0.00000000
H         1.23700000       2.14254685       0.00000000
H        -1.23700000       2.14254685       0.00000000
H        -2.47400000       0.00000000       0.00000000
H        -1.23700000      -2.14254685       0.00000000
H         1.23700000      -2.14254685       0.00000000
 terminal
$ g16 benzene.gjf && formchk benzene.chk benzene.fchk
$ runEDDB --input benzene.fchk
Q-Chem

The GUI = 2 setting tells Q-Chem (tested: 6.4.0-1) to write a formatted checkpoint, benzene.fchk. Input file: 💾 benzene.in.

 benzene.in
$molecule
0 1
C         1.39100000       0.00000000       0.00000000
C         0.69550000       1.20464134       0.00000000
C        -0.69550000       1.20464134       0.00000000
C        -1.39100000       0.00000000       0.00000000
C        -0.69550000      -1.20464134       0.00000000
C         0.69550000      -1.20464134       0.00000000
H         2.47400000       0.00000000       0.00000000
H         1.23700000       2.14254685       0.00000000
H        -1.23700000       2.14254685       0.00000000
H        -2.47400000       0.00000000       0.00000000
H        -1.23700000      -2.14254685       0.00000000
H         1.23700000      -2.14254685       0.00000000
$end

$rem
JOBTYP            SP
METHOD            CAM-B3LYP
BASIS             cc-pVDZ
GUI               2
$end
 terminal
$ qchem -nt 4 benzene.in >& benzene.out
$ runEDDB --input benzene.fchk
ORCA

After the SCF, convert the binary benzene.gbw to the JSON wavefunction format with orca_2json (tested: 6.0.1); runEDDB reads benzene.json directly. Input file: 💾 benzene.inp.

 benzene.inp
! CAM-B3LYP cc-pVDZ
* xyz 0 1
C         1.39100000       0.00000000       0.00000000
C         0.69550000       1.20464134       0.00000000
C        -0.69550000       1.20464134       0.00000000
C        -1.39100000       0.00000000       0.00000000
C        -0.69550000      -1.20464134       0.00000000
C         0.69550000      -1.20464134       0.00000000
H         2.47400000       0.00000000       0.00000000
H         1.23700000       2.14254685       0.00000000
H        -1.23700000       2.14254685       0.00000000
H        -2.47400000       0.00000000       0.00000000
H        -1.23700000      -2.14254685       0.00000000
H         1.23700000      -2.14254685       0.00000000
*
 terminal
$ orca benzene.inp > benzene.out && orca_2json benzene
$ runEDDB --input benzene.json
GAMESS-US

GBASIS=CCD selects the built-in cc-pVDZ basis and ISPHER=1 spherical harmonics. runEDDB reads the GAMESS output file itself. Input file: 💾 benzene_gamess.inp.

 benzene_gamess.inp
 $CONTRL SCFTYP=RHF DFTTYP=CAMB3LYP RUNTYP=ENERGY ICHARG=0 MULT=1 ISPHER=1 $END
 $BASIS  GBASIS=CCD $END
 $DATA
benzene, CAM-B3LYP/cc-pVDZ single point for runEDDB
C1
C    6.0       1.39100000       0.00000000       0.00000000
C    6.0       0.69550000       1.20464134       0.00000000
C    6.0      -0.69550000       1.20464134       0.00000000
C    6.0      -1.39100000       0.00000000       0.00000000
C    6.0      -0.69550000      -1.20464134       0.00000000
C    6.0       0.69550000      -1.20464134       0.00000000
H    1.0       2.47400000       0.00000000       0.00000000
H    1.0       1.23700000       2.14254685       0.00000000
H    1.0      -1.23700000       2.14254685       0.00000000
H    1.0      -2.47400000       0.00000000       0.00000000
H    1.0      -1.23700000      -2.14254685       0.00000000
H    1.0       1.23700000      -2.14254685       0.00000000
 $END
 terminal
$ rungms benzene_gamess 00 4 > benzene.gms
$ runEDDB --input benzene.gms
Turbomole

Turbomole has no single input file. Put the 💾 coord file (Cartesian coordinates in Bohr) in an empty directory and let define build control, basis and the start orbitals. The whole interactive session can be driven by piping the answers on stdin (cc-pVDZ on all atoms, CAM-B3LYP via libxc, default charge and occupations):

 coord
$coord  natoms=    12
    2.62860903931860     0.00000000000000     0.00000000000000      c
    1.31430451965930     2.27644221097115     0.00000000000000      c
   -1.31430451965930     2.27644221097115     0.00000000000000      c
   -2.62860903931860     0.00000000000000     0.00000000000000      c
   -1.31430451965930    -2.27644221097115     0.00000000000000      c
    1.31430451965930    -2.27644221097115     0.00000000000000      c
    4.67518243226040     0.00000000000000     0.00000000000000      h
    2.33759121613020     4.04882675562444     0.00000000000000      h
   -2.33759121613020     4.04882675562444     0.00000000000000      h
   -4.67518243226040     0.00000000000000     0.00000000000000      h
   -2.33759121613020    -4.04882675562444     0.00000000000000      h
    2.33759121613020    -4.04882675562444     0.00000000000000      h
$end
 terminal
$ echo -e "\nbenzene\na coord\n*\nno\nb all cc-pVDZ\n*\neht\ny\n0\ny\ndft\non\nfunc hyb_gga_xc_cam_b3lyp\n*\n*\n" | define

Then run the SCF and concatenate control + coord + basis + mos into a single .tmol bundle that runEDDB reads directly:

 terminal
$ dscf && cat control coord basis mos > benzene.tmol
$ runEDDB --input benzene.tmol

Other accepted inputs: Molden files (.molden) and NBO7 archive files (.49); see §2 of the Manual for the full list and the fine print of each format.


 

HOME      PROJECTS      PUBLICATIONS      runEDDB      X

About EDDB       Download       Tutorials       Manual