MolSSI Community Highlights spotlight exceptional examples of research and education enabled by MolSSI software and educational resources.
Prof. Jay Foley (Associate Professor of Chemistry at University of North Carolina, Charlotte) and his group have harnessed the power of MolSSI Educational resources to transform their approach to scientific software development. In this post, Prof Foley tells us how MolSSI tools and workshops have played a role in advancing his group’s research on light-matter interactions and computational design of nanomaterials for energy applications.
Hi Professor Foley, thanks for joining us today! Your research area sounds fascinating. Can you give us a quick overview of your research area and what your group is currently working on?
My group is interested in the theory and modeling of light-matter interactions, and the computational design of materials for energy. We are developing new computational methods that combine tools of ab initio electronic structure theory with cavity quantum electrodynamics to provide tools to simulate molecules strongly interacting with light (molecular polaritons), and we are also interested in developing and using computational tools based on classical electrodynamics to design nanomaterials with tailored optical and thermal radiative properties for energy applications.
That sounds both interesting and impactful. Can you describe how you have utilized MolSSI software tools or resources to achieve specific research goals?
We have developed an open-source software package called WPTherml (Wicked Python package for Thermal Energy and Radiation management with Multilayer nanostructures) that couples rigorous electrodynamics computations to thermal radiation equations and aims to provide a powerful computational design engine for multilayer nanostructures for applications where control of optical and/or thermal radiation properties are paramount. Some applications of particular interest to my group include passive radiative cooling, solar thermophotovoltaics, efficient incandescent lighting, and polaritonics.
We used the Software Development Best Practices workshop and the Objected Oriented Programming and Design Patterns workshop. We participated in a virtual Software Development Best Practices workshop led by Dr. Jessica Nash in Summer 2021, and we worked independently through some of the OOP and Design Patterns workshop material. We have also used the MolSSI CookieCutter project.
Can you tell us a little more about the development of WPTherml? Why did you decide to use MolSSI resources, and how did they enable your software development efforts?
The WPTherml project was started around 2018, and at the time my group did not really have any experience with software package development. Our initial goal for the package was fairly modest – we were utilizing electrodynamics computations (specifically, using transfer matrix method) to model thermal radiation in multi-layer planar materials, and we wanted to make these computations easy to use for students regardless of their experience level with computation and regardless of their computing platform.
Over time, we wanted to add additional capabilities to this package – we wanted to add more electrodynamics solvers for different types of nanomaterial structures, add some quantum mechanical models to enable multi-scale modeling, and also add optimization capabilities to enable some elements of materials design. The structure of the original WPTherml package did not make these developments particularly easy, and we decided we should probably rethink and rewrite it to really make progress.
We contacted MolSSI (specifically Jessica Nash) about participating in the Software Development Best Practices workshop, and she organized a virtual workshop for us. We went through setting up a prototypical package (MolSSI’s CookieCutter) in that workshop with a lot of helpful structure built-in: documentation with sphinx, automated testing using pytest and GitHub actions, and also learned how to improve our git workflow. We utilized the CookieCutter structure as the base for the new version of WPTherml.
After the conclusion of that workshop, we spent a few weeks going through MolSSI’s Object Oriented Programming and Design Patterns workshop material on our own and decided to utilize the factory design pattern for WPTherml, since it seemed to naturally fit with our desire to utilize different types of physics solvers (e.g. transfer matrix method, generalized Mie theory, several quantum mechanical models) to produce similar types of outputs (spectra) from different structure classes.
It’s great to hear that MolSSI’s resources played an important role in the development of your software! Can you now tell us about what scientific findings your software has enabled?
We have used the WPTherml package to design spectrally selective thermal emitters with record-breaking performance for solar thermophotovoltaics that were then fabricated and characterized by experimental collaborators, and have also used it to elucidate the optical properties of borophene (monolayer of boron).
Those are impressive achievements, and it’s wonderful to see how MolSSI resources have contributed to your group’s success. Thank you for sharing your experiences and insights with us!
If you’d like to read more about Professor Foley’s work, we encourage you to see the following links and publications.
WPTherml’s GitHub page: https://github.com/FoleyLab/wptherml
(1) Suchanek, F.; Varner, J.; Lakatos, A.; Bello, J.; Soufanati, S.; Foley, J. J. I. Embracing Modern Software Development Best Practices in an Undergraduate Research Setting: A Case Study with the WPTherml Software Package. In Physical Chemistry Research at Undergraduate Institutions: Innovative and Impactful Approaches, Volume 1; ACS Symposium Series; American Chemical Society, 2022; Vol. 1428, pp 39–52. https://doi.org/10.1021/bk-2022-1428.ch003.
(2) Varner, J. F.; Wert, D.; Matari, A.; Nofal, R.; Foley, J. J. Accelerating the Discovery of Multilayer Nanostructures with Analytic Differentiation of the Transfer Matrix Equations. Phys. Rev. Res. 2020, 2 (1), 013018. https://doi.org/10.1103/PhysRevResearch.2.013018.
(3) Jeon, N.; Mandia, D. J.; Gray, S. K.; Foley, J. J. I.; Martinson, A. B. F. High-Temperature Selective Emitter Design and Materials: Titanium Aluminum Nitride Alloys for Thermophotovoltaics. ACS Appl. Mater. Interfaces 2019,11 (44), 41347–41355. https://doi.org/10.1021/acsami.9b13944.
(4) Varner, J. F.; Eldabagh, N.; Volta, D.; Eldabagh, R.; Iv, J. J. F. WPTherml: A Python Package for the Design of Materials for Harnessing Heat. 2019, 7 (1), 28. https://doi.org/10.5334/jors.271.
(5) Jeon, N.; Hernandez, J. J.; Rosenmann, D.; Gray, S. K.; Martinson, A. B. F.; Foley IV, J. J. Pareto Optimal Spectrally Selective Emitters for Thermophotovoltaics via Weak Absorber Critical Coupling. Advanced Energy Materials 2018, 8 (25), 1801035. https://doi.org/10.1002/aenm.201801035.