This is my latest google time project. The vision is this – a gui application, with real-time interaction, that displays sph particles interacting in two or three dimensions, rendered in a variety of ways (surface, particles, interpolated..). Splashing, condensation, boiling, sloshing, exploding are all possible. Using a defined netcdf interface, a system state can be loaded from a file produced by a different application (e.g. my number-crunching fortran SPH code), and examined, allowed to evolve while being observed, etc etc.
More mundand objectives are:
1. To build a basic but extensible particle dynamics system with python
2. To convert my old particle system work in C to a library that can be python-wrapped and integrated
3. Use a well separated MVC pattern to enforce the independence of the model and the view.
4. To keep it general enough to be able to use the same framework for basic MD style interactions, and more complex SPH style interactions.
My work on the C particle system hit a bit of a dead end, partly due to the combination of time constraints, and the inability to do anything both quickly and well. Nevertheless the ODE solvers are probably quite suitable to be wrapped and called by python. I’m enforcing a journal for this project, and a slow, steady-as-she-goes development philisophy.
I’m going to break it down into a series of exercises, and post code as I write it. I’ll keep a reasonably up-to-date version on the google code pyticles project.