Modernizing Legacy: Wrapping a 25+ Year Computational Fluid Dynamics Codebase @PyConAU
Modernizing Legacy: Wrapping a 25+ Year Computational Fluid Dynamics Codebase  @PyConAU
Uploaded September 2025 | Updated September 2026, 1 hour ago
(Tishampati Dhar, Duy Nguyen) Water quality modeling plays a crucial role in managing aquatic ecosystems. Those models are based on Computational Fluid Dynamics (CFD), the science of using numerical analysis and data structures to solve many processes influencing fluid behavior. CFD requires many complex mathematical representations through various ODE and PDE solvers, and has traditionally been written in Fortran or C++, mostly for their speed in doing massively parallel computations, such as handling array operations and object-oriented features. As such, those codebases have a long-standing legacy in scientific computing, and many established CFD codes are written in them. However, as time goes on, we witness the popularity of a new generation of codebases such as Python, which stems from its simplicity, versatility, and strong community. Extensive libraries and frameworks make Python a popular choice for many developers and scientists alike. It is, however, not a preferred language for core CFD code due to performance limitations and its difficulties with parallelization.

This talk explores modernizing a **25+ year-old C++ CFD model**, essential for **simulating lake conditions**, particularly for **predicting temperature variations** and **algal bloom dynamics**, by wrapping it with [C-interop](github.com/csiro-hydroinformatics/c-interop) for seamless Python interoperability.

Beyond integration, we leverage [Optuna](optuna.org/), a powerful hyperparameter optimization framework, to fine-tune models efficiently, transitioning from manual parameter tuning on a laptop to a **distributed, scalable workflow** powered by [Dask Distributed](distributed.dask.org/en/stable/) and [JupyterHub](jupyterhub.readthedocs.io/en/stable/). This transformation enables automated hyperparameter optimization across **many lakes in Australia**, helping researchers **investigate trends in tuning parameters** and derive deeper environmental insights.

pretalx.com/pycon-au-2025/talk/8SKZRV

python, pycon, australia, programming, conference, technical, developers, panel, sessions, libraries, frameworks, community, sysadmins, students, education, data, science

Videos licensed as CC-BY-NC-SA 4.0

PyCon AU is the national conference for the Python programming community, bringing together professional, student and enthusiast developers, sysadmins and operations folk, students, educators, scientists, statisticians, and many others besides, all with a love for working with Python.

Licensed as CC BY-NC-SA - creativecommons.org/licenses/by-nc-sa/4.0

Produced by Next Day Video Australia: https://nextdayvideo.com.au

Fri Sep 12 11:00:00 2025 at Ballroom 2
Modernizing Legacy: Wrapping a 25+ Year Computational Fluid Dynamics CodebaseAI perceptions of gender - J. Rosenbaum (Pycon AU 2024)Adding File System context to pathlib - Clinton Roy (Pycon AU 2024)Using Multiple Databases in Django Applications - Artem Kolesnikov (Pycon AU 2024)Scientific Python Track ClosingAI for Good: Using Responsible AI to Drive Social Impact and InclusionA Lazy Persons Guide to Building REST Clients or: How I Learned to Stop Worrying and Love Dunder OvFrom Matlab to Lambda: Transforming Structural Engineering Research ToolsProductivity: a dialogue - Benno Rice, Daisy Leigh Brenecki (PyCon AU 2026)Where am I? What am I doing? Mobile App development in PythonTesting Beyond Examples: Property Based Testing with Hypothesis - Sam Bishop (PyCon AU 2026)Saturday lightning talks - Nic Crouch, Daisy Leigh Brenecki (PyCon AU 2026)
PyCon AU |

Modernizing Legacy: Wrapping a 25+ Year Computational Fluid Dynamics Codebase

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER