The Scientific Process Through Stock Photography

Stock photography offers a candid look at the essence of any “keyword” through the eyes of the general public. Given the renewed interest in my original Awkward Science Stock Photography post, I decided to check if the essence of science has changed over the years. Are all scientists merely chemists, confounded by an endless spectrum of coloured liquids? Let’s test this hypothesis by piecing together the process of Science using stock photography from the search-term “scientist” alone.

It all begins at the lab window where various molecules are drawn using markers. Mathematicians do it, so why not scientists?

Next, scientists obtain chemicals and set up their work area. If they’re a female scientist they often do this in a revealing or full-on nude way.

Female scientists should check their make-up and hair before things get too crazy. Before:


The aim of a scientist is to observe a coloured liquid and learn from it, but before they truly observe a liquid they must first engage in pouring and mixing.

This one is actually pretty badass… great pour.

Mixing is also important and some scientists will opt for the force to mix their liquid.

It’s easy to become miserable after lots of pouring and mixing

A soothing bench nap supported by the comfort of chemical laden gloves or jagged electronics will help.

She’s disappointed because it’s clear. Failed experiment.

This man could not assemble the molecular model kit. Experiment failed.

Next, it’s finally time for the scientist to observe the liquid! Way too close though.

The color of said liquid may induce shock. This is when you know you’re doing high-quality Science.

To be fair, microscopes can also be shocking.

Now that the hard work is over, the scientist may enjoy the fruits of his or her labour.

Certain coloured liquids warrant a phone-call to the local newspaper for immediate publication in the science column.

Occasionally, the best fluids are injected into food to improve crop yields. How else can a scientist get paid?

Scientists may also need to expose mice or dogs to your fluids in order to make designer cosmetics.

At the end of the day, scientists coddle their prized liquids by snuggling and cradling them.

As a scientist, I can verify this sequence of events resulting in Science is more or less correct. Thank you stock photographers!

Visual Guide to Science Museums in Paris

There’s a great book called The Geek Atlas: 128 Places Where Science and Technology Come Alive, a list of nerdy tourist attractions around the globe. I heaven’t exactly read it, but when I left for Paris to do research September-November last year at the Synchrotron Soleil (pictured above) I made it my goal to explore as many science museums in Paris that I could. On top of that, I just got a new camera before I left, so let me break down my favorite spots in a nice visually stimulating manner.

Even if you’re a super science genius and you’re too cool for these layman museum displays, it’s really interesting to consider these exhibits from a science education perspective. While you’re strolling through, consider the challenge of designing of both accurate and interactive science demonstrations. I have a vested interest in these installations so I found this whole museum quest fascinating on a number of levels.

1) The Museum of Natural History (Musee d’Histoire Naturelle)

If you’re a biologist at heart, this place is great. Free for students (don’t forget to bring your student card overseas kids). Awesome animal parade centerpiece surrounded by multiple levels of taxidermy-style displays. Don’t miss the tiger attack and dodo not pictured. Great for photography opportunities and if you’re visiting in the right season, there’s lots of stuff to do outside. A must-see in my opinion.

2) Cité des Sciences et de l’Industrie

The most famous/biggest science museum in France, home of the Geode (an IMAX theatre),

I only visited the permanent exhibits (energy, space, optics, etc.) but those alone were worth the price of admission. Be warned that all the displays are explained in only French. If you’re a hopeless English-only speaker like myself, you’ll have to rely on your inner scientific explanatory gusto (or they might have tour guides). What I didn’t expect to see were all the cool mathematical demos. How do you present something as dry and uncool as math? The answer is geometry. Check out this simple cube/square projection and artsy Mobius strip,

I really enjoyed the simple soapy water demonstrations. It was just a demo of contorted wires being dipped in soapy water, demonstrating nature’s great ability to minimize surface area. Another bubble demonstrations was just a sheet which you could lower and raise into bubbly water and watch the swirling rainbow optical phenomena. Kids (including me) had fun blowing holes in it and recreating it,

Even some statistics demonstrations of both the Galton Box and Brownian motion.

Did I mention there were traditional science exhibits? There was a genetics section and several noteworthy physics demos scattered about. I had fun trying to photograph this Newton’s Cradle symmetrically. Plus, a snazzy rotating water wheel.

Top off your stay with a brilliant gravitational lensing demonstration and a classic coloured shadows optics demo, then head to the next museum!

3) Museum of Arts and Crafts (Musée des Arts et Métiers de Paris)

I’ll be the first to admit the name of this place is confusing. More than anything, it’s a museum of historical science and technology and hence, it’s probably the most boring of the museums for kids. Don’t go here if you’re expecting interactivity, unless you count pressing buttons to activate crazy mechanical dolls (I warned you!) or unless they have a cool temporary exhibit on. For photographers, lots of stuff behind glass, like this fax machine. I was really hoping to get a closer look at such a rare piece of equipment,

Numerous engineering feats were displayed, like a Moon Rover and a Cyclotron,

Despite its grandparent’esque historical nature, I had lots of fun nerding out over old science apparatus. It really made me wish that today’s lab equipment had more wood and brass. If I ever get rich, oh man, you won’t believe the oldschool lab I’m going to build. This place even had a supposed “Laboratory of Lavoisier”. I heard that guy was a total jerk!

There are some cool geometric models by Théodore Olivier,

The original Focault pendulum, formally installed at the Pantheon, was/is at this museum, but I think there was a recent scandal where the cable broke. When I was there it was going strong.

They had a sliced-in-half car but you couldn’t sit in it for a picture, shame. No visit to this museum would be complete without a shot of their beautifully suspended Ornithopter.

4) Palace of Discovery (Palais de la Découverte)

Science in an ancient French palace, now that’s what I’m talking about! When you walk  in you’re greeted with an amazing open-space and ceiling. This place has a planetarium but I was nervous my French would be too fail-ridden to get my money’s worth. The place itself was slightly underwhelming for an English-speaker.

The real draw of this place seemed to be the hands-on science demonstrations for kids. Check out the mathematics room, chemistry demonstration, and unfortunately deserted electricity stage!

This giant T-rex bust would look great over my fireplace, but I’ll guess it makes sense in a museum too. This place also has a decent section on reproduction to school young ones about the birds and the bees.

5) Centre Pompidou

Certainly not a science museum, but this modern art museum had it’s share of aesthetically pleasing geometric constructions, not to mention a few Picasso’s along the way. Here is Antoine Pevsner’s “Construction spatiale aux 3ème et 4ème dimensions”.

And some other optical modern art!

As a summary I’d definitely recommend making the big trip to Northern Paris for “Cité des Sciences et de l’Industrie” and a nice leisurely stroll through Musee d’Histoire Naturelle. I’d suggest that the other two are totally optional.

Other things to do include visiting the famous lab of Marie Curie at the “Curie Museum“. If you’re visiting Paris before April 3rd, 2011 you can also stop by at the Palace of Versailles for their “Science & Curiosities at the Court of Versailles” exhibit.

On top of your normal museum visitations, you can also go on a morbid scientist grave tour. Louis Pasteur is buried at the Pasteur Institute, the Curies and Paul Langevin (who’s work is most related to my research) are at the Pantheon, and numerous scientists are buried at the Père Lachaise and Montparnasse Cemeteries.

One of a kind scientific souvenirs, you’ll want to visit Les puces de Paris. A great place to find complete skeletons, old phrenological brain models, brass telescopes, and old chemistry bottles (have those been autoclaved?).

Lastly, not very sciencey, but the Hunting Museum (Maison de la chasse et de la nature) I totally recommend to any visitors of Paris. It’s pretty small, but it’s completely bizarre. Where else can you get a picture at the base of a narwhals tusk at a ceiling covered with goat antlers. I won’t spoil all the sights (read: the owl room), but here’s a few teaser photos I took,

So if you’re a scientist or science fan visiting Paris, let me know in the comments and I’ll answer everything you want to know.

Awkward Science Stock Photography

Magnet Face

Most of my blogging time is dedicated to my hit image blog Fresh Photons these days, but I recently came across this great image above on a blog called Awkward Stock Photos. Whimsically, I decided to see what other stock images were available under the tag “Experiment” and I basically laughed my way through 70 pages of results. To be honest, most of them aren’t so bad, but here are some of my personal favourites,

The copper sulfate guzzler,

Chemical Sniffer

The movie villain chemist,

Movie Villain Chemist

90% of the pictures are of scientists squinting at beakers. Ah, so this is how one does science!,

Bored Scientist

Confused Scientist

Shocked Scientist

Shocked Scientist Again

Scared Scientist

Science is serious business,

Serious Scientist

Wait, what?

Business Man Science

Oh, I guess it’s a standard chemical reaction,


Just an alien fetus,

Alien Fetus Science

It’s about time some scientist extracted the essence of love,

Love Scientist

Love extraction failed,

Failed Scientist

On the contrary, this one is titled “successful experiment”. Great Job!,

Successful Experiment

Who let sexy tomb-raider into the lab?,

Tomb Raider Scientist

The ‘dot’ in adds some extra flair to this one,

Sexy Chemist with Bad Teeth

Good old topless chemistry,

Topless Male Chemist

Topless Chemistry

At least wear a bra!,

Topless Chemist

Much better,

Inappropriate Scientist

Girls Gone Wild in the lab y’all,

Alcoholic Scientist

Lensless safety goggles are also all the rage, I hear,

Lensless Goggles

Fun with needles,

Death Scientist

No gloves, but at least he’s focussed on the task at hand,

Careful Scientist

“Ok, Now try being a more menacing scientist”,

Menacing Scientist

This looks bad…,

Not Sure Scientist

Oh nevermind, it’s all good,

Happy Scientist

Blatant animal testing (via interrogation), “ANSWER US, DID YOU LAY THESE EGGS?!”,


Here’s a lady using a multimeter to clean the crap out of her keyboard,

Computer Cleaning

Cheers to good science and a romance-free workplace,


2013 Edit: I compiled a sequel to this post if you’re interested in more exciting science stock photography!

Three Aspects of a Great Fluid Simulation

Google Summer of Code Fluid in Step

GSOC has finally come to a close. It seems like yesterday when I was blogging on here, young and foolish about the complexity of my project. What you see above are my modest results. Pretty as it might look, this fluid is most definitely code-name O(n^2), and that’s not really a good thing! Let me explain the name in the three major aspects of my project.


It’s one thing to implement a smoothed particle hydrodynamics paper in STEP, that was basically done by the midterm, but how can you make it… well, physical? In an SPH system, there are several parameters that must be adjusted to achieve that. Namely, the temperature dependent gas constant, the rest density, the smoothing kernel length, the surface tension coefficient, the viscosity constant, and the universal bounciness of object-object interactions. With the exception of the surface tension and bounciness, I was able to determine a number of these constants for a working fluid using trial and error.

Most significant for computation was the adjustment of the smoothing kernel length. This is the radius around each fluid particle at which the effects of the particle are spread out. According to the SPH algorithm I implemented, at each time step we compute the pressures at each fluid particle based on the density of all fluid particles within the smoothing kernel radius. That being said, at each time-step I made O(n^2) distance to fluid particle comparisons, and in the limit of an infinitely large smoothing kernel there would be O(n^2) arithmetic operations. Among some other issues I will discuss, I found this to be a limiting factor for the number of fluid particles I could use. 

Unfortunately, this prevented me from testing an important aspect of fluids, surface tension. By adding some additional fake surface tension forces outlined in Muller 2003, my fluid would be calmer and perhaps even support the weight of a boat at it’s surface. Additionally, the addition of bounciness would allow gravity to act realistically on the fluid and have density collect at the bottom of a jar.

So, how can one improve on this brute-force enumeration of all pairs of particles? My expert mentor Vladimir suggested a new data structure might be the best approach. Since both fluids and gases benefit from a large number of particles, it would be advantageous to implement a Axis-Aligned Bounding Box data structure. Not only would this help for collision detection between any Step objects but this would provide a way to only calculate pressure forces for neighboring fluid particles. This works because we store a sorted list of boxes about both our X an Y axes and keep track of box overlaps. Unfortunately, my mentor and I did not have enough time to implement this complex rehaul to StepCore.


Step is about education. For educational purposes, at the very least, it would be great to be able to know the average density and pressure within a region of the fluid. Despite my fluid being somewhat artificial and hacked together with strange internal values, I managed to achieve this. However, the computational complexity is, once again, not pretty. 

The calculation of pressure at a particle point in the World was already used for the dynamics of the fluid. I merely had to generalize it for discrete area elements of Step’s “measurement rectangle”. By moving the rectangle and resizing it within the Fluid, each time-step I am sliced the area into a grid, calculated the pressure and density at the center of each area, and then added it all together.

The trouble with that is probably quite clear. If you have a very large measurement rectangle you may want a widely spaced grid and for a small measurement rectangle you may want a closely spaced grid. A grid dependent on the size of the rectangle and the smoothing kernel radius is also a difficult value to fine tune.

In the future,  It would be ideal for the user to be able to select the precision of the pressure and density calculation at their own discretion, and have the variance values adjust accordingly. I was unable to implement variance calculations for these measurements, but that may also be an expensive calculation!


Finally, the Pièce de résistance. The jaw-dropping visuals that all fluids deserve. As you can see above, there’s lots of room for improvement. Visualization can be done in two ways. Muller 2003, the paper I was following for this SPH implementation, suggests a fancy isosurface calculation. That is, determine the normal to the fluid particle density field at every point. If this value is greater than some threshold, it’s safe to say it’s a surface particle and it could be used to draw a sexy looking surface. 

However, with a deadline looming, my mentor suggested a simpler approach. I would simply calculate density at each point in a grid and then paint a particle there with opacity based on the density. As seen above, these opacity calculations weren’t quite calibrated, since we don’t see much variation in blue except at the edges of the fluid. 

I had a problem though. Where should I “draw the line” for drawing the dots? I can’t very well calculate the density at each point in the observable screen area. It would take forever to get a smooth fluid. The solution is to calculate the minimum bounding box for the fluid and use a cut-off value in-case one fluid particle flies away off the screen. This ended up being quite challenging for some reason, so I decided to only render the fluid within the “measurement rectangle”.

I had an issue with converting between coordinate systems that still remains unsolved. I needed to draw my fluid about the origin of the WorldScene or else my fluid would render in the incorrect location. This is likely due to a simple mapping problem that I intend to figure out soon.


So, what’s next for Fluids, Step, and Me? The realism, measurement, and visualization issues outlined above will continue to be worked on by Vladimir and I. After some of the fundamental problems are addressed, I forsee a very liquidy Step in the near future. Me? I’m starting a MSc. in Physics at University of Waterloo this Fall, but I had a lot of fun on this project and hope to continue making Step a richly featured open-source physics simulator!

Fluid Integration into the Step GUI


It’s about time I popped this bubble of silence.

I’ve been working hard on two programming projects this summer, namely my Google Summer of Code project and a fancy upgrade to some molecular dynamics software. In my previous posts, I looked at the back-end of Step and some of the mathematics of smoothed particle hydrodynamics. There are still plenty of outstanding problems in those areas but I’ll address those gradually in the coming weeks. For this post, I’ll give an overview of all the GUI/user interactivity stuff that i’ll have to tackle on my quest to implement fast fluid simulation.

I’ll just enumerate the ways the user can interact with a fluid and trace through exactly what is going on behind the scenes. I know, KDevelop/IDEs are pretty fancy, but I’m oldschool so I tend to just follow the code execution manually. It’s kind of like a grep-based treasure hunt! So, I’ll just give some running commentary with bonus screenshots from the current Gas classes. I doubt many readers of this blog will find this interesting, but my dream is that this post series may someday be useful for a new Step developer =P 

Oh, if you’re a Qt newbie just remember that any class with a Q is a Qt class, and don’t forget your slots and signals.

Continue reading

Making Errors Work For You

Debbie Smyth Tape Measure Project

The trials and tribulations of uncertainty run deep in the hearts of experimentalists. From our biased human minds, to the imprecision of our measurement devices, to the quantum uncertainty of our universe, errors have confounded scientists for eons. Even within the safe and deterministic world of computation, inexactness is rampant.

There are two main types of numerical errors. The first of which is result of computers having a limited number of bits (32 or 64) to represent numbers. All the coolest real numbers have an infinite number of digits so we’re restricted to representing numbers that differ by machine epsilon.

The second source of numerical error pops up a lot in numerical algorithms, including those implemented in Step for solving differential equations. It would be nice if we could perform exact symbolic computation all the time, but physics can get messy, especially with errors! Almost any time we take a derivative on computer, we approximate it using a taylor series. This approximation works great if we keep an infinite number of terms but who has the time to calculate all that? Thus, our results differ from the exact answer based on where we truncate our taylor series. This truncation error combined with the floating point error mentioned above, has the potential to cause serious numerical instabilities and pain for computational scientists.

Numerical issues aside*, in true experimentalist fashion, Step allows users keep track of the propagation of user-inputted uncertainties over the course of a simulation. The mathematics behind this process is reviewed briefly here. As an example let’s look at the calculation for the uncertainty in kinetic energy in the Step’s ParticleErrors class,


double ParticleErrors::kineticEnergyVariance() const {
  return>velocity().cwise().square()) * square(particle()->mass())        + square(particle()->velocity().squaredNorm()/2) * _massVariance;


The kinetic energy (KE) of a particle is a function of both mass and velocity, where each of these variables have their respective uncertainties. In order to calculate the variance of kinetic energy we have to take the sum of d(KE)/dv multiplied by our velocityVariance and d(KE)/dm multiplied by our massVariance. The function only looks a bit confusing because we want a scalar value and we have to use a few Eigen functions to deal with 2D vectors. 

The trouble with smoothed particle hydrodynamics is that each “fluid particle” is inherently an approximation of many particles or a bulk region of fluid. Nonetheless, the calculated densities and pressures for each chunk of fluid are subject to uncertainty. As outlined by Muller et al., any scalar quantity A can be calculated by summing over all particles j with some smoothing kernel defined by W:

Discrete Equation for Scalar Quantity in SPH

Given the user-inputted uncertainty in particle mass m and whatever calculated uncertainty we have for our quantites A and p, this formula can be used with the method above to calculate uncertainty in the newly calculated quantity A. These calculations will be coded in the FluidParticleError class outlined below. Note the addition of the member variables for densityVariance and pressureVariance. These values could be calculated on the fly, but in doing there would be a large amount of calculations due to the summation of all nearby particle errors. Later in this project this will also include Viscosity error calculations that depend on the velocity of nearby particles using the same equation above. 

Step Fluids UML Errors 1

It’s a week into my GSOC project and I still have lots of work to do. Next post will be a bit more software development oriented, as I’ll look more at the Qt GUI and how it connects with the numerical back-end of Step. Expect a post shortly!

*You can adjust the precision of your Solver in the properties dialog box of Step!

Building a Fluid One Chunk At A Time

Fluid Simulation Woodward Minnesota

I went to the Sharcnet GPU and Cell Computing Symposium at my university last week. One of the keynote speakers, Dr. Paul Woodward, pretty much blew my weak and feeble mind. He used Roadrunner, a.k.a. the faster supercomputer in the world, to compute some impressive fluid dynamics. You know your research group is on the right track when you have a Wallpapers section on your web site.

Back on planet earth, us computational plebs don’t have such luxurious resources at our finger tips. To start with, you don’t have a lot of options when you feel like simulating fluids on a computer. Things get even more depressing when you want fluid flow computed in real time. In video games, or maybe just in old video games, accurate water simulation ends up being avoided all together with some elaborate ruse to keep computation costs down. Why do fluids have such a bad rep? To paraphrase Wikipedia: “We suck at solving systems of non-linear partial differential equations, here’s a million dollars if you figure it out, good luck lol”.

I find this whole water simulation extra-depressing because the universe computes the solution to these problems instantly and literally rubs it in our face whenever the wind blows (via turbulence). Just imagine with me what life would be like if we had an exact solution for fluid flow. Picture weather forecasts that actually forecast, reliable message-in-a-bottle delivery using ocean currents, and aerodynamic everything.

Wow, nice introduction. This post is actually about my fluid simulation project for Google Summer of Code. To achieve real-time fluid simulation in Step, I intend to follow the Smoothed Particle Hydrodynamics (SPH) algorithm outlined by Muller et al. in “Particle-Based Fluid Simulation for Interactive Applications“. This method works by breaking up a large fluid body into discrete chunks and using these chunks to create smoothed out fields. In fluids, the stuff we care about are pressure, density, and velocity fields. SPH is just a fancy way of figuring out the forces that act on your fluid by taking these fields into account.

Without going into all the mathematical detail presented by Muller et al., we can begin to define our fluid particles class in StepCore, the mathematical back-end of Step. Note that all of this is pretty fuzzy right now since I haven’t started coding anything. Many important properties of FluidParticle already exist the base class Particle in Step as depicted below. Nothing too special here, just get and set methods for the particle member variables. One thing to note is that FluidParticle has a specific radius that defines the core radius of each particle. However, at this point it is unlikely that the radius of each particle will vary. I’ll talk about Errors in a separate post also.


Now that the FluidParticle is defined we can look at the collective group, the Fluid. All “bodies and forces” in Step are derived from the root class Item. A Fluid is simply a group of FluidParticle items in a handy “Item Group”. The main purpose of this group is to extract macroscopic features of our fluid particles that exists within a rectangle drawn in the GUI.

This rectangular data inquiry box was designed for use with the Gas class where determining the number of particles, the kinetic energy, and the temperature are meaningful quantities for statistical mechanics. However, I’m not really sure how well the physics of statistical mechanics translates to the mathematics of a fluid. For instance, I may know the velocities of all my fluid chunks but is it correct to use these velocities to determine the so-called “temperature” of my fluid? I suppose so… but I have to do a bit more research.

Nonetheless, for now I’ll just use the rectPressure(), rectVelocity() and rectDensity(). I’d like to be able to use these methods to not just calculate the average pressure, velocity, and density by looping over the values stored in each fluid chunk but averaging over the entire field created by the fluid chunks. I’m not sure how computationally demanding this calculation will be, but if I discretized space within the fluid into some sort of grid this may be possible. 

Step Fluids UML 2

So now we have a Fluid that is composed of individual FluidParticles. Where does the physics come in? We need to look at the FluidForce class for that. The purpose of the FluidForce class is to do the work of applying the inter-fluid forces to each particle in our item group by means of the calcForce method that allows you to calculate the variances based on a boolean flag. In the process of calculating the forces on each fluid particle, I’ll have to use the helper method calcPressureDensity() as well.

Step Fluids UML 3

You’ll notice that the only member variable for the fluidForce is a cutoff value and FluidErrors (which I will elaborate on later). This value represents a limiting distance for which the force contribution from a distant particle would be so small that it’s not worth calculating. In the current Gas implementation in Step, calcForce requires O(n^2) comparisons, as we have to loop through all pairs of particles to determine if they have a distance less than the cutoff value. As mentioned briefly in Muller et al., a potential speed-up over this approach might be to place our fluid particles on a grid and only calculate the force contribution from particles attached to neighboring grid cells to our particle of interest. I’ll address performance issues later in my project.

I’ve already overlooked a few critical issues that may require the modification of these classes. A fundamental characteristic of a fluid is viscosity, which is defined as resistance of a fluid to shear and stress forces. Obviously, my GSOC project will not be complete unless I can simulate some delicious sticky honey. At this stage, for simplicity, I’ll probably just hard code some viscosity values. The second critical issue will be collisions. My mentor and I both agree that collision handling may get tricky. If you’ve ever been stuck in a wall or a tree when playing a video game you’ll know what I mean.

I’ll address that problem eventually but next I’ll briefly discuss the Error classes associated with the fluid objects. The calculation of errors/variances is one of the cool features that makes Step unique!

After that, I’ll explore the Qt and GUI side of Step. I’ll connect the classes I’ve defined above to user interactions. Once I do that, things should get a lot clearer in terms of how the FluidForce, Fluid and FluidParticles work in conjunction with the World.

Learning Science through Comic Books, A List

Richard Feynman, Safecracker

Reading textbooks gives me scary flashbacks of my days as an undergraduate (about 2 weeks ago). I did a little research on the internet and supposedly there are these things kids are calling “light reads” that make reading fun again. Comic books/Graphic novels are the pinnacle of fun, so I put together a quick list of illustrated reading to salivate the mind in absence of raw textbook facts.

1. Larry Gonick’s The Cartoon Guides

Cartoon Guide to Physics

First order of business, the master of non-fiction science comics: Larry Gonick. He’s the author of such masterpieces as The Cartoon Guide to Physics, The Cartoon Guide to Chemistry, The Cartoon Guide to Genetics, and The Cartoon Guide to the Environment. I own the Physics one so I can testify that these books have high educational merit!

2. Jay Hosler’s The Sandwalk Adventures

The Sandwalk Adventures

Jay Hosler is on fire with biology themed comics. The Sandwalk Adventures is a tale of two mites living on a eyebrow follicle of Charles Darwin. Comics Worth Reading has a nice review. Also check out Clan Apis, Hosler’s comic about honey-bee life and insect society.

3. Jim Ottaviani’s Two-Fisted Science/Dignifying Science/Suspended in Language

Two-Fisted Science

Two-Fisted Science, a Xeric Award-winning and Eisner nominated original trade paperback, features true stories from the history of science. Some are serious, some are humorous, and most are a bit of both. Scientists highlighted include physicists Richard Feynman, Galileo, Niels Bohr, and Werner Heisenberg, but you’ll find a cosmologist and some mathematicians inside as well.” -GT Labs

Jim Ottaviani is making big moves in the science comics game. Dignifying Science illustrates the stories of a number of famous female scientists like Emmy Noether, Lisa Meitner, Marie Curie, and Rosalind Franklin. Recently, Jim collaborated with Jay Hosler (see above) on Suspended in Language, a biography of Neils Bohr. If you’re in the area, you can catch Jim at the Toronto Comic Arts Festival and get your comics signed!

4. Capstone Press’ Max Axiom/Inventions and Discovery Series

Max Axiom

Capstone Press brings forth a veritable treasure trove of K-12 science teaching material in graphic novel format. They star Max Axiom, your standard african american superhero scientist in action-packed adventures like The Shocking World of Electricity, The Attractive Story of Magnetism, Investigating the Scientific Method, and Understanding Global Warming. Capstone Press also publishes a bunch of comics about scientists like Isaac Newton, Charles Darwin, Louis Pasteur, and Jonas Salk. Google Books has a teaser of the Photosynthesis with Max Axiom volume.

5. Apostolos Doxiadis’ Logicomix


Logicomix is a “brilliantly illustrated tale of reason, insanity, love and truth recounts the story of Bertrand Russell‘s life”. This novel comes off as one of the more mature reads of this list, so I’m pretty excited for this comic to be released later this year.

6. Matt Fraction’s The Five Fists of Science

5 Fists of Science

Okay, you might not learn a lot from The Five Fists of Science, but who can argue against a steam-punk comic featuring Nikola Tesla and Mark Twain fighting against an evil Thomas Edison?

Summer of Fast Fluid and Gas Simulation

Gas Simulation in KDE Step

Step is a 2D open-source physics simulator that was recently added to the KDE Education project.

Vladimir, the original developer and former Google Summer of Code student, posted up a few ideas to improve Step for this years Google Summer of Code. He included one about improving fluid simulation and, being a computational physicist (TM), I decided to go for it. I wrote up a fancy proposal a few weeks ago and I’m happy to say that it was accepted.

A lot of GSOC projects are strictly geeking out behind-the-scenes, but this one is fun, visual, and physics-based. It’s perfect for me.

Compared to Vladimir’s original summer of code, spent designing Step in it’s entirety, my proposal seems like a pretty modest addition. However, fluids are traditionally a very messy subject in the world of physics simulators. If you aren’t convinced, read this thread on the Box2D forums from only a month ago. To quote ElectroDruid on page 9:

“I gave up with having the particles be handled by Box2D, and one of the main reasons was because of the amount of pairs generated. You can up the maximum limits, but eventually you just run out of storage space for the numbers of pairs that can be needed in certain cases. Box2D is great for rigid bodies, but for fluids where you need a lot of particles which interact with each other in close proximity all the time, it’s easy to push the limits to breaking point.”

I’m sure I will have to deal with similar problems encountered in that thread, but I’m optimistic that such issues can be resolved. Throughout the summer I’ll be blogging my progress on the project here, so stay tuned.

The Merits of a Formula Sheet

Formula Sheet for Condensed Matter Physics

Click the thumbnail above to catch a glimpse of a single-sided slice of beauty. I cranked it out for my condensed matter physics final tomorrow morning.

Arguably a waste of potential “comprehension-intensive” study time, preparing an excessive formula sheet always puts me at ease (at least until moments before the exam when classmates are chatting about some obscure textbook chapters).

I usually insert inspirational messages into my formula sheets just in case I need that bonus motivation, but this time… see if you can find Waldo!

P.S., I can’t wait until I can take care of this blog again after my finals.