EL2310 Programmeringsteknik 7,5 hp
Scientific Programming
OBS!
Informationen nedan baseras på en kursplan som ännu inte har börjat gälla.
Scientific Programming is a programming course tailored for the Systems,
Control and Robotics program. The aim is to ensure that everyone can use
MATLAB, which will be used in many of the coming courses, as well as
program in C/C++.
The examination of this course is through projects that should be solved
individually. There is one project for MATLAB, one for C and one for
C++. Each project is proceeded by an optional lab that provides an
additional opportunity to train before the project.
The theme for the projects are mainly robotics. Over the past years, algorithms
and methods such as path planning with potential fields and
probabilistic road maps, scan matching and the control of robot
manipulator arms have been investigated.
Solving the projects requires not only the ability to program, but to
analyse a problem and to go from a mathematical formulation to an
algorithm and then to an implementation. Finally, and just as
importantly, an evaluation should also be carried out to make
sure that the implementation works as expected.
Utbildningsnivå
Avancerad nivåKursnivå (A-D)
CHuvudområde
Betygsskala
P, F
Kurstillfällen/kursomgångar
HT13 sciprg för programstuderande
Perioder
HT13 P1 (7,5 hp)
Anmälningskod
50998Kursen startar
2013 vecka: 36Kursen slutar
2013 vecka: 44Undervisningsspråk
EngelskaCampus
KTH CampusAntal föreläsningar
Antal övningar
Undervisningstid
DagtidUndervisningsform
NormalAntal platser
Ingen begränsningSchema
Schema (nytt fönster)Kursansvarig
Florian Pokorny <fpokorny@kth.se>
Lärare
Florian Pokorny <fpokorny@kth.se>
Målgrupp
Avser främst Masterprogrammet för systemteknik och robotik (TSCRM) men öppen för alla studenter.
Del av program
Lärandemål
Målet med denna kurs är att ge deltagarna grundläggande kunskap inom programmering och då specifikt inom MATLAB, C och C++.
Efter slutförd kurs skall deltagagarna
- kunan demonstrera och diskutera grundläggande koncept inom programmering så som loopar, rekursion, minneshantering och objectorienterad programmering
- kunna läsa in, processa och visa data i MATLAB
- lösa problem och implementera algoritmer i MATLAB
- vara tillrckligt duktiga på MATLAB för att förstå program skrivna i MATLAB och självständigt lära sig om mer avancerade avancerad användning av MATLAB
- kunna läsa in och processa data i program skrivna i C och C++
- lösa problem och implementera algoritmer i C och C++
- förstå vad enklare program skrivna i C och C++ gör, dvs kunna tillgodogöra sig och analysera befintlig kod
- kuna ändra kod, rätta fel och bygga vidare på existerande kod i MATLAB, C och C++
Kursens huvudsakliga innehåll
Kurser fokuserar på att ge deltagarna verktygen som behövs för att arbeta inom forskning och utveckling i en miljö där datorer blir alltmer viktiga. För att kunna instruera datorer behövs programmering.
Följande täcks inom kursen:
- Grundläggande programmeringskoncept (variabler, funktioner, objekt, klasses, etc)
- Grundläggande programmering, input/output av data, processing av data och visualisering i MATLAB
- Grundläggande programming, input/output av data och beräkningar i C/C++ and grundläggande koncept inom objektorienterade programmering.
Kursupplägg
Den exakta fördelningen av föreläsningar kommer att uppdateras under kursens gång, men en ungefärlig fördelning är:
- Introduktion: innehåll och otiverande exempel [F1]
- MATLAB som verktyg och hur man kan programmera i MATLAB [F2-F5]
- Programmering i C [L6-L12]
- Programmering i C++ [L13-L16]
Behörighet
För kurser som läser enstaka kurser: 120hp och dokumenterade Engelska B eller motsvarande
Rekommenderade förkunskaper
None required, but without any programming experience at all the student will need to work very hard.
Litteratur
Det finns ingen kursbok. Föreläsningsanteckningar distribueras online
För de studenter som trots allt önskar en bok rekommenderas
- MATLAB
F. Gustafsson och N. Bergman, Matlab for Engineers Explained, Springer Verlag, 2003 (ISBN 1-85233-697-8) - C
Kernighan and Ritchie, The C programming language, 2nd edition, Prentice Hall (ISBN 0-13-110362-8) - C++
Stroustrup, The C++ programming language, Addison Wesley
Examination
- LAB1 - Programmering i MATLAB, 2,5 hp, betygsskala: P, F
- LAB2 - Programmering i C, 2,5 hp, betygsskala: P, F
- LAB3 - Objektorienterad programmering, 2,5 hp, betygsskala: P, F
Krav för slutbetyg
För att klara kursen måste studenten slutföra tre projekt, MATLAB, C och C++ individuellt.
Ges av
EES/Reglerteknik
Kontaktperson
Florian T. Pokorny, fpokorny@kth.se
Examinator
Patric Jensfelt <patric@kth.se>
Övrig information
The course is mainly a so-called transition course and should not be
read by students who already read:
DD2310 Javaprogrammering för Pythonprogrammerare
DD2385 Programutvecklingsteknik
DD2387 Programsystemkonstr. m. C++
DD1320 Tillämpad datalogi
DD1321 Tillämpad programmering och datalogi
DD1322 Tillämpad programmering och datalogi, del 1
DD1324 Tillämpad programmering och datalogi, del 2
DD1332 Objektorienterad programmering
DD1343 Datalogi och numeriska metoder, del 1
DD1345 Grundläggande programmering och datalogi
DD1346 Objektorienterad programkonstruktion
Påbyggnad
There is a large number of programming courses at KTH.
Versionsinformation
Kursplan giltig från och med
HT13.
Examinationsinformation giltig från och med
HT07.
