TurboPy development as a replicable, scalable approach to training future computational physicists

ORAL

Abstract

The Python package turboPy implements the most common aspects of computational physics problems and provides an object oriented, yet accessible approach for novices and experts alike to manage data, implement numerical algorithms, track simulation flow, and create models describing dynamics of quantities on a grid. The framework was the centerpiece for a virtual internship during the summer, enabling a valuable experience to interns and useful contributions to turboPy. The intern project included development of example applications for solving common physics problems, development and automation of documentation, implementation and automation of unit and integration testing, and implementation of a Continuous Integration (CI) pipeline, thus providing interns with exposure to the full lifecycle of physics simulations development using good software engineering practices in a team environment. In addition to reviewing the goals, execution, and outcomes of the project, some thoughts on replication and scaling of the experience for future internships will be provided.

Authors

  • Paul Adamson

    US Naval Research Laboratory

  • A. S. Richardson

    United States Naval Research Laboratory, Naval Research Laboratory, US Naval Research Laboratory

  • Darryl Watkins

    Syntek Technologies

  • Owen Grannis

    Syntek Technologies

  • Gareth Morgan

    Syntek Technologies

  • Aaron Ostenfeld

    Syntek Technologies

  • Kevin Phlips

    Syntek Technologies

  • Caroline Sun

    Syntek Technologies

  • Grace Tang

    Syntek Technologies