Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
en:teaching:subjects:it [2020/03/06 01:30] admin [Lectures] |
en:teaching:subjects:it [2020/03/27 13:05] (current) admin [Lectures] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Information technology ====== | ====== Information technology ====== | ||
+ | |||
===== Studies in English ===== | ===== Studies in English ===== | ||
Line 5: | Line 6: | ||
This course is a part of an undergraduate programe taught fully in English. For more on studying in English at Cracow University of Technology please visit [[http://www.civ-eng.pk.edu.pl]]\\ | This course is a part of an undergraduate programe taught fully in English. For more on studying in English at Cracow University of Technology please visit [[http://www.civ-eng.pk.edu.pl]]\\ | ||
+ | |||
+ | ===== Moodle for Information Technology ===== | ||
+ | |||
+ | Experimental module in Moodle can be found at http://elf2.pk.edu.pl/course/view.php?id=2024 | ||
===== Course description ===== | ===== Course description ===== | ||
Line 46: | Line 51: | ||
link in the toolbox in the left panel. | link in the toolbox in the left panel. | ||
===== Lectures ===== | ===== Lectures ===== | ||
- | ^ No ^ Content ^ | ||
- | | 1 | Information technology overview. Course aim and scope. Computer as a work, research and study tool. Limitations of computing. {{:en:teaching:subjects:it:a02_lecture01_rp.pdf|Slides}}| | ||
- | | 2 | Overview of computer operating systems. Basic introduction to GNU/Linux. {{:en:teaching:subjects:it:a02_lecture02_rp.pdf|Slides}} {{:en:teaching:subjects:it:questions02.pdf|Questions}}| | ||
- | | 3 | Introduction to Octave. {{:en:teaching:subjects:it:a02_lecture03_rp.pdf|Slides}}| | ||
- | | 4 | Elements of computer programming. Programming languages. Execution of computer programs. Compilers and interpreters.{{:en:teaching:subjects:it:a02_lecture04_rp.pdf|Slides}} | | ||
- | | 5 | Major generic kinds of statements in imperative languages. {{:en:teaching:subjects:it:a02_lecture05_rp.pdf|Slides}}| | ||
- | | 6 | Introduction to algorithmic problem solving. Basic algorithms for sequences of numbers: summation, extreme elements, sub-sequences.{{:en:teaching:subjects:it:a02_lecture06_rp.pdf|Slides}} | | ||
- | | 7 | Plotting and 3D graphics in Octave. {{:en:teaching:subjects:it:a02_lecture07_rp.pdf|Slides}} | | ||
- | | 8 | Extension packages for Octave {{:en:teaching:subjects:it:a02_lecture08_rp.pdf|Slides}}| | ||
- | | 9 | Representation of computer data. ASCII and UNICODE. Text files versus binary files. {{:en:teaching:subjects:it:a02_lecture09_rp.pdf|Slides}}| | ||
- | | 10 | Number systems and representations. Computer arithmetic. The IEEE 754 standard for binary floating point arithmetic {{:en:teaching:subjects:it:a02_lecture10_rp.pdf|Slides}}| | ||
- | | 11 | Basic algorithms and data structures. Scalars, arrays and lists. {{:en:teaching:subjects:it:a02_lecture11_rp.pdf|Slides}}| | ||
- | | 12 | More advanced algorithms. Recursion | | ||
- | | 13 | Sources of errors in computer programs | | ||
- | | 14 | Sources of errors in computer programs (cont.) | | ||
- | | 15 | Computer systems in scientific and engineering applications. | | ||
{{tablelayout?colwidth="80px,260px,500px"&rowsHeaderSource=3&float=center}} | {{tablelayout?colwidth="80px,260px,500px"&rowsHeaderSource=3&float=center}} | ||
^ Lecture ^ Title ^ Content ^ | ^ Lecture ^ Title ^ Content ^ | ||
+ | | 1 | Introduction to the course. {{ :en:teaching:subjects:it:ti_lecture_01.pdf | PDF}}| Aim and scope. Method of working. Motivation. Requirements. Overview of software tools. Sample problems.| | ||
+ | | 2 | Introduction to programming.{{ :en:teaching:subjects:it:ti_lecture_02.pdf | PDF}} | Processor and program. High level programming languages. Compilation versus interpretation. Overview of popular languages. Introduction to programming in Matlab/Octave. | | ||
+ | | 3 | Diving into Matlab/Octave | Pseudocode. Variables and assignment operator. Matrix variables. Conditional statement. Loops. Functions. Programming paradigms: structural object oriented, functional | | ||
+ | | 4 | Data structures and algorithms | Basic data structures: arrays, lists, sets, graphs. Overview of selected algorithms for sequences. Sorting and searching. Matrix algorithms. | | ||
+ | |5 | Data formats and data processing | Binary code. Data types. Characters, ASCII, code pages, UTF-8. Data formats. HDF5, JSON, XML, CSV. Data visualization. ParaView, Matplotlib, plotting in Matlab and Octave. | | ||
| 6 | Introduction to geometric modeling | Geometric models and their representations. B-Rep i CSG. \\ Meshes as data structures. Basic geometric transformations. \\ Selected tools: GMSH, OpenScad, Blender. | | | 6 | Introduction to geometric modeling | Geometric models and their representations. B-Rep i CSG. \\ Meshes as data structures. Basic geometric transformations. \\ Selected tools: GMSH, OpenScad, Blender. | | ||
| 7 | Overview of software engineering | Repositories. Git, GitHub. Documenting code. Markdown. \\ Linux environment. Automating repetitive tasks.\\ Software licences. | | | 7 | Overview of software engineering | Repositories. Git, GitHub. Documenting code. Markdown. \\ Linux environment. Automating repetitive tasks.\\ Software licences. | | ||
- | | 8 | Summary | | + | | 8 | Summary | The role of programming in engineering curriculum. | |
- | | The role of programming in engineering curriculum. | | + | |
| | ||
~~UP~~ | ~~UP~~ | ||
- | ===== Lab assignments===== | + | ===== Computer labs ===== |
^ No ^ Title ^ | ^ No ^ Title ^ | ||
| 1 | [[en:teaching:subjects:it:labs:lab1|Introduction to GNU/Linux operating system]] | | | 1 | [[en:teaching:subjects:it:labs:lab1|Introduction to GNU/Linux operating system]] | | ||
Line 111: | Line 105: | ||
==== Primary readings ==== | ==== Primary readings ==== | ||
- | ~~REFNOTES~~ | + | * Primer, MathWorks, 2019 [[https://www.mathworks.com/help/releases/R2019b/pdf\_doc/matlab/getstart.pdf|PDF]] |
+ | * David Houcque, Introduction to Matlab for Engineering Students, Northwestern University, 2005, [[https://www.mccormick.northwestern.edu/documents/students/undergraduate/introduction-to-matlab.pdf|PDF]] | ||
+ | * Tony Gaddis, Starting out with Python, Pearson, 2017 (4th edition) | ||
+ | |||
==== Additional readings ==== | ==== Additional readings ==== | ||
- | <BIBTEX: file=it_additional_readings style=chicago> | + | |
- | <texit> | + | * W. Gander, Learning MATLAB. A problem Solving Approach, Springer, 2015 |
- | \begin{enumerate} | + | * K.D Lee, Python Programming Fundamentals, Springer, 2011 |
- | \item Octave homepage, 2010, \url{http://www.gnu.org/software/octave/} | + | * J. D. Foley et al, Computer Graphics: Principles and Practice, Addison Wesley; 3rd Edition, 2013 |
- | \item Arthur, Lowell Jay and Burns, Ted. 1998. Unix - programowanie w Shellu. Zakad Nauczania Informatyki "Mikom". | + | * D. M. Bourg, Physics for Game Developers, O'Reilly, 2001 |
- | \end{enumerate} | + | |
- | </texit> | + | |
---- | ---- | ||
~~UP~~ | ~~UP~~ |