Skip to content

wbandabarragan/computational-physics-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

512 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computational Physics II

Yachay Tech University - 2026

About this repository:

This is a collection of lecture notes and programming exercises carried out as part of the Computational Physics 2 course at Yachay Tech University.

Lecturer:

Wladimir E. Banda Barragán

Course description:

This is an advanced course on object-oriented programming for physics. It is the second module of the computational physics series taught at Yachay Tech. The course focuses on introducing advanced numerical methods and simulation techniques used in physics, and provides an overview of recent progress made in several areas of scientific computing. The course includes detailed step-by-step examples of how to design software and use parallel programming to solve problems in physics. Topics range from advanced data analysis, through ordinary and partial differential equations, nonlinear dynamics and chaos, to basic thermodynamic and fluid simulations. Each section of the course includes practical examples on different areas of science and technology in which computational physics and high-performance computing have played a major role in the recent years.

Syllabus:

1. Ordinary differential equations in physics:

  • Ordinary differential equations, and initial value problems

  • Euler methods, Runge-Kutta methods, and applications

  • Boundary value problems, shooting and finite difference methods, applications

2. Software design:

  • Python classes and modules

  • Standalone modules and python packaging

  • Software design using object oriented programming

  • Timing tests and efficient coding

3. Parallel computing for physics::

  • High-performance computing (HPC) and job managers

  • Parallel computing, CPU/GPU, multiprocessing and joblib

  • The Message Passage Interface (MPI)

  • Application Programming Interfaces (APIs)

4. Partial differential equations in physics:

  • Partial differential equations, generalities and classification

  • Methods of solving partial differential equations

  • Parabolic and elliptical problems.

  • FFT methods: Heat and Poisson equations

5. Introduction to computational fluid dynamics (CFD)

  • Hyperbolic problems

  • Discretisation, meshing and conservation in CFD

  • Advection, waves and shocks

  • Introduction to hydrodynamics

6. Special topics in computational physics:

  • Applications to fluids, electromagnetism, heat flow, and quantum mechanics

  • Thermodynamic simulations and introduction to molecular dynamics

  • Nonlinear dynamics, chaotic systems, fractals and statistical growth

  • Introduction to Machine Learning

Syllabus:

The full course syllabus and programme can be found here:

Prerequisites:

Ideally, to take this class, you should have already taken and approved Computational Physics 1.

Evaluation:

Evaluation has 4 components, with weights distributed as follows:

1. Formative Evaluation (2 Homework): 20%

2. Laboratory (at least 4 Quizzes): 20%

3. 1 Midterm Exam: 30%

4. 1 Final Exam: 30%

These components consist of the following tasks:

  • Homework include long application problems.

  • Classwork are quizzes with two components: one is carried out in class, one is carried out at home.

  • Both the midterm and final exams have two components, one is carried out in class, one is carried out at home.

Weekly tutoring schedule:

If you have questions on the material, you can find me in the office:

  • On Tuesdays:

  • On Thursdays:

Class attendance:

  • As per regulations of the Vicerrector's office of Yachay Tech, you should attend 70% of the classes to pass the course.

  • To justify an absence, please submit all the necessary official documentation within 5 days.

On academic integrity:

  • Students are responsible for ensuring the academic integrity of their submitted assignments and exams.

  • Cheating in exams, plagiarising, and copying code or solutions from other students, from previous years' solutions, and/or from Internet sources are all breaches of academic integrity.

  • The above includes copying code from AI chatbots (which are neither designed nor optimised for physics and programming), e.g. copying and pasting code from chatGPT infringes academic integrity.

  • Academic misconduct will be penalised according to our University’s regulations.

Late assignment policy:

Late assignments accompanied by appropriate justification (e.g. a medical certificate, etc.) will receive no penalisation. Late assignments without appropriate justification will receive a penalisation of -1% per late hour.

Useful repositories:

About

Lecture notes and programming exercises carried out as part of the Computational Physics 2 course at Yachay Tech University.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors