CODE | PHY1135 | ||||||||
TITLE | Introduction to Computational Physics | ||||||||
UM LEVEL | 01 - Year 1 in Modular Undergraduate Course | ||||||||
MQF LEVEL | 5 | ||||||||
ECTS CREDITS | 6 | ||||||||
DEPARTMENT | Physics | ||||||||
DESCRIPTION | - Basic computer architecture, binary number system, operating systems; - Introduction to Python, interactive and batch use of Python; - Python data types (basic, lists, tuples, dictionaries, sets); - Control flow (conditionals, loops); - Functions and recursion; - File processing; - Numerical python and plotting (numpy and matplotlib). The theoretical part of the study-unit will include: - Determining the roots of an equation using Bisection method, Newton-Raphson and the direct iteration method; - Solving systems of linear equations using Gaussian elimination, Jacobi iteration and Gauss-Seidel iteration; - Numerical integration using Euler’s Method, the trapezoidal rule and Simpson’s rule; - Numerical differentiation using backward, forward and central differences; formulae for the first and second derivatives; - Solving first and second order differential equations using simple finite difference techniques; introduction to Runge-Kutta methods; - Introduction to linear regression. Study-unit Aims: The unit seeks to provide an introduction to Python as a programming language and will also provide students with mathematical tools to solve analytical problems using numerical methods. It will provide students with the necessary background knowledge to understand and appreciate advanced applications of numerical and computational methods. Learning Outcomes: 1. Knowledge & Understanding By the end of the study-unit the student will be able to: - explain the basic computer architecture, use the logic of writing and debugging a computer program and apply this knowledge to solve scientific problems using numerical methods. 2. Skills By the end of the study-unit the student will be able to: - write and debug basic programs in Python; - apply acquired programming skills to perform data analysis and visualize results; - determine the roots of an equation using Bisection method, Newton-Raphson and the direct iteration method; - solve physical systems described by simple differential equations using basic finite difference techniques, both by hand and by writing a program to do so on a computer. Main Text/s and any supplementary readings: Textbook: - Matrelli, Alex. "Python cookbook", 2nd edition, O'Reily, 2005, ISBN 0-596-00797-3 Reference: - Vermon L. Ceder. "The Quick Python Book", 2nd edition, Manning Publications Co., 2010, ISBN 9781935182207 - Beazley, David M. "Python essential reference", 4th edition, Addison-Wesley, 2009, ISBN 9780672329784 - Python documentation - Gerald, C.F. and Wheatley, P.O., Applied Numerical Analysis, 7 edition, Pearson Education |
||||||||
ADDITIONAL NOTES | Pre-Requisite qualifications: Intermediate Level Mathematics | ||||||||
STUDY-UNIT TYPE | Lecture, Practicum & Tutorial | ||||||||
METHOD OF ASSESSMENT |
|
||||||||
LECTURER/S | Alessio Magro Louis Zammit Mangion |
||||||||
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints. Units not attracting a sufficient number of registrations may be withdrawn without notice. It should be noted that all the information in the description above applies to study-units available during the academic year 2023/4. It may be subject to change in subsequent years. |