# Numerical Methods

### Numerical Methods

 Code: 40732 ECTS: 4.0 Lecturers in charge: izv. prof. dr. sc. Goranka Bilalbegović - Lectures Lecturers: Goranka Bilalbegović - Laboratory exercises Take exam: Studomat

### 1. komponenta

Lecture typeTotal
Lectures 15
Laboratory exercises 45
Description:
COURSE GOALS: The aim of the course is to introduce students to numerical methods and numerical libraries using computer language Python. Students are required to solve problems in mathematics and physics using numerical methods. This course prepares students to the follow the higher-level course User interfaces, as well as courses in physics where problems are solved by numerical methods.

LEARNING OUTCOMES AT THE LEVEL OF THE PROGRAMME:
1. KNOWLEDGE AND UNDERSTANDING
1.5. describe the purpose and use of common software packages;
1.6. list and describe the methods for manipulating data, basic principles of databases and fundamental algorithms in programming;
2. APPLYING KNOWLEDGE AND UNDERSTANDING
2.2. recognize and follow the logic of arguments, evaluate the adequacy of arguments and construct well supported arguments;
2.6. apply fundamental algorithms in programming;
2.7. use computing technology to solve scientific and technological problems;
4. COMMUNICATION SKILLS
4.4. use the written and oral English language communication skills that are essential for pursuing a career in physics, informatics and education
5. LEARNING SKILLS
5.1. search for and use professional literature as well as any other sources of relevant information;
5.2. remain informed of new developments and methods in physics, informatics and education;
5.3. develop a personal sense of responsibility for their professional advancement and development.

LEARNING OUTCOMES SPECIFIC FOR THE COURSE:
Upon completing the course students will be able to:
1. Write computer programs in Python using numerical methods and libraries
2. Solve problems in physics and mathematics using numerical methods
3. Visualize solutions of problems in physics and mathematics by using numerical libraries in Python
4. Demonstrate the basic knowledge of numerical methods and libraries
5. Develop and apply computer programming skills

COURSE DESCRIPTION:
1. History of computing and numerical methods [1 hour]
2. High performance computing, visualization and animation [2 hours]
3. Functional programming, IPython [4 hours]
4. Numerical errors, numerical derivatives, numerical solutions of algebraic equations [4 hours]
5. Libraries for programming in Python: NumPy, SciPy, mpmath, SymPy, Sage, matplotlib, PyLab. Application of these libraries in solution of algebraic equations [4 hours]
6. Numerical solutions of differential equations [8 hours]
7. Numerical linear algebra [8 hours]
8. Interpolations, numerical solutions of integrals [8 hours]

REQUIREMENTS FOR STUDENTS:
Students are required to regularly attend classes and online tests, as well as to solve problems in Python.
GRADING AND ASSESSING THE WORK OF STUDENTS:
During the course students attend online tests (50% of the final grade) and solve problems in computer labs (50% of the grade).
Literature:
1. 1. Moodle tečaj kolegija (lekcije, testovi, računalni praktikum)
2. 2. R. W. Hamming, Numerical Methods for Scientists and Engineers

3. M. Summerfield, Programming in Python

4. J. Kiusalaas, Numerical Methods in engineering with Python 3
Prerequisit for:
Enrollment :
Passed : Classical Mechanics 1
Passed : Data Structures and Algorithms
 5. semester Mandatory course - Mandatory studij - Physics and Computer Science Education
Consultations schedule:

### Repository

Repository is empty