Digichem Result

digichem result is used to parse results from completed calculations.

$ digichem result LOG_FILE

Digichem will intelligently look for relevant log files, so the calculation folder can be specified instead of the log file itself. For example, in the following directory structure:

Benzene
    Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)
        Flags
        Input
        Logs
        Output
            Benzene.log
            Benzene.fchk
        Report
        Results

The following commands are all equivalent:

$ digichem result "Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/Output/Benzene.log"
$ digichem result "Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/Output"
$ digichem result "Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/"

By default, the result data is written to stdout. The -O option can be used to write the data to a file instead:

$ digichem result Benzene.log -O Benzene.results

digichem result can write results to a number of different formats. The default format is --yaml, which saves the calculation data to the digichem native result format (.sir):

$ digichem result Benzene.log
_id: 5c407cd31b64517aaa0ebbee4852c24ed69dc30b
atoms:
  alignment_method: Minimal
  charge: 0
  exact_mass:
    units: g mol^-1
    value: 78.04694999999998
  formula: C6H6
  linearity_ratio: 0.1012287031128819
  molar_mass:
  ...

The .sir format is reusable, and .sir files can be read to convert the data to another format:

$ digichem result Benzene.log -O Benzene.sir
$ digichem result Benzene.sir -s

The --summary format prints a human-readable summary of the most important calculation results:

$ digichem result Benzene.log --summary
_id
  ----------------------------------------
  5c407cd31b64517aaa0ebbee4852c24ed69dc30b
  ----------------------------------------

metadata
-------------------------  -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
name                       Benzene
log_files                  /home/oliver/ownCloud/Digichem Data Centre/Demonstrations/Outputs/Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/Output/Benzene.log
auxiliary_files:fchk_file  /home/oliver/ownCloud/Digichem Data Centre/Demonstrations/Outputs/Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/Output/Benzene.fchk
history
charge                     0.00
multiplicity               1.00
user                       oliver
package                    Gaussian
package_version            2016+C.01
silico_version             5.2.1-pre.0
calculations               Optimisation, Frequencies
methods                    DFT
functional                 PBE1PBE
...

While the --table-property (for human-readable) and --csv-property (for machine-readable) formats generate tables of results. When combined with an appropriate filter, --table-property and --csv-property can be used to generate tables of specific data:

$ digichem result Benzene.log --csv-property -f orbitals -O Benzene.orbitals.csv
$ digichem result Benzene.log --table-property -f orbitals
orbitals:index  orbitals:label      orbitals:homo_distance    orbitals:energy / eV  orbitals:symmetry      orbitals:symmetry_index
----------------  ----------------  ------------------------  ----------------------  -------------------  -------------------------
               1  HOMO-20                                -20                 -278.54  A                                            1
               2  HOMO-19                                -19                 -278.54  A                                            2
               3  HOMO-18                                -18                 -278.54  A                                            3
               4  HOMO-17                                -17                 -278.52  A                                            4
               5  HOMO-16                                -16                 -278.52  A                                            5
               6  HOMO-15                                -15                 -278.51  A                                            6
               7  HOMO-14                                -14                  -23.80  A                                            7
               8  HOMO-13                                -13                  -20.78  A                                            8
               9  HOMO-12                                -12                  -20.78  A                                            9
              10  HOMO-11                                -11                  -16.76  A                                           10
...

digichem result can also parse and combine result data from multiple different calculation log files. This pattern is useful for comparing result data from several calculations simultaneously. Using the --table (or -t) format will provide a top-level overview of each calculation result:

$ digichem result Benzene.log Naphthalene.log --table
_id                                       metadata:name    metadata:log_files   metadata:history      metadata:charge    metadata:multiplicity  metadata:user    metadata:package    metadata:package_version    metadata:digichem_version    metadata:calculations      metadata:methods    metadata:functional    metadata:basis_set    metadata:orbital_spin_type    metadata:success    metadata:optimisation_converged      metadata:date / s  metadata:date:string      metadata:duration / s  metadata:duration:string      metadata:temperature / K    metadata:pressure / atm  metadata:solvent:model    metadata:solvent:name      metadata:num_cpu    metadata:memory_used / B    metadata:memory_available / GB    ground_state:index  ground_state:symbol      ground_state:charge    ground_state:multiplicity    ground_state:multiplicity_index    ground_state:energy / eV    energies:final / eV    energies:scf:num_steps    energies:scf:final / eV    energies:mp:num_steps  energies:mp:final / eV      energies:mp:order    energies:cc:num_steps  energies:cc:final / eV    atoms:formula      atoms:charge  atoms:smiles      atoms:exact_mass / g mol^-1    atoms:molar_mass / g mol^-1    atoms:num_atoms    atoms:x-extension / Å    atoms:y-extension / Å    atoms:z-extension / Å    atoms:linearity_ratio    atoms:planarity_ratio  atoms:alignment_method      orbitals:dE(HOMO-LUMO) / eV    orbitals:num_occupied    orbitals:num_virtual  orbitals:spin_type      orbitals:HOMO:index  orbitals:HOMO:label      orbitals:HOMO:homo_distance    orbitals:HOMO:energy / eV  orbitals:HOMO:symmetry      orbitals:HOMO:symmetry_index    orbitals:LUMO:index  orbitals:LUMO:label      orbitals:LUMO:homo_distance    orbitals:LUMO:energy / eV  orbitals:LUMO:symmetry      orbitals:LUMO:symmetry_index  beta_orbitals:dE(HOMO-LUMO) / eV      beta_orbitals:num_occupied    beta_orbitals:num_virtual  beta_orbitals:spin_type      pdm:total / D    pdm:origin:x / Å    pdm:origin:y / Å    pdm:origin:z / Å    pdm:vector:x / D    pdm:vector:y / D    pdm:vector:z / D    pdm:x-angle / deg    pdm:xy-angle / deg    vibrations:num_vibrations    vibrations:num_negative
----------------------------------------  ---------------  -------------------- ------------------  -----------------  -----------------------  ---------------  ------------------  --------------------------  ---------------------------  -------------------------  ------------------  ---------------------  --------------------  ----------------------------  ------------------  ---------------------------------  -------------------  ----------------------  -----------------------  --------------------------  --------------------------  -------------------------  ------------------------  -----------------------  ------------------  --------------------------  --------------------------------  --------------------  ---------------------  ---------------------  ---------------------------  ---------------------------------  --------------------------  ---------------------  ------------------------  -------------------------  -----------------------  ------------------------  -------------------  -----------------------  ------------------------  ---------------  --------------  --------------  -----------------------------  -----------------------------  -----------------  -----------------------  -----------------------  -----------------------  -----------------------  -----------------------  ------------------------  -----------------------------  -----------------------  ----------------------  --------------------  ---------------------  ---------------------  -----------------------------  ---------------------------  ------------------------  ------------------------------  ---------------------  ---------------------  -----------------------------  ---------------------------  ------------------------  ------------------------------  ----------------------------------  ----------------------------  ---------------------------  -------------------------  ---------------  ------------------  ------------------  ------------------  ------------------  ------------------  ------------------  -------------------  --------------------  ---------------------------  -------------------------
5c407cd31b64517aaa0ebbee4852c24ed69dc30b  Benzene          Benzene.log                                             0                        1  oliver           Gaussian            2016+C.01                   1.0.0-pre.1                  Optimisation, Frequencies  DFT                 PBE1PBE                6-31G(d,p)            restricted                    True                True                                     1689623663.00  17/07/2023 20:54:23                      210.90  3 m, 31 s                                       298.15                       1.00                                                                      2                   536870912                                 2                     0  S(0)                                       0                            1                                  0                    -6312.57               -6312.57                         3                   -6312.57                        0                                              0                        0                            C6H6                          0  c1ccccc1                                78.05                          78.11                 12                     4.95                     4.45                     0.00                     0.10                     1.00  Minimal                                            7.25                       21                      99  none                                     21  HOMO                                               0                        -7.02  A                                                     21                     22  LUMO                                               1                         0.23  A                                                     22                                                                 0                            0                                        0.00                0.00                0.00                0.00                0.00                0.00                0.00                 0.00                  0.00                           30                          0
986724991a2ccd02c86b9c147500b374d4ea655d  Naphthalene      Naphthalene.log                                         0                        1  oliver           Gaussian            2016+C.01                   1.0.0-pre.1                  Optimisation, Frequencies  DFT                 PBE1PBE                6-31G(d,p)            restricted                    True                True                                     1689623831.00  17/07/2023 20:57:11                      445.40  7 m, 25 s                                       298.15                       1.00                                                                      2                   536870912                                 2                     0  S(0)                                       0                            1                                  0                   -10488.94              -10488.94                         4                  -10488.94                        0                                              0                        0                            C10H8                         0  c1ccc2ccccc2c1                         128.06                         128.17                 18                     6.74                     4.97                     0.00                     0.26                     1.00  Minimal                                            5.20                       34                     156  none                                     34  HOMO                                               0                        -6.07  A                                                     18                     35  LUMO                                               1                        -0.87  B                                                     17                                                                 0                            0                                        0.00                0.00                0.00                0.00                0.00                0.00                0.00                 0.00                  0.00                           48                          0

The output from this command is typically very wide; it is recommended to pipe the command into less for a more natural viewing experience:

$ digichem result Benzene.log Naphthalene.log --table | less -S
_id                                       metadata:name    met...
----------------------------------------  ---------------  ---...
5c407cd31b64517aaa0ebbee4852c24ed69dc30b  Benzene          Ben...
986724991a2ccd02c86b9c147500b374d4ea655d  Naphthalene      Nap...

To obtain a machine-readable output instead, use the --csv (or -c) format:

$ digichem result Benzene.log Naphthalene.log --csv -O results.csv
$ digichem result Benzene.log Naphthalene.log --csv
_id,metadata:name,metadata:log_files,metadata:auxiliary_files:fchk_file,metadata:history,metadata:charge,metadata:multiplicity,metadata:user,metadata:package,metadata:package_version,metadata:digichem_version,metadata:calculations,metadata:methods,metadata:functional,metadata:basis_set,metadata:orbital_spin_type,metadata:success,metadata:optimisation_converged,metadata:date / s,metadata:date:string,metadata:duration / s,metadata:duration:string,metadata:temperature / K,metadata:pressure / atm,metadata:solvent:model,metadata:solvent:name,metadata:num_cpu,metadata:memory_used / B,metadata:memory_available / GB,ground_state:index,ground_state:symbol,ground_state:charge,ground_state:multiplicity,ground_state:multiplicity_index,ground_state:energy / eV,energies:final / eV,energies:scf:num_steps,energies:scf:final / eV,energies:mp:num_steps,energies:mp:final / eV,energies:mp:order,energies:cc:num_steps,energies:cc:final / eV,atoms:formula,atoms:charge,atoms:smiles,atoms:exact_mass / g mol^-1,atoms:molar_mass / g mol^-1,atoms:num_atoms,atoms:x-extension / Å,atoms:y-extension / Å,atoms:z-extension / Å,atoms:linearity_ratio,atoms:planarity_ratio,atoms:alignment_method,orbitals:dE(HOMO-LUMO) / eV,orbitals:num_occupied,orbitals:num_virtual,orbitals:spin_type,orbitals:HOMO:index,orbitals:HOMO:label,orbitals:HOMO:homo_distance,orbitals:HOMO:energy / eV,orbitals:HOMO:symmetry,orbitals:HOMO:symmetry_index,orbitals:LUMO:index,orbitals:LUMO:label,orbitals:LUMO:homo_distance,orbitals:LUMO:energy / eV,orbitals:LUMO:symmetry,orbitals:LUMO:symmetry_index,beta_orbitals:dE(HOMO-LUMO) / eV,beta_orbitals:num_occupied,beta_orbitals:num_virtual,beta_orbitals:spin_type,pdm:total / D,pdm:origin:x / Å,pdm:origin:y / Å,pdm:origin:z / Å,pdm:vector:x / D,pdm:vector:y / D,pdm:vector:z / D,pdm:x-angle / deg,pdm:xy-angle / deg,vibrations:num_vibrations,vibrations:num_negative
5c407cd31b64517aaa0ebbee4852c24ed69dc30b,Benzene,"/home/oliver/ownCloud/Digichem Data Centre/Demonstrations/Outputs/Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/Output/Benzene.log","/home/oliver/ownCloud/Digichem Data Centre/Demonstrations/Outputs/Benzene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G(d,p)/Output/Benzene.fchk",,0,1,oliver,Gaussian,2016+C.01,1.0.0-pre.1,"Optimisation, Frequencies",DFT,PBE1PBE,"6-31G(d,p)",restricted,True,True,1689623663.0,17/07/2023 20:54:23,210.9,"3 m, 31 s",298.15,1.0,,,2,536870912,2,0,S(0),0,1,0,-6312.56934563643,-6312.56934563643,3,-6312.56934563643,0,,0,0,,C6H6,0,c1ccccc1,78.04694999999998,78.11184,12,4.946028,4.445347999999999,0.000259,0.1012287031128819,0.9999417368448994,Minimal,7.24911297732,21,99,none,21,HOMO,0,-7.0229863675545,A,21,22,LUMO,1,0.2261266097655,A,22,,0,0,,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,30,0
986724991a2ccd02c86b9c147500b374d4ea655d,Naphthalene,/home/oliver/ownCloud/Digichem Data Centre/Demonstrations/Outputs/Naphthalene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G**/Output/Naphthalene.log,/home/oliver/ownCloud/Digichem Data Centre/Demonstrations/Outputs/Naphthalene/Gaussian 16 Optimisation Frequencies PBE0 (GD3BJ) Gas Phase Pople Basis Sets 6-31G**/Output/Naphthalene.fchk,,0,1,oliver,Gaussian,2016+C.01,1.0.0-pre.1,"Optimisation, Frequencies",DFT,PBE1PBE,"6-31G(d,p)",restricted,True,True,1689623831.0,17/07/2023 20:57:11,445.4,"7 m, 25 s",298.15,1.0,,,2,536870912,2,0,S(0),0,1,0,-10488.93947360067,-10488.93947360067,4,-10488.93947360067,0,,0,0,,C10H8,0,c1ccc2ccccc2c1,128.06259999999997,128.17052,18,6.738784,4.971028,1e-06,0.26232566587681105,0.9999997988343658,Minimal,5.2041773908125,34,156,none,34,HOMO,0,-6.072492687758,A,18,35,LUMO,1,-0.8683152969455,B,17,,0,0,,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,48,0

Multiple calculation parsing can be combined with filters in the usual way to obtain a subset of the total results:

$ digichem result Benzene.log Naphthalene.log --table -f metadata:name orbitals
metadata:name      orbitals:dE(HOMO-LUMO) / eV    orbitals:num_occupied    orbitals:num_virtual  orbitals:spin_type
---------------  -----------------------------  -----------------------  ----------------------  --------------------
Benzene                                   7.25                       21                      99  none
Naphthalene                               5.20                       34                     156  none

All of the output formats support multiple calculations. The non-tabular formats (those other than -t and -c) will display each result separately, in series. This is sometimes useful for comparing specific results at a glance, but generally has less utility than the tabular formats:

$ digichem result Benzene.log Naphthalene.log -s -f metadata:name orbitals
metadata:name
  -------
  Benzene
  -------

orbitals
------------------  -----
dE(HOMO-LUMO) / eV  7.25
num_occupied        21.00
num_virtual         99.00
spin_type           none
------------------  -----

metadata:name
  -----------
  Naphthalene
  -----------

orbitals
------------------  ------
dE(HOMO-LUMO) / eV  5.20
num_occupied        34.00
num_virtual         156.00
spin_type           none
------------------  ------

See below for a full description of the available output formats.

Filters

Filters allow the user to only display or export certain parts of the calculation data. Each filter is specified by the --filters (or -f) option, followed by the filter itself. For example, to only display the metadata from a calculation:

$ digichem result Benzene.log -s -f metadata
metadata
-------------------------  --------------------------
name                       Benzene
log_files                  Benzene.log
auxiliary_files:fchk_file  Benzene.fchk
history
charge                     0.00
multiplicity               1.00
user                       oliver
package                    Gaussian
package_version            2016+C.01
digichem_version           1.0.0-pre.1
calculations               Optimisation, Frequencies
methods                    DFT
functional                 PBE1PBE
basis_set                  6-31G(d,p)
orbital_spin_type          restricted
success                    1.00
optimisation_converged     1.00
date / s                   1689623663.00
date:string                17/07/2023 20:54:23
duration / s               210.90
duration:string            3 m, 31 s
temperature / K            298.15
pressure / atm             1.00
solvent:model
solvent:name
num_cpu                    2.00
memory_used / B            536870912.00
memory_available / GB      2.00
-------------------------  --------------------------

Multiple filters can be specified to extract more than one section simultaneously. Filters that are specified in this way are always combined inclusively, that is any section that matches any filter will be displayed. For example, to extract both the orbital and geometric data:

$ digichem result Benzene.log -s -f atoms orbitals
atoms
---------------------  --------
formula                C6H6
charge                 0.00
smiles                 c1ccccc1
exact_mass / g mol^-1  78.05
molar_mass / g mol^-1  78.11
num_atoms              12.00
x-extension / Å        4.95
y-extension / Å        4.45
z-extension / Å        0.00
linearity_ratio        0.10
planarity_ratio        1.00
alignment_method       Minimal
---------------------  --------

orbitals
------------------  -----
dE(HOMO-LUMO) / eV  7.25
num_occupied        21.00
num_virtual         99.00
spin_type           none
------------------  -----

The calculation data that is parsed by Digichem is stored in a hierarchy. At the top level of the hierarchy are general sections for each type of data that can be parsed by Digichem, things like orbitals, atoms, metadata, and so on. Within each section can then be found the relevant results. Each of these items may also be nested itself, containing a number of sub-results. As an example, a typical atoms section has the following structure:

atoms:
  alignment_method:
  charge:
  exact_mass:
    units:
    value:
  formula:
  linearity_ratio:
  molar_mass:
    units:
    value:
  num_atoms:
  planarity_ratio:
  smiles:
  values:
  - coords:
    element:
    group:
    index:
    label:
    mass:
      units:
      value:
  ...

As can be seen, the exact_mass and molar_mass items both contain sub-items, which are units and value. Any numeric results that are parsed by Digichem and that have a unit will be displayed in this way. These top-level items of the atoms section are summary data for the molecule as a whole, including results such as the molecular charge, molar mass, and molecular formula. The data pertaining to the atom positions themselves are stored in a list, which is exposed in the values section. In the above example, the structure of only a single atom is shown, in reality this list would contain all the atoms of the molecule.

More advanced filters can be used to navigate this hierarchy and select only specific results. To progress down the hierarchy, specify multiple filter terms joined with a semicolon (‘:’). For example, to display only the molar_mass of the molecule:

$ digichem result Benzene.log -f atoms:molar_mass
atoms:molar_mass:
  units: g mol^-1
  value: 78.11184

More filter terms can be added as necessary. For example, if only the numeric value of the molar_mass was required:

$ digichem result Benzene.log -f atoms:molar_mass:value
atoms:molar_mass:value: 78.11184

Multiple filters can still be specified as usual. For example, to compare the exact and molar masses:

$ digichem result Benzene.log -f atoms:molar_mass:value atoms:exact_mass:value
atoms:exact_mass:value: 78.04694999999998
atoms:molar_mass:value: 78.11184

Filters can also be used to extract specific results from a list. A numerical filter will correspond to a given position in that list. For example, to extract the data pertaining to the first atom in the list:

$ digichem result Benzene.log -f atoms:values:0
atoms:values:0:
  coords:
    x:
      units: "Å"
      value: -1.389184
    y:
      units: "Å"
      value: 0.091061
    z:
      units: "Å"
      value: 9.0e-06
  element: 6
  group: C1
  index: 1
  label: C1
  mass:
    units: g mol^-1
    value: 12.0

All lists in Digichem are zero-indexed, so the first atom is identified by a filter of ‘0’. Although the list data is technically stored in the values item, Digichem allows the values filter to be omitted as a convenience when specifying list filters. Thus the following filters are equivalent:

$ digichem result Benzene.log -f atoms:values:0
$ digichem result Benzene.log -f atoms:0

Multiple search terms can still be specified to navigate the hierarchy as normal. For example, to extract the element of the first atom:

$ digichem result Benzene.log -f atoms:0:element
atoms:0:element: 6

Which is 6 (carbon). Negative indices can also be specified to search from the end of the list:

$ digichem result Benzene.log -f atoms:-1:element
atoms:-1:element: 1

For lists of more complex data, such as molecular orbitals, filters can also be specified based on the unique properties of the item. For example, the label of the orbital can be used as a filter to obtain the HOMO and LUMO:

$ digichem result Benzene.log -f orbitals:HOMO orbitals:LUMO
orbitals:HOMO:
  energy:
    units: eV
    value: -7.0229863675545
  homo_distance: 0
  index: 21
  label: HOMO
  symmetry: A
  symmetry_index: 21
orbitals:LUMO:
  energy:
    units: eV
    value: 0.2261266097655
  homo_distance: 1
  index: 22
  label: LUMO
  symmetry: A
  symmetry_index: 22

Other orbitals can be obtained based on their proximity to the HOMO/LUMO too:

$ digichem result Benzene.log -f orbitals:HOMO-1
orbitals:HOMO-1:
  energy:
    units: eV
    value: -7.023258481405
  homo_distance: -1
  index: 20
  label: HOMO-1
  symmetry: A
  symmetry_index: 20

Similarly, excited states can be filtered based on their unique state symbol:

$ digichem result Benzene.log -f excited_states:"S(1)"
excited_states:S(1):
  cie:
    x: 0.3127
    y: 0.329
  colour: Ultraviolet
  energy:
    units: eV
    value: 5.679800248338608
  index: 5
  multiplicity: 1
  multiplicity_index: 1
  oscillator_strength: 0.0
  symbol: S(1)
  symmetry: Singlet-A
  ...

Output Formats

Digichem Native Format (.sir)

--yaml or -y

The default digichem native file format (.sir). This format is designed to reversibly store calculation results in an efficient manner, allowing them to be read back at a later date. The YAML used to store this data is also readable to humans, and is fairly easy to understand for single results. For lists or deeply nested results however, a tabular format is often a better choice.

$ digichem result Benzene.log -y -f metadata
metadata:
  auxiliary_files:
    fchk_file: Benzene.fchk
  basis_set: 6-31G(d,p)
  calculations:
  - Optimisation
  - Frequencies
  charge: 0
  date:
    string: 17/07/2023 20:54:23
    units: s
    value: 1689623663.0
  digichem_version: 1.0.0-pre.1
  duration:
    string: 3 m, 31 s
    units: s
    value: 210.9
  functional: PBE1PBE
  ...

JSON Format

--json or -j

Similar to the .sir format, the JSON format is reversible. Compared to the YAML format used by .sir, JSON is more compact but less readable to humans. It is generally only used where efficiency is mandated, such as data transfer over a network.

$ digichem result Benzene.log -j -f metadata
[{"metadata": {"name": "Benzene", "log_files": ["Benzene.log"], "auxiliary_files": {"fchk_file": "Benzene.fchk"}, "history": null, "charge": 0, "multiplicity": 1, "user": "oliver", "package": "Gaussian", "package_version": "2016+C.01", "digichem_version": "1.0.0-pre.1", "calculations": ["Optimisation", "Frequencies"], "methods": ["DFT"], "functional": "PBE1PBE", "basis_set": "6-31G(d,p)", "orbital_spin_type": "restricted", "success": true, "optimisation_converged": true, "date": {"value": 1689623663.0, "units": "s", "string": "17/07/2023 20:54:23"}, "duration": {"value": 210.9, "units": "s", "string": "3 m, 31 s"}, "temperature": {"value": 298.15, "units": "K"}, "pressure": {"value": 1.0, "units": "atm"}, "solvent": {"model": null, "name": null, "params": {}}, "num_cpu": 2, "memory_used": {"value": 536870912, "units": "B"}, "memory_available": {"value": 2, "units": "GB"}}}]

CSV Format

--csv or -c

The comma-separated values format is useful for exporting results for further post-processing in another program, particularly spreadsheet software. This format is particularly well suited for parsing multiple output files simultaneously, allowing large amount of data to be compared at once. This version of the format contains only high level results, for deeply nested data use the --csv-property format instead.

$ digichem result Benzene.log Naphthalene.log -c -f metadata
metadata:name,metadata:log_files,metadata:auxiliary_files:fchk_file,metadata:history,metadata:charge,metadata:multiplicity,metadata:user,metadata:package,metadata:package_version,metadata:digichem_version,metadata:calculations,metadata:methods,metadata:functional,metadata:basis_set,metadata:orbital_spin_type,metadata:success,metadata:optimisation_converged,metadata:date / s,metadata:date:string,metadata:duration / s,metadata:duration:string,metadata:temperature / K,metadata:pressure / atm,metadata:solvent:model,metadata:solvent:name,metadata:num_cpu,metadata:memory_used / B,metadata:memory_available / GB
Benzene,Benzene.log,Benzene.fchk,,0,1,oliver,Gaussian,2016+C.01,1.0.0-pre.1,"Optimisation, Frequencies",DFT,PBE1PBE,"6-31G(d,p)",restricted,True,True,1689623663.0,17/07/2023 20:54:23,210.9,"3 m, 31 s",298.15,1.0,,,2,536870912,2
Naphthalene,Naphthalene.log,Naphthalene.fchk,,0,1,oliver,Gaussian,2016+C.01,1.0.0-pre.1,"Optimisation, Frequencies",DFT,PBE1PBE,"6-31G(d,p)",restricted,True,True,1689623831.0,17/07/2023 20:57:11,445.4,"7 m, 25 s",298.15,1.0,,,2,536870912,2

Table Format

--table or -t

This format contains the same data as --csv, except in human-readable format. Useful for reading in a terminal (or text editor). In the terminal, it is often advantageous to pipe the output to the less command to prevent long lines from being split.

$ digichem result Benzene.log Naphthalene.log -t -f metadata | less -S
metadata:name    metadata:log_files    metadata:auxiliary_files:fchk_file    metadata:history      metadata:charge    metadata:multiplicity  metadata:user    metadata:package    metadata:package_version    metadata:digichem_version    metadata:calculations      metadata:methods    metadata:functional    metadata:basis_set    metadata:orbital_spin_type    metadata:success    metadata:optimisation_converged      metadata:date / s  metadata:date:string      metadata:duration / s  metadata:duration:string      metadata:temperature / K    metadata:pressure / atm  metadata:solvent:model    metadata:solvent:name      metadata:num_cpu    metadata:memory_used / B    metadata:memory_available / GB
---------------  --------------------  ------------------------------------  ------------------  -----------------  -----------------------  ---------------  ------------------  --------------------------  ---------------------------  -------------------------  ------------------  ---------------------  --------------------  ----------------------------  ------------------  ---------------------------------  -------------------  ----------------------  -----------------------  --------------------------  --------------------------  -------------------------  ------------------------  -----------------------  ------------------  --------------------------  --------------------------------
Benzene          Benzene.log           Benzene.fchk                          0                        1  oliver           Gaussian            2016+C.01                   1.0.0-pre.1                  Optimisation, Frequencies  DFT                 PBE1PBE                6-31G(d,p)            restricted                    True                True                                     1689623663.00  17/07/2023 20:54:23                      210.90  3 m, 31 s                                       298.15                       1.00                                                                      2                   536870912                                 2
Naphthalene      Naphthalene.log       Naphthalene.fchk                      0                        1  oliver           Gaussian            2016+C.01                   1.0.0-pre.1                  Optimisation, Frequencies  DFT                 PBE1PBE                6-31G(d,p)            restricted                    True                True                                     1689623831.00  17/07/2023 20:57:11                      445.40  7 m, 25 s                                       298.15                       1.00                                                                      2                   536870912                                 2

CSV Property Format

--csv-property or -d

Similar to the standard --csv format, except intended for use with lists of data. This format produces a single table of data for tabular results, such as lists of orbitals, excited states, vibrational frequenies etc.

$ digichem result Benzene.log -d -f orbitals
orbitals:index,orbitals:label,orbitals:homo_distance,orbitals:energy / eV,orbitals:symmetry,orbitals:symmetry_index
1,HOMO-33,-33,-278.796422440579,A,1
2,HOMO-32,-32,-278.78363308960553,B,1
3,HOMO-31,-31,-278.6056706313785,B,2
4,HOMO-30,-30,-278.6056706313785,A,2
5,HOMO-29,-29,-278.5964187604615,A,3
6,HOMO-28,-28,-278.59614664661103,B,3
7,HOMO-27,-27,-278.5822688402355,B,4
8,HOMO-26,-26,-278.5817246125345,A,4
9,HOMO-25,-25,-278.577642904777,A,5
10,HOMO-24,-24,-278.57737079092647,B,5
11,HOMO-23,-23,-24.4404497103585,A,6
12,HOMO-22,-22,-22.953347517376002,B,6
13,HOMO-21,-21,-21.619445422225,B,7
14,HOMO-20,-20,-20.7032380875915,A,7
15,HOMO-19,-19,-20.0860838746575,A,8
...

Table Property Format

--table-property or -a

The same as --csv-property, except in human-readable format.

$ digichem result Benzene.log -a -f orbitals
  orbitals:index  orbitals:label      orbitals:homo_distance    orbitals:energy / eV  orbitals:symmetry      orbitals:symmetry_index
----------------  ----------------  ------------------------  ----------------------  -------------------  -------------------------
               1  HOMO-33                                -33                 -278.80  A                                            1
               2  HOMO-32                                -32                 -278.78  B                                            1
               3  HOMO-31                                -31                 -278.61  B                                            2
               4  HOMO-30                                -30                 -278.61  A                                            2
               5  HOMO-29                                -29                 -278.60  A                                            3
               6  HOMO-28                                -28                 -278.60  B                                            3
               7  HOMO-27                                -27                 -278.58  B                                            4
               8  HOMO-26                                -26                 -278.58  A                                            4
               9  HOMO-25                                -25                 -278.58  A                                            5
              10  HOMO-24                                -24                 -278.58  B                                            5
              11  HOMO-23                                -23                  -24.44  A                                            6
              12  HOMO-22                                -22                  -22.95  B                                            6
              13  HOMO-21                                -21                  -21.62  B                                            7
              14  HOMO-20                                -20                  -20.70  A                                            7
              15  HOMO-19                                -19                  -20.09  A                                            8
...

Summary Format

--summary or -s

A format that presents a top-level view of a calculation’s results. The summary format is useful for obtaining a quick overview of a calculation at a glance.

$ digichem result Benzene.log -s -f metadata
metadata
-------------------------  ---------------------------
name                       Benzene
log_files                  Benzene.log
auxiliary_files:fchk_file  Benzene.fchk
history
charge                     0.00
multiplicity               1.00
user                       oliver
package                    Gaussian
package_version            2016+C.01
digichem_version           1.0.0-pre.1
calculations               Optimisation, Frequencies
methods                    DFT
functional                 PBE1PBE
basis_set                  6-31G(d,p)
orbital_spin_type          restricted
success                    1.00
optimisation_converged     1.00
date / s                   1689623663.00
date:string                17/07/2023 20:54:23
duration / s               210.90
duration:string            3 m, 31 s
temperature / K            298.15
pressure / atm             1.00
solvent:model
solvent:name
num_cpu                    2.00
memory_used / B            536870912.00
memory_available / GB      2.00
-------------------------  ---------------------------

Summary

Code

Shortcode

H

M

Use-case

--yaml

-y

General use format; reusable

--json

-j

Compact network data transfer; reusable

--csv

-c

Tabulating data at a glance; machine-readable

--table

-t

Tabulating data at a glance

--csv-property

-d

Tabulating specific result; machine-readable

--table-property

-a

Tabulating specific result

--summary

-s

Results at a glance

H: Human-readable, M: Machine-readable

Note

The Human readable and Machine readable columns are intended as a guide only. All formats are text based and hence could be read by a sufficiently skilled (or stubborn) human. Likewise, one could write a parser for the ‘non machine readable’ formats, but it is difficult to think of a reason to do so…

Regenerating the Results Folder

When a Digichem managed calculation is finished, Digichem will automatically write a number of result files to the ‘Results’ folder. These files include a number of CSV tables containing data about molecular orbitals, vibrational frequencies and so-on, as well as a number of summary files pertaining to the calculation as a whole.

It is sometimes necessary to recreate these result files if they are not generated automatically. This might happen if a calculation stops with a severe error which prevents Digichem from continuing, or if a calculation was run manually (ie, not with Digichem) but you still wants to generate the normal result files.

In these instances, the --auto option can be specified to digichem result to regenerate any missing files:

$ digichem result Output/Benzene.log --auto
$ ls Results
Benzene.absorptions.csv  Benzene.IR.csv        Benzene.SOC.csv
Benzene.atoms.csv        Benzene.MP.csv        Benzene.summary.csv
Benzene.beta.csv         Benzene.nmr.csv       Benzene.summary.txt
Benzene.CC.csv           Benzene.orbitals.csv  Benzene.UV-Vis.csv
Benzene.ES.csv           Benzene.SCF.csv       Benzene.vibrations.csv