This course aims to solve PDEs with numerical methods and implement them in code; in our case, Python software is used. It introduces the finite-difference method, the pseudospectral method, and the linear and spectral element method in application to the 1D (or 2D) scalar wave equation. 


The mathematical derivation of the computational algorithm is accompanied by python codes embedded in Jupyter notebooks for better visualization. 


Our emphasis is to illustrate the fundamental mathematical ingredients of the various numerical methods (e.g., Taylor series, Fourier series, differentiation, function interpolation, numerical integration) and compare. 


The learner will be provided with strategies on how to ensure that solutions are correct, for example benchmarking with analytical solutions or convergence tests. 


The mathematical aspects are complemented by a basic introduction to wave physics, discretization, meshes, parallel programming, and computing models. 


 The course is a Ph.D. level with the end view on using numerical methods applied to partial differential equations with applications in natural sciences, economics, and other fields.

This course introduces the learner to compartmental modeling. It is divided into 3 parts.  First, how to develop a SIR model. Second, how to build it, and finally to make use of the model in real-life applications. This is where intervention and calibration come in.


In the first part, we will tackle compartmental modeling in a deterministic way. The second part proceeds to consider stochasticity.  


This course aims to equip the students to work in modeling diseases in real-life context.

To be reviewed!


This course is an introduction to Partial Differential Equations. We will review some basic notions from the book H.L. Royden's Real Analysis with Fitzpatrick 4th ed beginning \( L^p \) spaces ch. 7. Then we proceed to the rigors and applications of PDE. This course will be team teach by Prof. Joaquim Corriea of Universidade de Évora and Prof. Jayrold Arcede. The following plan maybe applicable to this course.


The two primary goals of many pure and applied scientific disciplines can be summarized as follows:

  1. Formulate/devise a collection of mathematical laws (i.e., equations) that model the phenomena of interest.
  2. Analyze solutions to these equations in order to extract information and make predictions.

The end result of i) is often a system of partial differential equations (PDEs). Thus, ii) often entails the analysis of a system of PDEs. This course will provide an application-motivated introduction to some fundamental aspects of both i) and ii).

In order to provide a broad overview of PDEs, our introduction to i) will touch upon a diverse array of equations including

  1. The Laplace and Poisson equations of electrostatics;
  2. The diffusion equation, which models e.g. the spreading out of heat energy and chemical diffusion processes;
  3. The Schrödinger equation, which governs the evolution of quantum-mechanical wave functions;
  4. The wave equation, which models e.g. the propagation of sound waves in the linear acoustical approximation;
  5. The Maxwell equations of electrodynamics; and other topics as time permits.

In our introduction to ii), we will study three important classes of PDEs that differ markedly in their quantitative and qualitative properties: elliptic, diffusive, and hyperbolic. In each case, we will discuss some fundamental analytical tools that will allow us to probe the nature of the corresponding solutions.