Project Details

Abstract

During GSoC 2025, my goal was to make SU2GUI more usable, reliable, and beginner-friendly.

The project brought together three pillars:

  1. Python wrapper integration — to automate and customize simulation workflows from inside the GUI.
  2. JSON-based configuration validation — to catch errors before runtime using schema logic.
  3. A simplified, cross-platform installer — to reduce setup friction and save hours of environment debugging.

This work helps users focus on simulation instead of setup, and improves SU2’s accessibility for both new and experienced users.

How can this help the SU2 Users?

Achievements

1. Python Wrapper Integration (Docs)

2. JSON-based Configuration Validation (Docs)

This was one of the core parts of the project. The validation system is layered in two phases:

Phase 1: Basic Schema Validation

Example errors caught: MISSING: MARKER_OUTLET, TYPE ERROR: CFL_NUMBER expected float, got string

Phase 2: Cross-Parameter Logic Validation

This cross-validation ensures that even when individual keys are valid, the overall configuration is also logically sound.

Integration into GUI

3. Simplified Installer (Docs)

4. Other Enhancements

Deliverables

Documentation

Pull Requests

Future Work

Acknowledgements

I am deeply grateful to my mentors Nijso Beishuizen and Ujjawal Agrawal for their constant feedback, patience, and technical insight.
Their guidance not only shaped the code, but also how I approached problems and structured solutions.

Thanks to the SU2 community for reviewing my PRs, testing features, and providing valuable feedback.
Lastly, I am thankful to Google Summer of Code for giving me this opportunity to contribute to an open-source project that truly helps researchers, students, and engineers around the world.

This project has been both a technical challenge and a personal milestone. I am excited to continue contributing and growing with the SU2 ecosystem.