After each calculation has completed Digichem then automatically performs parsing of the calculation log file. In the first instance, Digichem determines whether the calculation has completed successfully, which can normally be detected by the presence of a trigger line at the end of the calculation (for example, "****ORCA TERMINATED NORMALLY****" for Orca, or "Normal termination of Gaussian" for Gaussian), as well as by checking if the exit code of the calculation engine is 0. For a geometry optimisation, the optimisation must also have converged to a minimum for the calculation to be considered successful. The success/failure status of the program is used to set the SUCCESS or ERROR file flags, as appropriate, and is also used to determine whether to continue to the next calculation in the queue. If the calculation is not successful, no further calculations in the chain will be submitted. This prevents errors being accidentally propagated to subsequent calculations and wasting CPU time. If the calculation was successful, Digichem then proceeds to perform a more complete analysis of the output. The calculation log file is parsed using the cclib 56 library, which is able to extract various numerical results, such as orbital energies and vibrational frequencies, as well as vital calculation metadata, including the DFT functional/calculation method, basis set and solvent.