Jupyter widgets and extensions for education and research in computational physics and chemistry

Interactive notebooks are a precious tool for creating graphical user interfaces and teaching materials. Python and Jupyter are becoming increasingly popular in this context, with Jupyter widgets at the core of the interactive functionalities. However, while packages and libraries which offer a broa...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Computer physics communications 2024-12, Vol.305, p.109353, Article 109353
Hauptverfasser: Du, Dou, Baird, Taylor J., Eimre, Kristjan, Bonella, Sara, Pizzi, Giovanni
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Interactive notebooks are a precious tool for creating graphical user interfaces and teaching materials. Python and Jupyter are becoming increasingly popular in this context, with Jupyter widgets at the core of the interactive functionalities. However, while packages and libraries which offer a broad range of general-purpose widgets exist, there is limited development of specialized widgets for computational physics, chemistry and materials science. This deficiency implies significant time investments for the development of effective Jupyter notebooks for research and education in these domains. Here, we present custom Jupyter widgets that we have developed to target the needs of these communities. These widgets constitute high-quality interactive graphical components and can be employed, for example, to visualize and manipulate data, or to explore different visual representations of concepts, clarifying the relationships existing between them. In addition, we discuss with one example how similar functionality can be exposed in the form of JupyterLab extensions, modifying the JupyterLab interface for an enhanced user experience when working with applications within the targeted scientific domains. Program Title: Development of Jupyter widgets and extensions for computational physics and chemistry CPC Library link to program files:https://doi.org/10.17632/7n2r2xh44k.1 Developer's repository links: https://github.com/osscar-org/widget-bzvisualizer https://github.com/osscar-org/widget-periodictable https://github.com/osscar-org/widget-bandsplot https://github.com/osscar-org/jupyterlab-mol-visualizer Licensing provisions: BSD 3-clause Programming language: JavaScript, TypeScript, Python Nature of problem: Interactive widgets can greatly enhance the learning process of students when used as components of educational notebooks, and streamline day-to-day research tasks of scientists when employed within research workflows leveraging the Jupyter ecosystem. Unfortunately, there is still a lack of specialized widgets tailored for use in computational physics or chemistry. Due to this, user experience and time-to-development or adoption of software tools of this kind are still poor. Solution method: We have developed a number of high-quality and versatile Jupyter widgets and extensions, delivering customized visual software components for computational physics and chemistry. These tools considerably enhance education and research applications in these domains. Our wi
ISSN:0010-4655
DOI:10.1016/j.cpc.2024.109353