Reproducible quantum chemistry in Jupyter
In silico prediction of chemical properties has seen vast improvements in both veracity and volume of data but is currently hamstrung by a lack of transparent, reproducible workflows coupled with environments for visualization and analysis. Chris Harris offers an overview of a platform that uses Jupyter notebooks to enable an end-to-end workflow from simulation setup to visualizing the results.
|Talk Title||Reproducible quantum chemistry in Jupyter|
|Speakers||Chris Harris (Kitware)|
|Conference||JupyterCon in New York 2018|
|Conf Tag||The Official Jupyter Conference|
|Location||New York, New York|
|Date||August 22-24, 2018|
In silico prediction of chemical properties has seen vast improvements in both the veracity and volume of data. However, these improvements are hampered by the lack of tools to provide transparent, reproducible workflows for analysis, knowledge discovery, and visualization of the data. Kitware and Lawrence Berkeley National Laboratory have been working on using the Jupyter environment to provide such tooling and have developed a prototype platform that uses Jupyter notebooks to enable an end-to-end workflow from simulation setup and simulation submission to a high-performance computing (HPC) resource to analytics and visualization of the results. Jupyter provides the perfect environment to enable this sort of workflow. It allows interactive analysis while preserving the data generation and analytics steps for other scientists to review and collaborate on. The development team made the decision early on to use JupyterLab for user interface (UI) components, despite it being in early alpha release at the time. JupyterLab offers all the familiarity of the classic Jupyter Notebook with a next-generation UI, providing the flexibility, power, and extensibility needed to support the rich user experience for users’ workflows. Chris Harris offers an overview of this platform and explores the scientific use case the platform is targeting. Chris details the core components with a particular focus on JupyterLab integration and running HPC jobs from within a notebook, shares his experience working with JupyterLab to enable the project’s novel capabilities, and explains how that was coupled with 3D visualization of chemical structure. One of the unique capabilities of the platform is its ability to initiate quantum calculations on HPC resources within a Jupyter notebook through a simple Python API. The domain expert is shielded from much of the complexity associated with submission and monitoring of HPC jobs. The calculation is defined in terms that are familiar to them, for example, specifying a geometry optimization using a particular quantum theory, and the platform takes care of creating the appropriate job and submitting it to an HPC resource.