Structure of the distributed driver: see the final paragraph in Sec. IV for details. In brief, a user request (a) for a
multi-molecule, multi-model-chemistry, or non-analytic derivative passes into planning
functions (b) defined in procedure tiles (z) that generate a pool of QCSCHEMA
for single-molecule, single-model-chemistry, analytic derivative inputs. These can run
in several modes (c), depending on desired parallelism and recoverability. Completed
QCSCHEMA passes through assembly functions (d) defined in procedure tiles (z)
and denoted “ASM” that reconstitute (e) into the requested energy (“E”), gradient (“G”),
or Hessian (“H”).