# Subject description - AE0B17MTB

Summary of Study | Summary of Branches | All Subject Groups | All Subjects | List of Roles | Explanatory Notes               Instructions
AE0B17MTB Matlab
Roles:V Extent of teaching:0P+3C
Department:13117 Language of teaching:EN
Guarantors:  Completion:KZ
Lecturers:  Credits:4
Tutors:  Semester:Z,L

Anotation:

Students will learn how to efficiently use both basic and advanced Matlab functions, including graphic user interface design. Emphasis will be put on problem analysis and implementation, understanding Matlab documentation, debugging user-defined functions and independent work with Matlab (proved by work on the project). Knowledge acquired can be applied to a broad spectra of courses taught at FEE (processing labs, final projects) and can be used in future professional career.

Study targets:

The course will introduce Matlab environment and will teach students to solve simple problems they can face during their further studies or during their professional career. Students will get acquainted with all basic parts of Matlab as defined e.g. by Certified Matlab Associate Exam.

Course outlines:

 1 Motivation problems, environment description and set-up, control || Matlab as a calculator, documentation 2 Expressions and commands, indexing, elementary math functions || () Indexing, [], :, dot-operations, solving simple problems (scripts #1), scalar × vector × matrix operations and functions, Projects: project list 3 Relation and logical operators, logical indexing, code debugging || scripts #2, keyboard shortcuts, cell mode scripts, script processing by Matlab; Projects: project selection 4 User-defined functions, recursion, programming style (variables, functions, comments) || Workspaces, main / local / nested functions; Projects: project layout, initial consultation 5 Visualization in Matlab (introduction) || Ploting and editing graphs; Projects: work on projects + consultation 6 Cycles (vectorization, other methods), cell, struct || Built-in functions #1, time operations; Projects: work on projects + consultation 7 Memory allocation, data types, control flow m-lint || Built-in functions #2, division by zero (Inf, NaN, .); Projects: work on projects + consultation and project progress check 8 Strings, import/export, code acceleration || Excel, ASCII, binary, mat, (bmp), eval, evalin, ...; Projects: work on projects + consultation 9 Path, code design, large application design, code design guidelines and standards || Complex examples (functionality-wise), code reading; Projects: work on projects + consultation 10 Visualization in Matlab (OOP/ handle objects, graphics control) || Complex graphs (object types), graphics, animation, Projects: work on projects + consultation 11 Visualization in Matlab (OOP/ handle objects, graphics control) || Complex graphs (object types), graphics, animation, Projects: work on projects + consultation 12 Symbolic math (MuPAD kernel), limit, extreme, derivative, zero points of a function, integration, ezplot, ezsurf, solve vs. numerical approach, Projects: work on projects + consultation and project progress check 13 Test project finalization 14 Project check, credit award

Exercises outline:

 1 Motivation problems, environment description and set-up, control || Matlab as a calculator, documentation 2 Expressions and commands, indexing, elementary math functions || () Indexing, [], :, dot-operations, solving simple problems (scripts #1), scalar × vector × matrix operations and functions, Projects: project list 3 Relation and logical operators, logical indexing, code debugging || scripts #2, keyboard shortcuts, cell mode scripts, script processing by Matlab; Projects: project selection 4 User-defined functions, recursion, programming style (variables, functions, comments) || Workspaces, main / local / nested functions; Projects: project layout, initial consultation 5 Visualization in Matlab (introduction) || Ploting and editing graphs; Projects: work on projects + consultation 6 Cycles (vectorization, other methods), cell, struct || Built-in functions #1, time operations; Projects: work on projects + consultation 7 Memory allocation, data types, control flow m-lint || Built-in functions #2, division by zero (Inf, NaN, .); Projects: work on projects + consultation and project progress check 8 Strings, import/export, code acceleration || Excel, ASCII, binary, mat, (bmp), eval, evalin, ...; Projects: work on projects + consultation 9 Path, code design, large application design, code design guidelines and standards || Complex examples (functionality-wise), code reading; Projects: work on projects + consultation 10 Visualization in Matlab (OOP/ handle objects, graphics control) || Complex graphs (object types), graphics, animation, Projects: work on projects + consultation 11 Visualization in Matlab (OOP/ handle objects, graphics control) || Complex graphs (object types), graphics, animation, Projects: work on projects + consultation 12 Symbolic math (MuPAD kernel), limit, extreme, derivative, zero points of a function, integration, ezplot, ezsurf, solve vs. numerical approach, Projects: work on projects + consultation and project progress check 13 Test project finalization 14 Project check, credit award

Literature:

 [1] Attaway, S.: A Practical Introduction to Programming and Problem Solving, 3rd ed., Butterworth-Heinemann, 2013. [2] Hahn, B., Valentine, D.: Essential Matlab for Engineers and Scientists, 5th ed., Academic Press, 2013. [3] Kiusalaas, J.: Numerical Methods in Engineering with Matlab. Cambridge University Press, 2005. [4] Mathews, J. H., Fink, K. D.: Numerical Methods Using Matlab. Prentice Hall, 1999

Requirements:

max. 2 missed classes, more missed classes in extreme and justified cases only, project hand-in by the end of semester (grade E or better), test pass (grade E or better)

Webpage:

web: https://cw.fel.cvut.cz/wiki/courses/be0b17mtb/start contact: matlab@fel.cvut.cz

Keywords:

Matlab, numerical methods, numerical analysis

Subject is included into these academic programs:

 Program Branch Role Recommended semester BEKME1 Communication Technology V – BEKME5 Komunikace a elektronika V – BEKME_BO Common courses V – BEKME4 Network and Information Technology V – BEKME3 Applied Electronics V – BEKME2 Multimedia Technology V – BEEEM1 Applied Electrical Engineering V – BEEEM_BO Common courses V – BEEEM2 Electrical Engineering and Management V – BEKYR1 Robotics V – BEKYR_BO Common courses V – BEKYR3 Systems and Control V – BEKYR2 Sensors and Instrumentation V – BEOI1 Computer Systems V – BEOI_BO Common courses V – BEOI3 Software Systems V – BEOI2 Computer and Information Science V –

 Page updated 22.6.2021 19:54:31, semester: L/2021-2, L/2020-1, Z,L/2022-3, Z/2021-2, Send comments about the content to the Administrators of the Academic Programs Proposal and Realization: I. Halaška (K336), J. Novák (K336)