UT PhD students
You can do much more with the computer than playing games, and using office and commercial software! This course will teach you how to write small programs to solve some common engineering problems by yourself! After this course you will be able to...
● write, compile, and execute small programs in MATLAB and C++,
● translate everyday problems into algorithms and computer-language
● read, understand, modify, and debug in different programming languages,
● use advanced features of MATLAB, including the symbolic toolbox, built-in ODE solvers, and commands for visualisation.
● use advanced C++ features, including object-oriented programming, libraries, and in-built algorithms.
Computations are omnipresent in complex engineering problems in solid mechanics, fluid mechanics, civil and process engineering. Many problems are resolved with the aid of computers and dedicated programs today. Therefore, it is really important for an engineer to be familiar with computers and programming languages. In this course, you will learn how to translate problems into algorithms and how to implement the algorithm into a computer language. We will focus on implementation in two widely used programming languages: MATLAB and C++.
No previous programming knowledge is required. However, a basic understanding of (high-school level) mathematical concepts is expected, such as matrix/vector operations, differentiation and integration.
You will learn how to write, compile, and execute small programs in each language. We teach you how to write structured, reusable code (object-oriented programming in C++) and how to visualize your solutions (in MATLAB). Further, we teach how to better understand, analyze, optimise, and debug code. The course consists of lectures as well as lots of practical exercises.
The course is scheduled from 6th-17th July 2020.
We teach Matlab in the first week (6th-10th July 2020) and C++ in the second week (13th-17th July 2020). Lessons will take place Monday–Thursday from 8:45–10:30 and 13:45-15:30, with exercise sessions from 10:45-12:30 and 15:45–17:30. Fridays are reserved for a Canvas quiz and for working on a final assignment.
All teaching will be done online, via the Conferencing tools on Canvas.
Note: the first day of the MATLAB course is specifically for students with no prior programming knowledge and can be skipped if you have a good working knowledge of MATLAB. Thus, the first day is not typical of the style and depth of the material that will be taught from day 2. On the second day we move on to more advanced topics, including data structures, file I/O, debugging and programming style.
The course will be assessed by two Canvas quizzes and two final assignments, one each for Matlab and C++. Knowledge and understanding of the common commands is tested via the Canvas quiz, while the final assignments tests your understanding and ability to apply programming style and techniques. You are free to choose the topic of the final assignment, or you choose from a selection provided.