Visa version

Version skapad av Michael Hanke 2018-12-19 10:48

Visa < föregående | nästa >
Jämför < föregående | nästa >

Course PM

Program construction in C++ for Scientific Computing, pcpp18

Teacher

Michael Hanke, hanke@nada.kth.se, room 3444, Lindstedtvägen 25, tel. 7906278


Course registration

For course registration, use MyPages. Deadline for registration is ??th August!
For all other administrative information please visit the web representation of the Student affairs office here.

Literature

  • The main reference for C++ is: Stanley B. Lippman, Jose Lajoie, Barbara E. Moo: C++ Primer (5th ed.). Addison-Wesley, 2013
  • Additional good reading includes:
    • Jan Skansholm: C++ direkt (3:e upplagan). Studentlitteratur, 2013
    • Suely Oliveira, David Steward: Writing Scientific Software: A Guide to Good Style. Cambridge University Press, 2006
  • Occasionally, reference to other sources will be given where appropriate.
  • The slides of the lectures will be published in advance on this web site. You should have ready them at the lectures in order to be able to make notes!
    • Slides for the eleventh chapter.
    • Slides for the tenth chapter.
    • Slides for the nineth chapter.
    • Slides for the eighth chapter.
    • Slides for the seventh chapter.
    • Slides for the sixth chapter.
    • Slides for the fifth chapter.
    • Slides for the fourth chapter.
    • Slides for the third chapter.
    • Slides for the second chapter.
    • Slides for the first chapter.

Preliminary schedule

  • Lect 1 and 2: Introduction and first examples
  • Ex 1: Develping, compiling, testing and running of a simple program
  • Lab 1: Do it yourself!
  • Ex 2: Evaluation of lab 1
  • Lect 3: Classes in C++
  • Lect 4: C++ operators and their overloading
  • Lect 5: IO
  • Lect 6: Grids
  • Lect 7: Inheritance, applications
  • Lect 9: Move, Copy, and Co
  • Ex 3: Grid generation
  • Lect 10: Templates, STL
  • Lect 11: Efficient programs
  • Lect 12: PDEs and their implementation
  • Further lectures include topics like efficient programming, composition objects, expression templates. If needed, tools like make will be touched.
  • The last lecture/excercise will be devoted to repetions.


Home projects

During the course you will submit three project reports. The forth project is not compulsory but may give uo to three bonus credits for the written examination. For PhD-students taking the PhD-level version of this course, project 4 is compulsory! The descriptions and deadlines are as follows:

  • Project 1, deadline 28th September 2018
  • Project 2, deadline 26th October 2018. The following files will be necessary: r8mat_expm1.cpp and r8lib.cpp as well as the corresponding header files r8mat_expm1.h, r8lib.h.
  • Project 3, deadline 30th November 2018
  • Project 4, deadline 10th January 2019

The written reports shall be handed in at the student expedition of the School of Engineering Sciences (Teknikringen 8D). The projects could be done individually or in a group of two (preferred!).


Examination

The examination includes two parts:

  • Projects reports (PRO1) Projects 1, 2, 3
  • Written examination (TEN1)
Feedback Nyheter