Skip to main page content
  1. Course Search
  2. PHYSICS 20

Introduction to Computational Physics
PHYSICS 20

Course Information

Description

This course is a systematic introduction to computing with python and jupyter notebooks designed for concentrators in physics and related fields. The course consists of two parts:  1. Basics: essential elements of computing, including types of variables, lists, arrays, iteration and control flow (for, while loops, if statement), definition of functions, recursion, file handling and simple plots, plotting and visualization tools in higher dimensions. 2. Applications: development of computational skills for problem solving, including numerical and machine learning methods, and their use in deterministic and stochastic approaches; examples include numerical differentiation and integration, fitting of curves and error analysis, solution of simple differential equations, random numbers and stochastic sampling, and advanced methods like neural networks and simulated annealing for optimization in complex systems.  Course work consists of attending lectures and labs, weekly homework assignments, a mid-term project and a final project; while work is developed collaboratively, coding assignments are submitted individually.

School Faculty of Arts & Sciences
Credits 4
Cross Reg

Available for Harvard Cross Registration

Department Physics
Course Component Lecture
Subject Physics
Grading Basis FAS Letter Graded
General Education N/A
Quantitative Reasoning with Data N/A
Divisional Distribution Science & Engineering & Applied Science
Course Level Primarily for Undergraduate Students