Engineering Programming, Part 1

Major: Micro and Nanosystem Technology
Code of subject: 6.153.00.O.003
Credits: 6.00
Department: Department of Electronic Engineering
Lecturer: assistant Vasyl Varyshchuk
Semester: 1 семестр
Mode of study: денна
Learning outcomes: This discipline involves the study of object-oriented Python programming language, standard modules library, and principles of program development. The purpose of mastering the discipline is to form students' skills needed to solve the following professional tasks: - development of architecture, algorithmic and software solutions of system and application software; - development of tools related to research projects; - application of information technologies to solve applied problems in the photonics; - development and use of modern high-performance computing technologies and automated systems in scientific and practical activities;
Required prior and related subjects: - Prerequisite: Fundamentals of Informatics - co-requisites: Computer modeling of devices and technologies in micro- and nanosystem technology
Summary of the subject: The discipline "Engineering Programming, Part 1" is devoted to the study of the basics of programming using Python language. When solving a number of problems, engineers and researchers often face the need to work with large data sets of different types. In order to work effectively with different types of data, it is necessary to have the basics of programming, as programming skills allow you to automatically collect the necessary information in a relatively short time. The discipline is divided into two blocks: the first block is focused on learning the basics of programming, and the second block is devoted to solving applied engineering problems in the field of photonics using the Python language.
Assessment methods and criteria: - Current control (30%): written laboratory reports, oral examination - Final control (70%, modular control, exam)
Recommended books: 1. Berendsen, H J C. 2011. A student’s guide to data and error analysis. Cambridge UK: Cambridge Univ. Press. 2. Cromey, D W. 2010. Avoiding twisted pixels: Ethical guidelines for the appropriate use and manipulation of scientific digital images. Sci. Eng. Ethics, 16(4), 639–667 3. Downey, A. 2012. Think Python. Sebastopol CA: O’Reilly Media Inc. http://www.greenteapress.com/thinkpython/thinkpython.pdf 4. Haenel, V, Gouillart, E, & Varoquaux, G. 2013. Python scientific lecture notes. Tech. rept. EuroScipy tutorial team. http://scipy-lectures.github.com 5. Landau, R H, Paez, M J, & Bordeianu, C C. 2012. Computational physics: Problem solving with computers. Enlarged etextbook, 3rd ed. New York: Wiley. http://physics.oregonstate.edu/?rubin/Books/CPbook/index.html 6. Langtangen, H P. 2014. A primer on scientific programming with Python. 4th ed. Berlin: Springer 7. Libeskind-Hadas, R, & Bush, E. 2014. Computing for biologists: Python programming and principles. Cambridge UK: Cambridge Univ. Press 8. Lutz, M. 2014. Python pocket reference. 5th ed. Sebastopol CA: O’Reilly Media Inc. 9. Perez, F, & Granger, B E. 2007. IPython: A system for interactive scientific computing. Computing in Science and Engineering, 9(3), 21–29. 10. Pine, D. 2014. Introduction to Python for science. https://github.com/djpine/pyman