Computers and programming languages introduction
Week 1
- 2026/08/26 Wed - Lecture 1 Computers and programming languages
introduction
- class overview
- hw reports
- compiled vs interpreted languages
- how old is Python
- is Python the best for every task (speed vs ease)
- binary representation
- precision
- rounding errors
- overflow errors
- 2026/08/28 Fri - Lab 1 Basics of python
- installing python and IDE
- calculator
- help related commands
- package import
- plotting
- data import and export
- idea of array
Week 2
- 2026/08/31 Mon - Lecture 2 Program flow control
- Boolean algebra
- comparison operators
- conditional statements
- loops
- series
- 2026/09/02 Wed - Lecture 3 Functions and scripts
- organizing work in multiple files
- revisit package import
- Taylor expansion
- 2026/09/04 Fri - Lab 2 Debugging and troubleshooting
- what does it mean that program is working
- how long should program run
- test cases
- debugging with print
- step debugging
- debugging when error occurs
Week 3
- 2026/09/07 Mon - Labor day
- 2026/09/09 Wed - Lecture 4 Data reduction and fitting (AI driven)
- choosing a model
- chi square parameter
- goodness of the fit
- what fitter does under the hood
- assessing quality of fit
- uncertainty of the fit
- uncertainty of the data
- 2026/09/11 Fri - Lab 3 Data reduction and fitting practice (AI
driven)
- choosing a model
- is this model any good
- over fitting
- physicist debugging
Week 4
- 2026/09/14 Mon - Lecture 5 Root finding
- general idea of non blind root finding
- bisection method
- Newton-Raphson method
- how to calculate a function derivative
- danger of very small steps in derivative calculation
- built in methods
- root finding algorithms gotchas
- 2026/09/16 Wed - Lecture 6 Integration
- integration problem statement
- the rectangle method
- better approximation with trapezoids and parabolas (Simpson)
method
- built in methods
- 2026/09/18 Fri - Lab 4 Integrals and root finding gotchas
- the curse of high dimension
- precision vs speed
- adaptive integration idea
Week 5
- 2026/09/21 Mon - Lecture 7 Random numbers
- different distributions
- mean and standard deviation
- simple simulations with random numbers
- 2026/09/23 Wed - Lecture 8 Monte Carlo integration
- tuning random distribution for function under integral
- generating non standard distributions
- numerical integration methods error estimates
- avoiding of the curse of high dimension
- 2026/09/25 Fri - Midterm
Week 6
- 2026/09/28 Mon - Lecture 9 AI driven simulation of a colony part 1
- defining rules
- using rigid rules
- visualization
- interaction rules
- 2026/09/30 Wed - Lecture 10 AI driven simulation of a colony part 2
- Monte Carlo simulation
- probabilistic interactions
- adding extra interaction factors
- observing evolution
- 2026/10/02 Fri - Lab 5 AI driven simulation of a colony part 3
- finding averages on multiple runs
- extracting important parameters
- collective behavior
- survival of the fittest
Week 7
- 2026/10/05 Mon - Lecture 11 The method which rule them all -
Optimization, part 1 combinatorics
- combinatoric problem
- Backpack problem example
- brute force and execution time
- stopping early
- 2026/10/07 Wed - Lecture 12 Optimization part 2, smooth functions
- built ins
- optimization gotchas
- global optimum problem
- 2026/10/08 Thu - Fall break
- 2026/10/09 Fri - Fall break
- 2026/10/10 Sat - Fall break
- 2026/10/11 Sun - Fall break
Week 8
- 2026/10/12 Mon - Lecture 13 Optimization part 3, noisy problems
- Metropolis and other methods
- Where should I put my points when experimental data is
collected
- Least surprise idea
- 2026/10/14 Wed - Lecture 14 Optimization part 4, demystifying neural
networks and AI
- Universal approximation theorem
- how NN do it
- 2026/10/16 Fri - Lab 6 Optimization practice
Week 9
- 2026/10/19 Mon - Lecture 15 Solving system of linear equations
- built ins
- under defined and over defined problem
- noisy equations
- use case Single Pixel Imaging
- 2026/10/21 Wed - Lecture 16 Speeding up calculations
- pre compiling code with Numba
- parallel computing
- built ins
- examples
- 2026/10/23 Fri - Midterm
Week 10
- 2026/10/26 Mon - (Last day to withdraw) Lecture 17 Interpolation
(sometimes we do not need AI)
- filling the gaps
- polynomial fit
- nearest neighbors
- linear
- high order interpolation
- what plot function do when we ask to connect points
- 2026/10/28 Wed - Lecture 18 Ordinary differential equations part 1
- how to recognize them
- hot to set the problem
- 2026/10/30 Fri - Lab 7 practice
Week 11
- 2026/11/02 Mon - Lecture 19 Ordinary differential equations part 2
- many body interaction
- time dependent forces
- example of network interconnection graph
- 2026/11/03 Tue - Election day
- 2026/11/04 Wed - Lecture 20 Ordinary differential equations part 3
- 2026/11/06 Fri - Lab 8 practice
Week 12
- 2026/11/09 Mon - Lecture 21 Digital Fourier Transform (DFT)
- 2026/11/11 Wed - Lecture 22 DFT filters
- low pass
- high pass
- bandpass pass
- 2026/11/13 Fri - Lab 9 practice
Week 13
- 2026/11/16 Mon - Lecture 23 DFT and convolution
- 2026/11/18 Wed - Lecture 24 Quantum Computing
- 2026/11/20 Fri - Lab 10 practice
Week 14
- 2026/11/23 Mon - (Remote day) Lecture 25 Secure communication
- 2026/11/25 Wed - Thanksgiving break
- 2026/11/26 Thu - Thanksgiving break
- 2026/11/27 Fri - Thanksgiving break
- 2026/11/28 Sat - Thanksgiving break
- 2026/11/29 Sun - Thanksgiving break
Week 15
- 2026/11/30 Mon - Lab 11 Final project in class work
- 2026/12/02 Wed - Lab 12 Final project in class work
- 2026/12/04 Fri - Lab 13 Final project in class work
Week 16
- 2026/12/09 Wed - 2pm Final for 1pm section
- 2026/12/11 Fri - 9am Final for 11am section