Skip to main content
Till KTH:s startsida

DD1318 Programming and Scientific Computing 9.0 credits

A basic course in programming techniques, and solving basic scientific problems using a computer.

Information per course offering

Choose semester and course offering to see current information and more about the course, such as course syllabus, study period, and application information.

Termin

Information for Spring 2025 progtekVT25 programme students

Course location

KTH Campus

Duration
14 Jan 2025 - 2 Jun 2025
Periods
P3 (6.0 hp), P4 (3.0 hp)
Pace of study

33%

Application code

60192

Form of study

Normal Daytime

Language of instruction

Swedish

Course memo
Course memo is not published
Number of places

Places are not limited

Target group
No information inserted
Planned modular schedule
[object Object]

Contact

Examiner
No information inserted
Course coordinator
No information inserted
Teachers
No information inserted

Course syllabus as PDF

Please note: all information from the Course syllabus is available on this page in an accessible format.

Course syllabus DD1318 (Spring 2025–)
Headings with content from the Course syllabus DD1318 (Spring 2025–) are denoted with an asterisk ( )

Content and learning outcomes

Course contents

Fundamental computer concepts.

Programming in a modern programming language. Data structures and classes. Problem-solving through division into sub-problems. Program structuring. Several smaller programming assignments as well as one larger, individual programming assignment with strong emphasis on structuring and specification of included modules.

Technical computations for the solution of mathematical problems. Two and three-dimensional graphical presentation.

Intended learning outcomes

After passing the course, the student shall be able to

  • follow the rules in the syntax of the programming language
  • apply and account for rules for good programming style (such as usability, error handling, structuring, flexibility)
  • design programmer-friendly programs with appropriate names and comments, consistent language and typography
  • discover and correct programming errors
  • modify given programs
  • transfer data between file and program
  • identify the need of and use control structures (conditional statements and loops)
  • divide a larger problem into manageable parts and design functions for these
  • use the data structures that are embedded in the programming language, as well as choose data structures that fit for the current problem
  • use classes as well as design own classes
  • review others' programs
  • handle matrices and use matrix operations
  • use built-in functions from libraries for technical computations and visualisation
  • differentiate and integrate functions numerically
  • solve scalar equations numerically
  • solve large linear equation system
  • use the least squares method
  • solve optimisation problems numerically
  • write and plot functions of complex numbers
  • plot curves
  • plot surfaces
  • make frequency analysis FFT, of vectors/sound and matrices/images

in order to have the possibility to:

  • use programming to solve problems
  • apply the problem solving methodology also in other fields than programming
  • discuss software development with experts
  • utilise the computer as aid for mathematical computations and visualisation in other courses.

Literature and preparations

Specific prerequisites

No information inserted

Recommended prerequisites

High school mathematics (scientific program). Some computer experience (the concepts of operating system and file and experience from one computer application, e.g. word processing).

Literature

You can find information about course literature either in the course memo for the course offering or in the course room in Canvas.

Examination and completion

If the course is discontinued, students may request to be examined during the following two academic years.

Grading scale

A, B, C, D, E, FX, F

Examination

  • LAB1 - Computer labs, 1.5 credits, grading scale: P, F
  • LAB2 - Computer test, 1.5 credits, grading scale: P, F
  • LAB3 - Programming Assignments, 3.0 credits, grading scale: A, B, C, D, E, FX, F
  • LAB4 - Computer labs, 3.0 credits, grading scale: P, F

Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.

The examiner may apply another examination format when re-examining individual students.

Examiner

Ethical approach

  • All members of a group are responsible for the group's work.
  • In any assessment, every student shall honestly disclose any help received and sources used.
  • In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.

Further information

Course room in Canvas

Registered students find further information about the implementation of the course in the course room in Canvas. A link to the course room can be found under the tab Studies in the Personal menu at the start of the course.

Offered by

Main field of study

Technology

Education cycle

First cycle

Supplementary information

Only one of the following courses may be counted in your exam:
DD100N, DD1310-DD1318, DD1331, DD1337, DD1340-DD1343, DD1345, DN1212, HI1024, HI1026, ID1004, ID1018, ID1201, ID1301, SF1511, SF1513, SF1516-SF1519.

In this course, the EECS code of honor applies, see:
http://www.kth.se/en/eecs/utbildning/hederskodex