2012-12-08

How this all got started

Hello and welcome to my blog: The Computational Artist.


My name is Mark J. Stock and I have been creating computer-based computational imagery since 1985, though only began considering myself an artist in 2000. This blog will hopefully contain a wide variety of news, information, and comments on computational art, digital art, science art, and interactive art. I hope it will be of interest not only to art-lovers but also art-makers, as I am a somewhat technical person and plan to reveal some of the behind-the-scenes work that makes it all happen.

I got started in this sort of thing in the early 1980's, when my family was fortunate enough to get a computer for Christmas. We first had a Timex Sinclair 1000, then a TI-99/4A, and shortly thereafter a Commodore 128. It was on the C128 that I began writing graphics programs and learning basic numerical methods---all in BASIC.


When I went to college, I didn't even know what an engineer did. But very shortly I knew I needed to be one. I mean, there was a college-level class called "Rocket Propulsion." How could I miss that? I soon found out that I really enjoyed simulating physical systems with computer programs. I enjoyed it so much that I took every class on the topic possible; and this was at the University of Michigan, so there were quite a few.

Of all the physics that one can simulate digitally, fluid dynamics piqued my interest the most. From these digital machines could emanate imagery of such analog-ness! How was that possible? Fortunately, the mathematics aren't that hard. Numerical methods allow conversion of the differential equations of fluid dynamics into operations that a computer can understand: +-/* and maybe a square root or exponential every once in a while. The only work left is to organize those simple operations in the proper order. I'm leaving out a few details, but we'll dig deeper in future posts.

My first job out of school was to extend a computer program that used a two-dimensional vortex sheet method to simulate the motion of gases inside of industrial boilers. The existing code could capture mixing and combustion very well, but was still only a 2D method. When debugging the 3D version, I encountered unphysical solution results---a bug in the code, no doubt. I had little success just looking at long lists of numbers dumped from the program and decided to convert the numerical representation of the flow elements into something physical. I had the program write out a list of cylinders, one for each vortex segment in the simulated system. Then I rendered that geometry data with Radiance, a program that I had recently been playing with to simulate light interreflection in architectural spaces.

This is the very first image that came back:


I knew I was hooked. Not only that, but because this differed so much from my expectations, I knew where to look for the bug, and I quickly found it. But I wasn't interested in that computer bug any more, because I caught another bug! I now had an intense desire to see how far this could go. I've spent the last 12 years using (pushing and punishing) computers in an effort to see the unseen---to explore the physics underneath nature and human existence, and to compare both with computation itself.

Stay tuned.