# Matematica | NUMERICAL CALCULUS II

## Matematica NUMERICAL CALCULUS II

 0512300033 DIPARTIMENTO DI MATEMATICA EQF6 MATHEMATICS 2022/2023

 YEAR OF COURSE 3 YEAR OF DIDACTIC SYSTEM 2018 AUTUMN SEMESTER
SSD CFU HOURS ACTIVITY TYPE OF ACTIVITY MAT/08 6 48 LESSONS OPTIONAL SUBJECTS
 DAJANA CONTE T ANGELAMARIA CARDONE
ExamDate
APPELLO CALCOLO NUMERICO II06/02/2023 - 09:00
APPELLO CALCOLO NUMERICO II06/02/2023 - 09:00
Objectives
KNOWLEDGE AND UNDERSTANDING:
THE AIM OF THE COURSE IS THE THEORETICAL KNOWLEDGE AND CRITICAL ANALYSIS OF ADVANCED METHODS FOR NUMERICAL LINEAR ALGEBRA AND SOME BASIC METHODS FOR THE NUMERICAL SOLUTION OF ORDINARY DIFFERENTIAL EQUATIONS, TOGETHER WITH THE DEVELOPMENT OF THE CORRESPONDING MATHEMATICAL SOFTWARE.
PART OF THE COURSE WILL DEAL WITH THE STUDY PARALLEL METHODS IN MPI AND CUDA ENVIRONMENTS.

APPLYING KNOWLEDGE AND UNDERSTANDING:
THE AIM OF THE COURSE IS TO MAKE THE STUDENT CAPABLE TO
•PARALLELIZE SOME NUMERICAL METHODS FOR LINEAR ALGEBRA
•SOLVE ORDINARY DIFFERENTIAL EQUATIONS BY USING MATHEMATICAL SOFTWARE
•THEORETICALLY AND EXPERIMENTALLY ANALYZE THE CONVERGENCE AND LINEAR STABILITY OF BASIC NUMERICAL METHODS FOR ODES
•CHOOSE THE MORE APPROPRIATE NUMERICAL METHOD TO SOLVE THE PROBLEM UNDER EXAMINATION
Prerequisites
BASICS ON PROGRAMMING LANGUAGES MATLAB AND C.
Contents
PARALLEL NUMERICAL ANALYSIS. PARALLEL ARCHITECTURES, EVALUATION OF A PARALLEL ALGORITHM. PARALLELIZATION STRATEGIES FOR LINEAR ALGEBRA.
MPI (MESSAGE PASSING INTERFACE). PARALLEL COMPUTATION ON GRAPHICS PROCESSING UNITS (GPUS). CUDA.
CAUCHY PROBLEM. EULER METHOD, CONVERGENCE. THE CRANK-NICOLSON METHOD. ZERO STABILITY. LINEAR STABILITY, REGION OF ABSOLUTE STABILITY.
Teaching Methods
THE TEACHING IS COMPOSED OF FRONTAL LESSONS AND EXERCISES.

THE FRONTAL LESSONS WILL PRESENT THE METHODOLOGIES AND THE ALGORITHMS THAT THEN, DURING THE EXERCISES, WILL BE CODED IN SCIENTIFIC CALCULATION ENVIRONMENTS AND TESTED ON TEST PROBLEMS OF INTEREST.

PART OF THE EXERCISES WILL BE DEDICATED TO PROJECT ACTIVITIES IN SMALL GROUPS, FOR THE PURPOSE OF DEVELOPING MATHEMATICAL SOFTWARE AND TESTING IT ON TEST PROBLEMS PROVIDED BY THE TEACHER, VERIFYING THE PROPERTIES OF ACCURACY, STABILITY AND EFFICIENCY OF THE METHODS.
Verification of learning
THE FINAL EXAM CONSISTS IN THE DISCUSSION OF A PRACTICAL PART IN THE LABORATORY AND AN ORAL PART ON THE CONTENTS OF THE COURSE. THE PRACTICAL PARTY REGARDS THE USE OF THE MATHEMATICAL SOFTWARE DEVELOPED DURING THE TEACHING, TO BE APPLIED TO CERTAIN TEST PROBLEMS, TO CHECK THE ABILITY TO APPLY THE ACQUIRED KNOWLEDGE. THE ORAL PART REGARDS THE THEORETICAL CONTENTS OF TEACHING, IN ORDER TO CHECK THE ABILITY TO ANALYZING AND PRESENTING WITH RIGOR THE PROPERTIES OF NUMERICAL METHODS PRESENTED DURING THE LESSONS
Texts
1.ALMERICO MURLI, LEZIONI DI CALCOLO PARALLELO, LIGUORI EDITORE SRL, 2006.
2.JASON SANDERS, EDWARD KANDROT, CUDA BY EXAMPLE: AN INTRODUCTION TO GENERAL-PURPOSE GPU PROGRAMMING, ADDISON-WESLEY PROFESSIONAL, 2010.
3. A. QUARTERONI, F.SALERI, SCIENTIFIC COMPUTING WITH MATLAB AND OCTAVE, SPRINGER

OTHER SUPPORTING TEXTS, MANUALS
1.MPI: A MESSAGE-PASSING INTERFACE STANDARD VERSION 3.1, 2015, HTTPS://WWW.MPI-FORUM.ORG/DOCS/MPI-3.1/MPI31-REPORT.PDF
2.CUDA PROGRAMMING GUIDE
HTTPS://DOCS.NVIDIA.COM/PDF/CUDA_C_PROGRAMMING_GUIDE.PDF