Course Unit

Catalogue

Optimization of complex systems

  • ECTS Credits: 6
  • Semester: 1
  • Year: 2
  • Campus: Ivan Franko National University of Lviv
  • Language: English

Optional modules (SUT)

  • ECTS Credits: 14
  • Year: 2
  • Campus: Silesian University of Technology
  • Language: English
  • Additional info:

    Students choose four courses (two for 4 ECTS and two for 3 ECTS) from among the offered courses. The courses offered will be updated each year.
    The exemplary courses offer is given below:

    • Queuing theory,
    • Finite groups,
    • Optimization theory with applications,
    • Inverse problems,
    • Heuristic optimization methods,
    • Computational Geometry,
    • Graphs and Algorithms,
    • Complexity Theory,
    • Introduction to modern cryptography,
    • AI Security,
    • Differential geometry,
    • Complex analysis
    • Modelling with R,
    • Program specialization and metaprogramming,
    • Development of computer games.

Parallel computing

  • Unit Coordinator: Antonio Cicone
  • ECTS Credits: 3
  • Semester: 2
  • Year: 1
  • Campus: University of L'Aquila
  • Language: English
  • Aims:

    Learning Objectives

    The aim of this course is to provide the student with knowledge of
    Parallel Computing and the ability to analyze theoretical properties and
    design mathematical software for high-performance computation.

    Learning Outcomes

    On successful completion of this module, the student should:
    - have profound knowledge and understanding of the most relevant
    numerical methods for numerical computation and the design of accurate
    and highly performant mathematical software;
    - demonstrate skills in choosing the most suitable numerical method to
    be implemented depending on the problem to be solved. Furthermore,
    they should demonstrate ability in developing mathematical software and
    in providing its theoretical analysis;
    - demonstrate the ability to read and understand other texts on related
    topics.

  • Content:

    NUMERICAL INTEGRATION
    Quadrature Formulae, The Midpoint or Rectangle Formula, The
    Trapezoidal Formula, The Cavalieri-Simpson Formula.
    FOURIER TRANSFORM
    Orthogonal Polynomials in Approximation Theory, Fourier Trigonometric
    Polynomials, The Fast Fourier Transform.
    NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS
    The Cauchy Problem, One-Step Numerical Methods, Analysis of One-Step Methods, The Zero-Stability, Convergence Analysis, The Absolute
    Stability, Difference Equations, Runge-Kutta Methods, Derivation of an
    Explicit RK Method, Systems of ODEs.

  • Pre-requisites:

    Basic Numerical Analysis and Linear Algebra.
    Contents

  • Reading list:

    A. Quarteroni, R. Sacco, F. Saleri, P. Gervasio, Numerical Mathematics,
    Springer (2014).
    The book in pdf is available for all students of the University at
    https://link-springer-com.univaq.clas.cineca.it/book/10.1007/978-0-387-22750-4

Parallel computing laboratory

  • Code: DT0506
  • Unit Coordinator: Antonio Cicone
  • ECTS Credits: 3
  • Semester: 2
  • Year: 1
  • Campus: University of L'Aquila
  • Language: English
  • Aims:

    Learning Objectives

    The aim of this course is to provide the student with knowledge of
    Parallel Computing and the ability to analyze theoretical properties and
    design mathematical software for high-performance computation.

    Learning Outcomes

    On successful completion of this module, the student should:
    - have profound knowledge and understanding of the most relevant
    numerical methods for numerical computation and the design of accurate
    and highly performant mathematical software;
    - demonstrate skills in choosing the most suitable numerical method to
    be implemented depending on the problem to be solved. Furthermore,
    they should demonstrate ability in developing mathematical software and
    in providing its theoretical analysis;
    - demonstrate the ability to read and understand other texts on related
    topics.

  • Content:

    Introduction to Parallel Computing
    Motivation and Need for Parallel Computing
    Types of Parallelism (Data, Task, and Instruction)
    Parallel Architectures and Models
    Parallel Programming Paradigms (e.g., Shared Memory, Distributed Memory)
    Parallel Algorithms and Analysis
    Parallel Performance Metrics and Analysis
    Parallel Computing Platforms (e.g., Multicore CPUs, GPUs, Clusters)
    Parallel Programming Languages and Libraries (e.g., OpenMP, MPI, CUDA)
    Parallel Software Development Tools and Environments
    Synchronization and Communication in Parallel Computing
    Load Balancing Techniques in Parallel Computing
    Parallel I/O and File Systems
    Parallelism in Scientific Computing and Engineering Applications
    Parallelism in Data Science and Big Data Analytics
    Parallelism in Web and Cloud Computing
    Parallelism in High-Performance Computing (HPC) and Supercomputing
    Parallelism and Energy Efficiency
    Parallelism and Scalability
    Case Studies of Parallel Computing Applications

  • Pre-requisites:

    Basic Numerical Analysis and Linear Algebra.

  • Reading list:

    A. Quarteroni, R. Sacco, F. Saleri, P. Gervasio, Numerical Mathematics,
    Springer (2014).

    The book in pdf is available for all students of the University at
    https://link-springer-com.univaq.clas.cineca.it/book/10.1007/978-0-387-22750-4

InterMaths Network
A network of +20 European and non-European Universities, coordinated by Department of Information Engineering, Computer Science and Mathematics (DISIM) at University of L'Aquila in Italy (UAQ)