• Level of Education

    Bachelor's degree (BAC +3)

  • ECTS

    3 credits

  • Training Structure

    College of Sciences

  • Number of hours

    27h

Description

This course unit covers a review and in-depth study of programming techniques, as well as an introduction to computational physics. We will begin with a review of procedural programming using Python 3. We will then introduce the use of numerical methods relevant to simulation and the solution of physics problems.

Read more

Objectives

Learn advanced programming with Python and apply this knowledge to scientific computing. Understand and implement common numerical methods for modeling physical problems based on solving linear algebra problems or ordinary differential equations.

Read more

Class Hours

  • Programming for Physics - LabLaboratory Work3:00 p.m.
  • Physics Curriculum - LectureLecture12 hours

Mandatory Prerequisites

Basic programming skills (an imperative language, ideally Python); proficiency in vector and matrix calculus and mathematical analysis tools (limits, differentiation, integrals, differential equations).

Recommended prerequisites*: Proficiency in Python 3 and its modules, particularly NumPy. Undergraduate-level courses in programming and Python (imperative programming); familiarity with a Linux system

Read more

Knowledge Assessment

Course Outline

Python Review and Additional Information (statements, variables and data types, control structures, etc.)

  • Introduction to Algorithms: Finding the Zeros of a Function, Sorting a List
  • Concepts of object-oriented programming (concepts of classes, objects, attributes, etc.)
  • NumPy and matplotlib libraries (array manipulation, data visualization)
  • Methods in Numerical Linear Algebra (Gauss's algorithm, LU decomposition, QR algorithm)
  • The SciPy Library, the Jupyter Interface, and an Example Application in Computational Physics
  • Methods for Solving Ordinary Differential Equations (Euler’s method, Runge-Kutta, etc.)
Read more

Additional Information

CM: 12:00 p.m.

Practical Training: 3:00 p.m.

Read more