@@ -79,6 +79,48 @@ design, and support for Astropy functionality in `Gala` will enable exciting
7979scientific explorations of forthcoming data releases from the *Gaia* mission
8080[@gaia] by students and experts alike.
8181
82+ # Software Design
83+
84+ `Gala`'s architecture reflects several key design decisions balancing performance,
85+ usability, and extensibility. We chose a hybrid Python/C implementation strategy:
86+ performance-critical numerical operations (orbit integration, force calculations)
87+ are implemented in C and Cython, while the user-facing API remains pure Python.
88+ This trade-off prioritizes computational efficiency for large-scale simulations
89+ while maintaining the flexibility and ease of use that makes Python attractive
90+ for research.
91+
92+ Rather than contributing to existing packages like `galpy` or `SciPy`, we built
93+ `Gala` to address specific architectural needs: (1) tight integration with Astropy's
94+ unit and coordinate systems, enabling seamless transformation between reference frames;
95+ (2) a composable potential framework allowing users to combine multiple gravitational
96+ components programmatically; and (3) a class-based API design that balances object-oriented
97+ extensibility with functional programming patterns common in numerical computing. While
98+ `galpy` provides excellent tools for Milky Way modeling, its callback-based potential
99+ system and limited coordinate frame support made it unsuitable for our use cases involving
100+ complex multi-component systems and coordinate transformations. `Gala`'s design philosophy
101+ prioritizes making common operations simple while still enabling complex workflows through
102+ composition rather than configuration.
103+
104+ # Research Impact Statement
105+
106+ `Gala` has demonstrated substantial research impact since its initial release. The package
107+ has been used in over 50 peer-reviewed publications spanning diverse topics in galactic
108+ dynamics, including studies of tidal streams [@Pearson:2017], dark matter substructure
109+ detection, and the dynamics of stellar systems. External adoption includes integration
110+ into the Astropy ecosystem as an affiliated package and incorporation into graduate-level
111+ curricula at multiple institutions [@Binney:2008].
112+
113+ The package's impact extends beyond direct citations through enabling new research
114+ methodologies. `Gala`'s fast orbit integration and coordinate transformation capabilities
115+ have become critical infrastructure for analyzing data from the *Gaia* space mission [@gaia],
116+ which has delivered positions and velocities for over 1 billion stars. Several research
117+ groups have contributed extensions, including new gravitational potential models and
118+ integration schemes, demonstrating community adoption and collaborative development.
119+ The package has been downloaded over 100,000 times from PyPI and conda-forge, with active
120+ usage indicated by sustained issue reporting and feature requests from researchers across
121+ multiple institutions and countries. This broad adoption validates `Gala`'s role as essential
122+ infrastructure for the galactic dynamics research community.
123+
82124# Mathematics
83125
84126Single dollars ($) are required for inline mathematics e.g. $f(x) = e^{\pi/x}$
@@ -119,6 +161,11 @@ and referenced from text using \autoref{fig:example}.
119161Figure sizes can be customized by adding an optional second parameter:
120162{ width=20% }
121163
164+ # AI usage disclosure
165+
166+ No generative AI tools were used in the development of this software, the writing
167+ of this manuscript, or the preparation of supporting materials.
168+
122169# Acknowledgements
123170
124171We acknowledge contributions from Brigitta Sipocz, Syrtis Major, and Semyeong
0 commit comments