Physics 444, Fall 2019

Course Information:

Prof. Matthew Buckley (office: Serin W329,

Lectures: Monday/Thursdays 10:20-11:40, ARC 107 (Busch)

Office Hours: Wednesdays 3:00-4:00 and TBA (Serin W329)

Course Description

This course is an advanced undergraduate-level study of the origins and evolution of the Universe. We will cover the 13.8 billion year history of our Cosmos, as we understand it today. The course covers the expansion of the Universe, our understanding of that expansion in the context of General Relativity, the energy content of the Universe, and epochs of particularly interesting and important physics, including the formation of the Cosmic Microwave Background, Big Bang Nucleosynthesis, the formation of large-scale structure, and cosmic inflation. 

The textbook for the course is Introduction to Cosmology by Barbara Ryden (2nd Edition, 2003, Addison Wesley ISBN 0-8053-8912-1). Be aware that this is a newer edition than used in some previous years of Physics 444.

The Canvas website for the class is here, where enrolled students can find and submit homework.


  • Grades will be based on weekly problem sets (70% of final grade), an in-class midterm (15%), and a final exam (15%).

  • Weekly homework will be assigned on Thursday in class and due on the following Thursday in class.

  • Collaboration with other students is strongly encouraged, but your write-up of the solutions must be your own. You must write down the names of your collaborators on your write-up. You must also cite any external sources you use (other than the textbook). You may not refer to notes, assignments, or solutions from previous years of Physics 444.

  • Always show your work. You will not receive full credit if you do not show your work. I will never look for a specific answer. Rather, I am always looking for the reasoning behind the answer.

  • Some homework problems will ask you to use a numeric equation solver, and plot your results. See the bottom of this page for a discussion of possible programs to use and some example documents to get you started. If the homework asks for numeric solutions, you must submit the code you used on Canvas. The code must include the names of all people you worked with.

  • In general, late homework will automatically receive a maximum of half points. Seek arrangement with me at least 24 hours in advance if you think you have a legitimate excuse for late work. After I have graded and handed back homework, I will not accept that homework anymore.

Student Accommodations

If you require special accommodation in the course, please speak with me as early in the semester as possible. Visit this link for information on Rutgers policies.

Course Schedule

  • Week 1 (Sept. 5,9,12). Chapters 1 & 2. Introduction, Hubble's Law

  • Week 2 (Sept. 16,19) Chapter 3. Relativity, Space-time Metric

  • Week 3 (Sept. 23,26) Chapter 4. Friedmann, Fluid, Acceleration Equations

  • Week 4 (Sept. 30, Oct. 3) Chapter 5. Single-Component Universes

  • Week 5 (Oct. 7,10) Chapter 5 & 6. Single-Component Universes. Multiple Component Universes

  • Week 6 (Oct. 14,17) Chapter 6 & 7. The Benchmark Model. Cosmological Distances

  • Week 7 (Oct. 21,24) Chapter 8. Dark Matter

  • Week 8 (Oct. 28,31) In Class Midterm (Oct. 31)

  • Week 9 (Nov. 4,7) Chapter 9. The Cosmic Microwave Background

  • Week 10 (Nov. 11,14) Chapter 9 & 10. The Cosmic Microwave Background. Big Bang Nucleosynthesis

  • Week 11 (Nov. 18,21) Chapter 10 & 11. Big Bang Nucleosynthesis. Inflation

  • Thanksgiving (No Class)

  • Week 12 (Dec. 2,5) Chapter 11 & 12. Inflation. Structure Formation

  • Week 13 (Dec. 9) Chapter 12. Structure Formation

  • Week 14 (Dec. 12) The Unknown. Last Day of Class

Numeric Computation

This course will ask students to numerically computer properties of the Universe in the homework.

There are many tools available to allow one to solve differential equations and other numeric manipulations. I will recommend two of them (these are the two I'm most familiar with, so these are the two I will provide support for in office hours). These are Mathematica (current version is 12) and Python3 (Python2.7 is very similar, but has some annoying non-compatibilities).

Mathematica is an extremely powerful mathematical tool. It is very flexible, very useful, and individual licenses are very expensive. 


As Rutgers students, you should be able to download a free Mathematica license from the Rutgers network. Keep in mind it will require yearly renewal, so when you leave Rutgers, you will not have necessarily have Mathematica available. If you continue in academia, or work in a job that requires it, you will have to get a license elsewhere.

Python is a programming language with many open-source free packages that allow sophisticated mathematical manipulations. In particular the packages NumPy and SciPy are incredibly useful for scientists working with statistics and mathematical problems. You will have to download and install these, along with Python itself. It should be available on all operating systems. In recent years, a useful manager for Python and associated packages is the Anaconda (or Miniconda) management system. It should be available for all operating systems. Using Conda will allow you to use Jupyter notebooks, which allow for interactive python coding (i.e., you can execute code line by line, see if it works, and edit and update as you go).

Additionally, to make plots, I recommend the MatPlotLib package.

The learning curve for Python is probably a bit steeper than for Mathematica, especially if you are not familiar with programming languages. However, it will be available to you where ever you go, and can do many tasks with greater speed and flexibility than Mathematica.

This is not a course on programming, and I will not be asking you to do extremely complicated programming tasks. However, modern science is increasingly computational, and these tools will be very useful. If you are thinking of a career in science or computing, I would recommend taking the plunge and learning Python (I would especially recommend Jupyter notebooks for ease-of-use).

An example documents for Mathematica is here, and covers most of the type of tasks you will be asked to do in the course. The equivalent for Python is here. A Jupyter notebook (identical in most respects to the Python code, but needs to be opened in Jupyter) is here.