Hi there! I’m currently a Master’s student at University of Waterloo. My research interests involves simulating fluid flow in a realistic manner.
Ongoing degree under the supervision of Dr. Christopher Batty
Currently holding a 94% GPA
Summa Cum Laude
Received an 11.9 GPA on a 12-point scale
Analyzing and developing central-upwinding schemes in meshless finite-volume and finite-element applications
Performed various fluid dynamics test cases using Gasoline and GIZMO simulation code
20-minute undergraduate thesis presentation on improving shearing diffusion in central schemes for meshless geometries
Computational hydrodynamics is significant in the study of physical phenomena in astronomy, with the bulk of the universe’s matter being low-density gas.The Kurganov-Tadmor (KT) central scheme is a robust numerical flux scheme that performs well in simulating compressible fluids. It performs admirably at the supersonic regime, but is found to cause excessive diffusion, especially in the case of shearing problems. Diffusion is required to maintain stability and prevent formation of spurious structures, but too much suppresses even physically relevant structures.
A new method of controlling the diffusion in the KT scheme is proposed, based on determining whether the local flow is shearing or not. This is shown to be effective at reducing diffusion while retaining stability through an implementation in the GIZMO hydrodynamics code, which uses an unstructured geometry where fluid is simulated by representing it as a collection of particles whose movement represents the flow.
The method was tested using a range of problems, focusing on its behaviour in both shearing flows as well as in the supersonic regime. Results show that diffusion is noticeably reduced in shearing cases, while stability is not impacted in the supersonic regime. Additionally, it was shown to perform on-par with, or better than, other methods in a difficult test containing both shearing and supersonic components. Thus, the new method achieves the desired reduction of diffusion while maintaining the robustness of the KT scheme.
10-minute oral presentation on the balance between numerical diffusion and stability in hydrodynamics simulations.
Numerical hydrodynamics attempts to capture the behaviour of physical fluid flow via numerical computation. The Euler fluid equations are the most commonly used mathematical representation of inviscid, compressible fluids, and one method of computing its solution numerically is called the Kurganov-Tadmor (KT) central scheme. Because of the limits of numerical analysis, however, challenges arise when attempting to solve ill-conditioned problems. Of interest are two such cases: singular gradients found in shocks, and the incompressible limit. Artificial viscosity is often used to stabilize methods in these ill-conditioned situations, but provides a challenge in determining how much is enough for stability, but not so much as to dominate over the physical result. An iterative improvement of the KT scheme will be presented, where a preconditioning method is applied to minimize the viscosity applied at subsonic cases, but keep its current stability in the supersonic regime.
10-minute oral presentation on the implementation of the Kurganov-Tadmor central scheme into GIZMO
Smoothed particle hydrodynamics (SPH) is a numerical method for solving Euler’s fluid equations. Originally developed for simulating gases in astrophysics, it has found uses in other fields including fluid flows and rigid body physics. SPH defines physical properties – density, velocity, and pressure – at points that follow the fluid field. These physical properties are used to interpolate values for the entire space. This interpolation, however, is inexact and leads to numerical errors in the calculation of momentum and energy fluxes between the particles. Methods for improving this error based off literature was assessed, and planned to be implemented into the SPH code, Gasoline.
A common, accurate class of methods for calculating fluxes are Riemann solvers. Due to their computational expense, however, they render simulations prohibitively slow in some cases – a faster, and possibly sufficiently accurate, alternative is the Kurganov-Tadmor (KT) central scheme. The KT scheme was initially used for grid simulations, thus making the upcoming implementation novel among SPH codes. It has been implemented into the hydrodynamics code, GIZMO, which currently uses a Riemann solver; and its viability will be analyzed via the use of standard test cases, where the KT scheme will be compared against that of a Riemann solver. Initial results are promising, but changes will be made due to the differences between grid codes and SPH. The implementation of the Kurganov-Tadmor central scheme into SPH is expected to yield improved results – accuracy close to exact Riemann solvers at significantly faster speeds.
10-minute oral presentation on artificial viscosity and conductivity for resolving shocks in hydrodynamics simulations. Received third place award out of 14 talks in the astrophysics category.
Smoothed particle hydrodynamics (SPH) is a numeric computational method commonly used in astrophysics simulations, where physical properties are defined at points whose coordinates track the flow of the fluid rather than at a grid as is with a mesh-based method. Physical properties, such as density, pressure, and temperature, are interpolated from the values defined at nearby points using a smoothing function. As with any numerical solution, however, SPH has difficulty with mathematical singularities - of particular importance in hydrodynamics are shocks, discontinuities across which entropy increases. These can be seen in real life as waves produced by explosions and supersonic aircraft. Results for these discontinuities have traditionally been improved via the addition of an artificial viscosity, smearing it into a resolvable continuous curve. The behaviour of SPH on shocks of various strengths is analyzed, using varying degrees of artificial viscosity, as well as the effect of additional shock-specific thermal conduction. It was found that this addition yielded an improvement to shock results, but minor variations to the formulation were necessary to prevent detrimental effects on other cases, particularly shearing flows.
Poster presentation to 120 peers and professors
Demonstrated a working simulation and summarized results of the Stochastic Lattice Lotka-Volterra Model in poster format.
A pioneering and now ubiquitous model in population ecology, the Lotka-Volterra system describes the temporal dynamics of two interacting species as a pair of differential equations. While mathematically elegant, it suffers from being deterministic, demonstrating the periodicity of predator-prey relationships, but little else. Its simplicity prevents more thorough analysis and generalization for more complex ecosystems, calling for a more robust analogue.
The inaccuracies in classical Lotka-Volterra largely stem from its lack of discrete, spatial, and stochastic elements – a more modern model, applying these corrections, is the Stochastic Lattice Lotka-Volterra, which treats the deterministic rates as probabilities applied over a discrete N×N lattice. As the same interactions defined by classical Lotka-Volterra are performed a large number of times, it becomes a Monte Carlo approximation, with probabilities being equivalent to rates at the mean-field limit.
Applying this new model in C, my analysis finds that while it approximates classical Lotka-Volterra, it exhibits more consistency with known ecological theory. In particular, it demonstrates decreasing fluctuation amplitude over time, as well as a bifurcation between the coexistence and extinction states, whereas the classical model implies an inevitable, perfectly periodic, coexistence for any two-species system.
Novel modifications to the simulation provides insight into the spatiotemporal behaviours of different ecosystems, such as species invasiveness and a parity law in trophic interactions. Thus, by applying the Lotka-Volterra model in silica, with the inclusion of discrete, spatial, and stochastic elements, a more accurate and robust model is created, applicable for the study of a wider range of ecosystems.
Presented for achieving a 12.0 sessional GPA on a 12-point scale
Outstanding achievement in the Department of Math and Stats; Awarded per year
Awarded to top 10% of faculty per year
Entrance Scholarship for 95% and above average
Instructional Apprentice (IA) for CS 251: Computer Organization & Design
Responsibilities include holding office hours, answering student questions regarding course material, monitoring online course message board, organizing marking TAs, and marking remark requests.
Marking TA for CS 115: Introduction to Computer Science 1
Responsibilities include marking student work and proctoring exams.
TA under Dr. Nick Miladinovic for first year physics
Responsibilities include supervising labs, holding office hours, teaching tutorials, and marking student work.
Member of the Editorial Board for the iScientist student-run journal, responsible for performing webmaster duties as well as maintaining social media pages and developing promotional graphics. Developed a new webpage for the journal using modern responsive design.
Volunteer tutor at the iSci Peer Mentorship program, providing help with first and second year math and physics content.
Courses include ISCI 1A24 Math and Physics, ISCI 2A18 Math and Physics, MATH 1B03, MATH 2C03, MATH 2XX3, PHYSICS 2G03, PHYSICS 2B03.
Volunteer ambassador representing the McMaster Integrated Science program at the Ontario University Fair 2017, wherein I spoke with and answered questions by prospective undergraduate students regarding the program;
Coordinated with the Sherman Centre for Digital Scholarship to create an introduction to 3D printing workshop open to the public.
Organized and presented a 2-hour introduction to Arduino workshop in McMaster’s Thode Makerspace. Position involved sourcing required electronics components, preparing a PowerPoint presentation, and promoting the event via posters and social media.
Gave guidance on the organization of the planetarium workshop, as well as held administrative duties involving event logistics.
Organizer for a publicly open 1-hour introductory workshop to the Arduino hardware platform. Responsibilities included working with the colloquium organizers for time and room bookings, contacting Dr. Jay Brodeur as the guest lecturer, and designing posters for event promotion.
Presented two 20-minute planetarium shows to a 25-student audience on interplanetary travel and the search for exoplanet life, highlighting various terrestrial bodies in the solar system.
Assisted directing high school students to workshop locations, as well as in workshop setup and cleanup.