Scientific Computing I
Syllabus, Bachelor's level, 1TD393
- Code
- 1TD393
- Education cycle
- First cycle
- Main field(s) of study and in-depth level
- Computer Science G1F, Mathematics G1F, Technology G1F
- Grading system
- Pass with distinction (5), Pass with credit (4), Pass (3), Fail (U)
- Finalised by
- The Faculty Board of Science and Technology, 12 May 2015
- Responsible department
- Department of Information Technology
Learning outcomes
To pass, the student should be able to
- describe and perform tasks in connection to the key concepts covered in the course;
- explain the idea behind and apply the algorithms covered in the course;
- explore properties for numerical methods and mathematical models by using the analysis methods covered in the course;
- explain simple programming code in MATLAB and write small size programs by means of script files and self-written functions;
- in a student group write programming code that use fundamental programming structures (if, while, for);
- in a student group structure and divide a computational problem into sub-problems, formulate an algorithm and implement the algorithm in MATLAB;
- in a short report, in Swedish and English, explain and summarise solution methods and results in a lucid way
Content
MATLAB and programming in MATLAB: fundamental programming structures (if statements, for, while), functions, parameter passing. Programming structure. Problem solving methodology. Given a problem, divide it into sub-problems, write an algorithm and transform the algorithm to a MATLAB program.
Solution to linear equation systems using LU-factorisation with pivoting. Norms for matrices and vectors. Sensitivity and condition number, stable/unstable algorithm. Numerical solution to integrals. Simpsons metod and Trapezoid rule. Solution to non-linear equations and iterative methods. Bisection, Newton-Raphon method and hybrid algorithms. Floating point representation and the IEEE-standard for floating point arithmetic, machine epsilon and round-off error.
Key concepts covered in the course: algorithm, numerical method, complexity, discretisation och discretisation error, machine epsilon, floating point numbers, round off error, accuracy and order of accuracy, stable and unstable algorithm, iteration and iterative method, condition and condition number, efficiency, adaptivity and adaptive methods, convergence, convergence rate, fix point iteration.
Instruction
Lectures, problem solving classes/workouts, laboratory work, assignments/mini projects.
Assessment
Written exam (3 credits) and approved mini projects (2 credits), where at least one of the reports, or part of it, should be written in English.
Reading list
- Reading list valid from Autumn 2018
- Reading list valid from Spring 2017
- Reading list valid from Autumn 2015, version 2
- Reading list valid from Autumn 2015, version 1
- Reading list valid from Spring 2013
- Reading list valid from Autumn 2012
- Reading list valid from Autumn 2011
- Reading list valid from Autumn 2010
- Reading list valid from Autumn 2009
- Reading list valid from Autumn 2008
- Reading list valid from Autumn 2007