Scientific Computing I

5 credits

Syllabus, Bachelor's level, 1TD393

Education cycle
First cycle
Main field(s) of study and in-depth level
Computer Science G1F, Mathematics G1F, Technology G1F
Grading system
Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
Finalised by
The Faculty Board of Science and Technology, 27 February 2019
Responsible department
Department of Information Technology

Entry requirements

Linear Algebra and Geometry I alternatively Algebra and Geometry or Algebra and Vector Geometry, and Single Variable Calculus or Calculus for Engineers

Learning outcomes

Upon completion of the course, the student should be able to

  • describe and perform tasks irelated 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 what a MATLAB code result in, and describe a problem with an algorithm or programming code in MATLAB, e.g. to translate a mathematical expression to a MATLAB function;
  • solve smaller computational problems in a well-structured way (by breaking it down into smaller sub problems) and implement in Matlab.


The course covers numerical algorithms for functions of one variable, software and basic programming and in relation to this methodology of problem solving. The content is divided into the four main areas: numerical integration, solution of non-linear equations, polynomial and data approximation, and problem solving with MATLAB (basic problem solving methodology included). Numerical integration: Simpson's method and the Trapezoidal rule. Solution to non-linear equations: Bisection, Newton-Raphson, and hybrid methods. Data approximation: polynomial interpolation based on different ansatz, such as Newton polynomial and piecewise polynomials (splines). Least squares approximation and solution based on differnet ansatz and the normal equtations. Also, convergence analysis for the different algorithms is included, discretization and round-off errors, the IEEE-standard for floating point representation.

Problem solving and programming in MATLAB: vectors and matrices, fundamental programming structures (if statements, for, while), functions. Programming structure. Problem solving methodology: given a problem, breaking it down into sub-problems, and implementation in MATLAB.

Important key concepts covered in the course are e.g. algorithm, numerical method, discretisation och discretisation error, machine epsilon, overflow, underflow, floating point numbers, round off error, cancellation, accuracy and order of accuracy, iteration and iterative method, efficiency, adaptivity and adaptive methods, convergence, convergence rate, ansatz.


Lectures, problem solving classes/workouts, laboratory work, programming assignments and mini project.


Written exam (3 credits). Individual programming excercises and mini projects with written report and tasks at problem solving classes (2 credits).

If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the disability coordinator of the university.