Welcome to Phy280!

The Foundations of Scientific Computing course is meant to introduce you to some basic concepts of scientific computing using the Python programming language. Python is a tool that is used extensively in the science and engineering fields, as well as data science, computer science, web development fields, to name a few. It is assumed that you do not have prior experience with python or programming in general, but if you do, you should expect to build on these existing skill sets.

Each lesson will be delivered in a tutorial format so that you can follow along at the pace that best suits you. Then, each lesson will be accompanied by an exercise set so that you can test out your new understanding.

The goal of this course is not to make you expert computer programmers in one semester. Instead, you should learn that computing is an incredibly powerful and necessary tool, and, you will develop a basic set of skills that will be useful in facilitating learning throughout your career at EMU.

Course topics by week

Materials will be divided into lessons which will be available here every Wednesday morning with the following schedule:

Lesson

Content

1

Introduction to Python; The Anaconda Distribution

2

Basic Python; Lists

3

Version control, git, and GitHub Repetitive tasks with Python; Iterables

4

Conditional statements; conditional operators

5

Debugging

6

Functions; Modules

7

Basic Plotting with Matplotlib; What makes a figure

8

Higher dimension datasets; 2D plotting with Matplotlib

9

Other plot types

10

Data processing; Intro to Pandas

11

More Pandas; Basic Data Analysis

12

Animations

Contents

Lesson content, readings and due dates are subject to change

Indices and tables