GSoC-2014: Traer.Physics Library

edited March 2014 in Summer of Code 2014

Hello all,

My name is Kevin Anderson. I've been using Processing for three or four years now and am an Astrophysics and Mathematics double major at UNC Chapel Hill. I would like to rework the Traer.Physics library for Processing 2 and add to its functionality. To outline the goals of my proposal:

  • First and foremost, update the library for Processing 2, as the wiki suggests.
  • Second, extend the library to be more capable. Right now, it's a bit bare bones if you want to do more than the basics. Coming from a scientific perspective, I'd like to add a built-in way to model real-world forces better, such as quadratic drag forces (currently it only uses linear), electric charge attraction/repulsion, etc. I think the library could also benefit from additional forms of numerical integration besides Euler and RK4. I'm also interested in adding functionality for objects that ought not be modeled as particles (fluids, blocks, etc).
  • Third, look for speed (and memory) optimizations to free up time for the rest of the sketch. I've looked through the current code and there isn't anything glaringly obvious, but it's possible that some clever physics tricks could be worked into the code to speed it up.
  • Fourth, after updating it for Processing 2(/3?) and making additions, create documentation and example sketches.

What I've outlined seems like it might not take the entire summer (it's not a very big library, after all), so I am certainly open to suggestions for more improvements to this library or additional related projects that I could take on. One idea that I've been toying with is creating a PDE tool that lets you tweak forces and see how they behave visually before coding them into your sketch. I'm imagining a dropdown that lets you choose a force, sliders to change the strength, etc.

To give a bit more background about myself, I've played around with particle modeling in the past and am currently developing a gravity simulator in Matlab that has a lot of parallel features to this library: github. I'm currently studying advanced mechanics and numerical techniques, so this project relates directly to my studies. It's been a while since I've posted on this forum (it seems that my username didn't get carried over from the older forum, but I had the same name there), but I'm active in the Processing tag on StackOverflow: profile.

I apologize for posting this so close to the deadline, and I'm more than happy to hear feedback and criticism on this idea! Thanks,

Kevin Anderson


  • edited March 2014

    Note that I am not affiliated with the GSoC program, but to me this sounds like a very useful project. I've worked with and reworked the code in the Traer Physics library myself in the past, so I know the library well. Your suggestions and additions all make sense. I wish you good luck and hope this project gets selected for GSoC! B-)

  • Thanks for your ideas, as a reference to another popular physics library in Processing you might also take a look at toxiclibs verletphysics (which also needs some updating for 2.0).

  • I didn't know that toxiclibs had a physics library, too-- seems like it has some (a lot) of everything. Hopefully I will be able to build some additional functionality into my project. Thanks for both of your comments!

  • I think the deadline is in 20 minutes

Sign In or Register to comment.