Following the successful completion of the initial StarFit project, the software developers from ADACS have once again collaborated with the StarFit science team to provide software support. This follow-up project was completed ahead of schedule, thanks to the flexibility and responsiveness of the ADACS developers.
One of the significant achievements of this project was the adoption of Meson and a multi-stage build approach. With the deprecation of Distutils, the previous build system for the Fortran code, transitioning to Meson was a strategic decision to future-proof the project and align it with industry best practices. Moreover, certain Fortran code components, particularly those involving OpenMP, presented complexities not seamlessly handled by f2py. To address this, a multi-stage build approach leveraging Meson as the build system was adopted, ensuring robust and efficient handling of these components.
Documentation integration was also significantly improved with the seamless incorporation of ReadTheDocs, a widely-used documentation platform, into the project’s workflow. By directly linking documentation content to the codebase, real-time updates were enabled, ensuring that any changes in the code were immediately reflected in the documentation. This automated process reduced the burden of manual documentation maintenance, allowing developers to focus more on coding while ensuring that documentation remained up-to-date.
The successful completion of this follow-up project not only addressed the immediate needs of the StarFit science team but also laid a strong foundation for future developments.
Project Image: Screenshot from the StarFit online tool.
Check out some of our other projects.
ADACS provided a solid foundation on which the GOTO-XBs team could further build the web app, and provided instructional information to up-skill the team.
ADACS collaborated with the developers of QUOKKA, a radiation hydrodynamics code, to determine if the performance could be enhanced. Although the code was already highly optimised, performance gains were made by refactoring GPU kernels.
PHANTOM is an SPH code used for astrophysical simulations. ADACS transitioned its test suite to GitHub Actions, allowing the researchers to develop more rapidly. Recommendations were made on how to improve the code's parallel performance.