Holiday break project : CDER


This post is rather technical. All you need to know is that I created a rather pretty piece of software which allows me to take a good look at the collisions we record at the ATLAS experiment. This project made me enjoy programming like never before.

Turns out I had so much momentum to kill this year after the crazy 2012 fall period that I managed to bring a complete software project to completion. Actually, this is my first ever big software project that is not directly work-related. Or at least, this is my first software project that has nothing to do with attaining specific research goals, or obtaining a passing grade in a boring computer science class.

Initially, I was looking for an excuse to enjoy programming. I found that excuse in pyglet, a python framework to create games that handles openGL graphics. I first made an Asteroids game out of it, but then I moved on to something a little more serious.

CDER (pronounced like seeder, means C-olli-DER) is the fruit of my efforts. It’s a very simple event display for particle physics events. I was looking into existing event displays for ATLAS, and they were all much too complicated and slow for what I was trying to do. I was only trying to get a feel for the meaning of some rather weird event shape variables, so I was trying to look at a lot of events with specific values of these variables.

CDER is light, so light in fact that you can spin around the events in real time and get a full grasp of their configuration in three-dimensional space. Of course, the events aren’t shown in too much details. Only very high-level objects are shown like jets, electrons, taus and missing transverse energy.

I ended up making a full project page for CDER with a wiki. CDER is technically capable of reading from any ROOT file, as long as you tell it how to access basic kinematics for high-level objects. You have to write a bit of code, but it should be very easy.

I’ll let the interested people visit the CDER website. Let me know if there are any questions. There are two known issues, the first being that pyglet will not cooperate easily with Ubuntu. Pyglet takes care of generating windows, so it has a certain amount of  platform-dependent code. The other issue is that CDER will only work in 32-bit mode for now.

Here’s an introduction video. I never made such a thing before. Don’t underestimate how much of a pain it can be to get something like that right 🙂

This entry was posted in Programming, Science and tagged , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s