K-INFO
HU
EN
Login

MATLAB-Programming for Engineers

Mérnöki problémamegoldás MATLAB-ban
A tantárgyleírás hatályossága
Hatályosság kezdete:
2026. March 21.
Hatályosság vége:
Subject name (Hungarian, English)
Mérnöki problémamegoldás MATLAB-ban
MATLAB-Programming for Engineers
Subject code BMEVIMIAV23
Subject type
Training Level
Course types and hours (weekly/semester)
Course type lecture tutorial laboratory
hours (weekly) 2 0 2
type (linked/independent) derived course
Assessment type vizsga
Credits 4
Subject coordinator
Kollár Zsolt
position: egyetemi docens
Responsible department
Mesterséges Intelligencia és Rendszertervezés Tanszék
Faculty Villamosmérnöki és Informatikai Kar
Subject website
Primary curriculum type
Direct prerequisites – Strong prerequisite none
Direct prerequisites – Weak prerequisite none
Direct prerequisites – Parallel prerequisite none
Direct prerequisites – Milestone prerequisite none
Direct prerequisites – Exclusion none

Objectives

Programme

Topics of lectures:

Week 1: Refreshing MATLAB fundamentals: basic data operations, definition of data characteristics (statistics), data visualization, data extraction, data processing, 2D and 3D data visualization, use of data analysis tools

Week 2: Data entry and export. Data retrieval from files, databases, webs, software, and hardware devices. Control peripherals and measuring instruments.

Week 3: Process and methods of teamwork and project work using engineering computing platform, preparation of project tasks.

Week 4: Using MATLAB system objects to simulate and verify dynamic system behavior. Real-time processing, stream-based processing, and segmented processing of large data files.

Week 5: Software-supported advanced algorithm development (Polyspace, Stateflow): run-time optimization, event-driven planning, model-oriented design. Code verification, static code analysis, and run-time debugging. Compliance with programming standards State graph-based design. Modeling finite automata. Process scheduling and control, execution and management logic, error handling.

Week 6: Handling compute-intensive problems: parallel processing, distributed computing, multi-threaded program management. MATLAB server is used to perform distributed calculations.

Week 7: Advanced discrete signal processing: time-domain solutions, spectrum estimation methods. Applicability of special transformations in practice.

Week 8: Application development: PC executable program, graphical user interface, software library, source code executable on target hardware, FPGA descriptor, embedded application (C/C++, MEX, VHDL, VERILOG). Generate codes that can be downloaded for hardware.

Week 9: Finite element tasks. Basics of physical modeling: defining geometric shapes, grid generation, specifying physical conditions, problem-solving, and displaying results.

Week 10: Overview of topic-specific applications: radio frequency data transmission, wireless, antenna design, electromagnetic field simulation, radar applications.

Week 11: An overview of the capabilities of engineering computing platforms. Introduction of additional engineering programming platforms (Octave, Scilab, similarities and differences).

Week 12: Introduction to industrial applications.

Week 13: Application development, consultation.

Week 14: Extra session.

Computer laboratory topics:

Week 1: Refreshing MATLAB basics: Editor, Debugger, Profiler, File types, functions, m and mat files.

Week 2: Get and manage data files: .dat, xls, wav, and image files. Manage data from external peripherals (TCPIP / Serial)

Week 3: Documentation: Playshow, publish, and live script. GUI design - guide, appdesigner. Version control.

Week 4: Real-time voice manipulation through stream objects, spectrum analyzer, and writing your own class/object.

Week 5: Learning Polyspace BugFinder and Codeprover, Stateflow programs through practical examples. Code analysis, standard compliance, and correction of characteristic errors. State-graph-based design based on specification.

Week 6: MATLAB parallel programming, CUDA programming syntax. Distributed computing on a MATLAB server and cloud computing environment. Run time comparison for local, multithreaded, and server-side computing.

Week 7: Various implementations of FFT. Filter design and application using fdatool and sptool, based on specific speculation. Define filter coefficients and export filter.

Week 8: Application development: A program that can be run on a PC. Programming Rasberry Pi and Arduino boards from MATLAB. Generate executable code from a SIMULINK model.

Week 9: Definition of finite element-based tasks, consideration of physical parameters, interpretation and processing of simulation results. Solving an electromagnetic finite element problem.

Week 10: Antenna toolbox, RF toolbox, LTE toolbox, WIFI toolbox presentation, solution of the design task: WiFi system simulation.

Week 11: Octave, Scilab review, transcription of MATLAB codes. Transfer prepared programs to another environment.

Week 12: Applications prepared in MATLAB for industrial environment - application development task based on industrial requirements; getting to know the case study, answering questions related to the project task.

Week 13: Presentation and evaluation of project tasks.

Week 14: Extra session

The purpose of the course is advanced MATLAB education. Furthermore, the aim is to further train students in computer-aided, efficient solutions to engineering problems and to demonstrate methods that can be used in rapid prototyping with state-of-the-art tools and procedures.  With the acquired knowledge, students can efficiently create quickly adaptable software solutions that meet the given needs during their later development work. Within the framework of the course - following the examples of a common engineering programming platform (primarily MATLAB) - students can gain practical experience in addition to a deeper theoretical description of the topic area, which they can later use directly in their engineering work. Engineering programming platforms are already used in many places in the industry, and their role is expected to grow further in the future. The lectures of the course introduce the toolkit of the engineering programming platform, the laboratory session presents what is learned in theory and is translated into practical examples. The aim of the homework project assignment is to deepen and record the knowledge acquired at the lecture and in the laboratory. The aim of the course is to build on the basic knowledge of programming to help you learn to develop computational and algorithm-intensive programs by solving typical problems in the fields of electrical engineering and information technology. In addition to the comprehensive presentation of the topic, the subject places great emphasis on presenting the most up-to-date tools and methods available in the current semester.

Learning outcomes

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Knowledge

No learning outcomes recorded.

Skills

No learning outcomes recorded.

Attitudes

No learning outcomes recorded.

Autonomy and responsibility

No learning outcomes recorded.

Oktatási módszertan

The subject's curriculum is given in the framework of 2 hours of lectures per week, and the deepening and practical application of what we learn is facilitated by 2 hours of computer laboratory practice per week.

Tanulástámogató anyagok

Online források
The current supporting materials prepared for the course can be downloaded; from the subject's website.; Stoyan Gisbert: Matlab (ISBN 978-963-2794-40-2)

Recommended preliminary knowledge for completing the subject

Knowledge type competencies
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Programming basics Basic MATLAB Programming
Skill type competencies
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Recommended (non-compulsory) preliminary competencies
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Programming basics Basic MATLAB Programming
General rules
Requirements: a. During the diligence period: Submit and present homework. The deadline for submitting and presenting homework is the last week of the diligence period. The homework (project assignment) received at the beginning of the semester must be completed in the framework of group work in such a way that the contribution of each student can be separated. The prepared solution must be presented orally in addition to submitting written documentation. b. During the exam period: An oral exam on topics learned during the semester. Preliminary exam: yes. Additional possibilities: The project assignment can also be submitted during the replacement week.
Assessment methods
In-term assessments

No detailed assessments provided.

Weight of in-term assessments

No weights provided.

Exam-period assessments

No detailed assessments provided.

Weight of exam elements

No weights provided.

Grade calculation

No grade thresholds provided.

Attendance requirements

No attendance requirements provided.

Rules for retake and resubmission

Not provided.

Short description

Not provided.

Detailed description

Not provided.

Recommended courses

Not provided.

Workload to complete the subject

No workload breakdown provided.

Validity of subject requirements
Requirements valid from:
Requirements valid until:
Curriculum placement

No curriculum placements recorded for this subject version.