Welcome to Pathways in STEM's Cosmology Workshop! Here, we will explore actual data from recent missions that explore the Cosmic Microwave Background. We hope to teach you how to plot and extract meaningful information from a data set, just like a scientist. 

First, what is the Cosmic Microwave Background? It was accidentally discovered by Arno Penzias and Robert Wilson in 1964 at Bell Labs. Basically, they found that there was a nearly uniform radiation background that peaked at about 160 GHz on the EM Spectrum (in the MicroWave Region) that came from everywhere in space. It was pretty unusual. After decades of analysis and experiments, scientists now know that the CMB is evidence that the universe was once very dense and very hot and has since expanded (the Big Bang). 

Join us in understanding this cosmologically significant radiation! See below for links that explain the significance of the CMB. 

The workshop will start June 15th. The content is all self-paced and you can browse at your leisure. However, we will avaible via email during the length of Pathways in STEM (June 1st - July 31st) to answer any questions you might have about the content.

We assume that you are comfortable with basic geometry and algebra. Solving equations is central to doing good science (especially phyiscs!). The workshop is built for students who have not had exposure to calculus yet, but, since we know some students will have some calculus background, we might add additional modules that require caluclus. We will write it down when an optional module assumes calculus knowledge. 

There is coding in this workshop, but all the commands you need to know will be provided for you. However, we encourge that you explore Python 3.x before the workshop begins to get a feel for the language. We know that some of you are already familiar with programming, while, for others, this will be your first time programming. This workshop is designed to accomodate all levels of programming experience! There will be more advanced modules for folks who are familar and want to apply thier skills to do more. 

Before the workshop goes live, make sure that you have a working version of Python 3.x installed on your computer. You will also need the SciPy, NumPy, and Matplotlib libraries. Contact us at ostemboard@colorado.edu if you need help. 

Also, please do not forget to register for Pathways in STEM. Registration helps us know how many people are intersted in participating in this workshop. 

Installing Python 3.x

Python 3 is a freely avaible and easy to learn programming language. It is also robust enough and popular for many science applications. If you are new to programming, Anaconda provides an installer with a GUI. Make sure you install the Spyder program as well as the SciPy, NumPy, and Matplotlib libraries when prompted. You can also download Python 3 off of the Python website but it is up to you to compile. The newest version of Python is Python 3.8, but any verision greater than Python 3.0 will do just fine. 

Writing Code in Python 3

Many Python tutorials start by introducing some complicated stuff about the structure of the laguange. While all that is really fascinating, it is not necessary to understand what is going on in the workshop. If you installed the Anaconda distribution, go ahead and launch Spyder. Spyder is a "integrated development enviroment" for Python, which is just a fancy way of saying that it is a program that will run your code for you and highlight your code in helpful ways. One window in Sypder will have line numbers on the left hand side. That is where you will write your code. Another window, which will generally say "Console", is where the output from your code will go. The green arrow on the toolbar will run your code for you. 

Keep in mind: there are two ways to get the computer to ignore things you write in your code. One is to put a # in front of the line. Another is to wrap your line (or multiple lines) with triple quotations ''' text '''. You will notice that Spyder will color this text grey or green, respectively. When you are passing an argument to a function, however, the "" means that the content is a string. Don't worry about what a string means just yet, but the computer does not ignore it. 

In order to start, you can browse some intro tutorials on the Python website.  The classic first line to learning any programing language is to type print("Hello, World") and press the green button. In the second window, you will see that your computer prints Hello, World. In this case, "Hello, World" is an example of a string. Here, the quotes state that you are passing a line of text as an argument  in your function  like function(argument). A string is a data type. Other important data types are integers and floats. They are both numbers, but an integer is just a number like 1, 4, 123234, or -3 while a float can have numbers after the decimal point (i.e. 3.14). You can also write print(3) or print(3.14). No need to write the "" here; if you do, the computer will understand "3" as a line of text instead of a number. That is not very useful if we need to add numbers! 

CMB Links

Want to know more about the CMB before this workshop begins? Browse these websites to learn more! These are only for your enjoyment; they are not required to know for the workshop. 

The Cosmic Microwave Background

Planck and the cosmic microwave background 

We are going to use NASA's LAMBDA page for data in this workshop.

There isn't too much educational material on LABDA and they use a lot of techincal jargon so do not worry at this point if that website is confusing.