This page contains some tutorials that I started while a postdoc at Stanford University. We'd also like to bring you some new tutorials about how to run TeraChem shortly. In the meantime, I'll be posting some elective slides that cover the basics of force fields and electronic structure (density functional theory, wave function theory....). Please let us know what you think (the 'fun' link in the menubar above)!

Visualizing molecules built from SMILES strings in Jupyter Notebooks using molSimplify
Wednesday, November 3, 2021
molSimplify can be used to visualize molecules built from SMILES strings. In this tutorial, we will use molSimplify to generate several variants of a molecule and display them in a grid. To start out, install molSimplify via Conda using our instructions on Github and activate the mols_test... (read more)
Installing molSimplify
Wednesday, October 27, 2021
Install recommendations: For users who intend to develop (i.e., change the source code) with molSimplify, we recommend an install from source. If you have difficulties installing from source, we recommend Docker or Conda, where we maintain a static image of molSimplify that includes machine... (read more)
molSimplify Tutorial 13: molscontrol -- an intelligent job control system to manage your DFT geometry optimizations for inorganic discovery.
Monday, April 1, 2019
  With the static classifier, we achieve great performance on job status predictions of out-of-sample data points, capturing their failure before doing the simulation thus saving lots of computational resources (https://hjkgrp.mit.edu/content/molsimplify-tutorial-12-using-static-clas...). When... (read more)
molSimplify Tutorial 12: Using the static classifier to predict your simulation outcomes before they waste your time
Monday, March 25, 2019
  Geometry optimization with density functional theory (DFT), a general procedure to obtain the ground state structures of a complex, is computationally demanding in terms of time and can also easily fail. Two main failure modes are 1) the expected geometry cannot maintain stability during the DFT... (read more)
Using molSimplify in Python scripts
Tuesday, February 5, 2019
Many of the classes and methods that are used in molSimplify can be incorporated into your own python scripts. This can be used to extend the geometric manipulation routines in molSimplify to custom use-cases, or to help post-processing the results of DFT calculations. The most useful can be found... (read more)
molSimplify Tutorial 11: Transition state structure generation in molSimplify
Wednesday, September 5, 2018
Note: TS generation is not currently working as of 10/18/19. Check back here for updates later. Introduction Today we're going to teach you about new features in molSimplify that make it possible to generate transition states in addition to intermediates for inorganic complexes. Currently,... (read more)
molSimplify Tutorial 10: Adding ligands to molSimplify
Wednesday, May 9, 2018
molSimpliy comes with about 160 built in common ligands and a nifty decoration manager to modify them. However, this cannot hope to address the scope of possible ligands, so we also support providing your own ligands as SMILES or in 3D molecule formats.  Let's make a triple bidentate complex with... (read more)
QM9 kernel models using molSimplify, RACs and R: Part 1
Tuesday, February 20, 2018
*/ In this two-part tutorial, we’ll show you how to use molSimplify to collect autocorrelation-based descriptors from molecular structures and use those to make predictions using a simple kernel ridge regression (KRR) model, as shown in our recent paper. In this first part, we will explain how to... (read more)
QM9 kernel models using molSimplify, RACs and R: Part 2
Tuesday, February 20, 2018
*/ In the second part of our tutorial, we will demonstrate how to use R to conduct kernel based prediction of atomization energies based on RACs. You’ll need QM9_descriptor_file.csv, which we prepared using molSimplify in the previous tutorial and also provide here. We’ll use R to conduct a simple... (read more)
molSimplify Tutorial 9: Bidentate Ligand Replacement
Thursday, December 21, 2017
In this tutorial, we will show how to replace multidentate ligands in a prebuilt complex. This feature, which facilitates screening of diverse catalyst scaffolds, was recently added to molSimplify. Today’s example involves the following Zn(II) intermediate in a model carbonic anhydrase catalytic... (read more)


About Us

The Kulik group focuses on the development and application of new electronic structure methods and atomistic simulations tools in the broad area of catalysis.

Our Interests

We are interested in transition metal chemistry, with applications from biological systems (i.e. enzymes) to nonbiological applications in surface science and molecular catalysis.

Our Focus

A key focus of our group is to understand mechanistic features of complex catalysts and to facilitate and develop tools for computationally driven design.

Contact Us

Questions or comments? Let us know! Contact Dr. Kulik: