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 Python and C++,
- compose your own algorithms to solve some common engineering problems
- translate everyday problems into computer-language
- read, understand, modify, and debug bigger programs
- use advanced C++ features, including object-oriented programming, libraries, and in-built algorithms
- use libraries and packages from the vast and diverse python ecosystem to efficiently solve practical problems
Note, you can also choose to learn Matlab instead of Python. In that case, you will learn about many advanced features of MATLAB, including the symbolic tool box, built-in ODE solvers and structured data types.
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 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: Python and C++.
No previous programming knowledge is required. We only expect a basic (high-school level) understanding of mathematical concepts, 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) and how to visualize your results. We further teach you how to better understand, analyze, optimise, and debug code.
SCHEDULE And EC
The course runs from 11th - 22nd July 2022 and consists of daily lectures and lots of practical exercises.
Lectures will be recorded and can be viewed on Canvas, in case you miss one.
This is a hybrid course: We strongly encourage you to attend the lecture in-person, but you can follow the course online
The course is divided into two sections:
Python in week 1, July 11-15 (1.5 EC):
Monday-Thursday: Lecture 9:45-12:30, Tutorial from 13:45 (open-ended)
Friday: 13:45-15:45 Exam (Working on final assignment)
C++ in week 2, July 18-22 (1.5 EC)
Monday-Thursday: Lecture 8:45-12:30, Tutorial from 13:45 (open-ended)
Friday: 13:45-15:45 Exam (Canvas Quiz and working on final assignment)
Credits: 3 EC in total but since the languages are handled separately, you can do Python for 1.5 EC and/or C++ for 1.5 EC.
The course will be assessed by two final assignments, one each for Python and C++, plus a Canvas quiz for C++. Knowledge and understanding of the common commands is tested via the Canvas quiz, while the final assignments test your understanding and ability to apply programming style and techniques.nd