/pdcatpdb-code

Primary LanguageJupyter Notebook

Bulky ligands promote palladium-catalysed protodeboronation

by Cher Tian Ser,* Han Hao,* Sergio Pablo-García, Kjell Jorner, Shangyu Li, Robert Pollice,* Alán Aspuru-Guzik.

To run the code contained within this repository used to control the experimental platforms, perform the computational analyses and generate all figures in the article, the following packages must be installed:

  • pandas
  • seaborn
  • matplotlib
  • notebook
  • scipy
  • numpy
  • scikit-learn
  • pykinetic (linked as a submodule)

Experimental Platform Control Code

  • Code that is used to control the MEDUSA platform is located in the folder medusa_rxn. Instructions to run the code are within the folder's README.
  • Code that was used to plot the experimental data for comparing yields and kinetic procedures is located in the folder medusa_rxn/src/plotting. Running python3 plot_pdb.py will generate the figures in medusa_rxn/src/plotting/figs.

Computational Plotting Code

  • Goodvibes_output.csv is the output generated by GoodVibes v3.0.1 when run on all the output files generated by Gaussian 16 and ORCA v5.0.3.
    • --qs truhlar --ssymm --imag -c 1 -t 333.15 --csv --spc orcasp are the command-line arguments used.
    • Note: 3r-adbrettphos-35-ts-ya-c1 is a transition state that cannot be found, and its energies are estimated.
  • goodvibes_processing.ipynb contains code that extracts the relevant information from Goodvibes_output.csv and processes them for plotting and kinetic modelling.
    • The kinetics are generated and model files (intermediates.csv and transformations.csv) are placed into microkinetics/<pathway>-<ligand_name>.
    • The reaction profile diagram plots are pulled from templates/rpd_template_<pathway> if a template does not already exist in microkinetics/<pathway>-<ligand_name>.
      • To prevent label clashes, label positions are handtuned for each reaction profile diagram, though the templates take care of ~70% of the label clashes.
    • all_barriers.csv gathers all the intermediate and transition state energies for each ligand into one file.
    • The analyses for Supplementary Discussions 5.1, 5.2, 6.1, 6.2 and 6.3 are in this file.
  • microkinetic_processing.ipynb takes the kinetic model output generated by goodvibes_processing.ipynb and runs them in a loop across all the ligands.
    • microkinetics/<pathway>-<ligand_name>-model.py takes intermediates.csv and transformations.csv and uses pykinetic to generate the kinetic model.
    • autotuned_microkinetic_parameters.csv contains the kinetic model duration for each ligand, which are tuned automatically.
      • base_microkinetic_parameters.csv can be used to tune your own parameters for each ligand from scratch.
    • ddg_curves.csv contains the $\Delta\Delta G^{‡}$ values required to return a specific computational yield.
    • supplementary_data_s2.csv combines multiple sources of information into one csv file.
      • Deviations in yield due to uncertainty in water concentrations, and barrier tuning to parity prediction metrics are incorporated into autotuned_microkinetic_parameters.csv.
      • all_barriers.csv is generated by goodvibes_processing.ipynb.
      • kraken_descriptors contains all 190 steric and electronic descriptors of the ligands studied in this article.
    • The analyses for Supplementary Discussions 6.4.1 and 7 are in this file.