The aim of this core physics module is to introduce students to essential computational techniques used to solve physical problems that are challenging to solve analytically. Building on prior knowledge from mathematics and physics courses such as calculus, differential equations, and classical mechanics, the module provides hands-on experience in numerical modeling, algorithm development, and scientific programming using Python. Applications are drawn from areas including mechanics, electromagnetism, quantum physics, and data analysis. Emphasizing both conceptual understanding and practical implementation, the module prepares students for more advanced studies, such as Final-Year Research Projects involving data analysis or simulations. Aligned with the program’s focus on computational physics and physics-informed data science, PHY109 also equips students with valuable transferable skills—including coding, numerical reasoning, debugging, scientific visualization, and the use of computational libraries.
A. Implement numerical integration and root-finding to solve ODEs. B. Analyze accuracy, stability, and errors of algorithms in physical models. C. Develop, test, and document programs in Python to simulate and visualize physical systems. D. Apply computational methods to problems in classical mechanics, electromagnetism, and statistical physics. E. Translate physical laws and boundary conditions into discretized models suitable for numerical computation and simulation.
This module will be delivered through a combination of formal lectures and tutorials.