Skip to main content

Modeling and Computational Engineering MOD510

This course introduces numerical methods and modeling techniques used to solve practical problems. The course provides insights and skills in computational thinking and programming techniques

You will learn the most common numerical methods used to solve complex physical, biological, financial or geological phenomena. Examples of methods are numerically derivation, numerical integration, Monte Carlo and boot strapping methods, inverse methods, numerical solution of common differential equations, simulated annealing, lattice Boltzmann models, random walk models, box (compartment) models.

The primary programming language is Python. Through assignments, you will learn how to set up mathematical models of a phenomenon, develop algorithms, implement them, and investigate the strength and limitations of the solution method and the mathematical model. You will learn how to code efficiently in Python, both by using functions and classes. The projects focus on modeling realistic systems, and to compare with measured data to learn more about the systems. The goal of the projects is to reproduce state of the art scientific results. 

Course description for study year 2021-2022. Please note that changes may occur.

Course code


Credits (ECTS)


Semester tution start


Number of semesters


Exam semester


Language of instruction


Offered by

Faculty of Science and Technology, Department of Energy Resources

Learning outcome


  • Advanced knowledge of algorithms and algorithmic thinking, and apply it to solve discrete and continuous problems
  • Advanced knowledge in numerical analysis, in order to evaluate the constraints associated with the chosen solution method, including approximation errors
  • In depth knowledge of the basic numerical methods


  • Develop models of physical systems from biology, chemistry, flow in porous media, and geology
  • Test models against experimental data, and use data to constrain the model
  • Apply appropriate numerical methods to solve mathematical models
  • Develop own programs written in the program language Python

General Competence:

  • To write scientific reports
  • Visualize and presentation of results from numerical simulations
  • The use of computers to work more efficiently with large amounts of data
Required prerequisite knowledge
Recommended prerequisites
MAF300 Numerical Modeling, MAT100 Mathematical Methods 1, MAT110 Linear Algebra, MAT320 Differential Equations
Matematiske Metoder 1 (MAT100), Linær Algebra (MAT110), Differensialligninger (MAT320), Numerisk Modellering Grunnkurs (MAF300)
Form of assessment Weight Duration Marks Aid
Folder evaluation 1/1 A - F

Portfolio assessment:The folder consists of three projects, of which all count 1/3 of the total grade. There is no written or oral examination. If a student fails or wants to improve the grade, he or she has to take course again.

Coursework requirements
Students must have passed one or two mandatory assignments in order to get a grade in the course.
Course teacher(s)
Course coordinator: Aksel Hiorth
Course coordinator: Aksel Hiorth
Head of Department: Alejandro Escalona Varela
Open for
Admission to Single Courses at the Faculty of Science and Technology
Search for literature in Leganto