About me
My papers
Teaching

Numerical solution of partial differential equations (selected chapters, fall/winter 2019)
Lectures cover basics of numerical solution of PDEs, using both Eulerian (FDM, FEM) and Lagrangian (SPH) approaches. Presentation slides Example codes Videos OpenSPH simulations
OpenSPH code
OpenSPH runs hydrodynamical and Nbody simulations and was written for asteroid collisions and subsequent gravitational evolution.
The code offers SPH and Nbody solvers with several different equations of state and material rheologies.
It is written in C++14 with a modular objectoriented design, focused on extensibility and maintainability,
and it can be used either as a library or as a standalone graphical program that allows to set up the problem
in a convenient graphical node editor. The graphical program further allows realtime visualization of the simulation,
diagnostics and tools for analysis of the results.
Code snippet
AsymmetricSolver solver(*scheduler, settings, equations);
for (Size matId = 0; matId < particles>getMaterialCnt(); ++matId) {
solver.create(*particles, particles>getMaterial(matId));
}
PredictorCorrector stepper(particles, settings);
Statistics stats;
for (Float t = 0; t < t_end; t += stepper.getTimeStep()) {
stepper.step(*scheduler, solver, stats);
}