You
may not know, but I'm a bit of an imposter - that is, I'm actually aiming to do
a specialist in Astronomy and Physics, not a Computer Science degree of any
sort.
Although
I thoroughly enjoyed programming in high school, I thought that I would be
saying good bye to it when I entered university. At the Open House at U of T, I
asked an Astronomy grad student what jobs a physics degree could prepare me
for. She claimed there were many due to the amount of math, physics, and - you
guessed it - programming that you learn in your undergrad (which was both a
shock and a source of excitement for me!).
So,
unexpectedly, here I am, taking a Computer Science course. I wasn't sure how
useful Python would be for me until I learned that a lot of physics programming
is done in Python. In fact, modelling simple physical scenarios has and continues
to be a central part of my Physics (PHY151) tutorials. For example, we
programmed this simple simulation of a falling object, alongside an approximate
graph of its position and velocity as functions of time: (My apologies for the quality - or lack thereof!)
For
our own entertainment, we were also given the code for this program:
And
this program (one bar swinging another bar in such a way that its own movement
is affected ... or, if you see it like my brother and I do, it's a headless,
red-armed jedi swinging a lightsaber):
Pretty
cool, right? Of course, I don't know how to program the previous two, but I am
quite excited to learn how to within my undergrad years! All of these use a
special visual package in Python, which makes things much simpler to code than
you may think; a lot of what we need for such simulations is already built in
(phew!), such as the Sphere object.
Apparently,
astronomy involves a lot of programming, especially since U of T isn't sending
any students into space to do experiments. CSC148 was a recommended course for
a third year astronomy course I plan to take, and CSC206 was recommended as
well (but wasn't offered this year).
No comments:
Post a Comment