Level of Education
2 years of post-secondary education
Training Structure
College of Sciences
Number of hours
36h
Description
This module provides an introduction to the process of using computer tools in physics: it involves analyzing a phenomenon, idealizing or modeling it, and then studying it on a computer. The critical interpretation of the results is also part of this process. The examples covered are chosen to relate to other current topics in the course.
Objectives
Topics to be covered: Physics of random walks and diffusion; description and solution of nonlinear dynamical systems (examples from population theory and analytical mechanics); implementation of simple algorithms to solve a physics problem; basic Python programming and code verification; presentation of scientific results in the form of synthetic graphs to compare numerical results with theoretical predictions; critical discussion of numerical results, taking into account potential sources of error
Class Hours
- Computer Physics - LabLaboratory Work9:00 p.m.
- Computer Physics - LectureLecture3:00 p.m.
Mandatory Prerequisites
basic programming concepts (an imperative language, ideally Python); vector and matrix calculus; basic concepts of mathematical analysis (limits, differentiation, integrals, differential equations).
Recommended prerequisites*: Python (imperative programming); familiarity with a Linux system
Knowledge Assessment
CCI
Course Outline
The mathematical model of a physical phenomenon, either in the form of equations or as a process to be simulated on a computer.
Numerical solution of a system of differential equations using simple algorithms (Euler vs. improved Euler, Runge-Kutta); computer implementation and verification based on physical intuition (e.g., conservation laws); the concept of numerical error; formulation of the theory in terms of dynamical systems; analysis of the linear stability of fixed points and classification; connection to matrix diagonalization (eigenvalues, eigenvectors); examples from population dynamics, the physics of oscillations, etc.
Computer simulation of a diffusive process: random walk (microscopic) vs. diffusion equation (macroscopic); statistical analysis of the random walk on a computer and comparison with theory: diffusion constant, position distribution and its evolution over time, etc.; acquisition and interpretation of a histogram; comparison with more complex models lacking simple analytical predictions (e.g., random walk with persistence, diffusion-limited fractal growth process, etc.)
A central goal is to learn the various techniques available and to critically compare the results obtained through numerical and theoretical approaches, in order to: 1) better understand the principles underlying the theoretical model, and 2) validate both approaches against each other, or to identify any limitations and weaknesses (approximations, lack of sufficient statistical data, programming errors, numerical errors, etc.).