Lectures
 Laboratories
 Literature
 Examination
 Instructors

Scientific & Engineering Programming – 2023/24


The following table contains the titles of all the lectures, and links to the lecture notes. Lecture notes are provided for the convenience of the students, so it is not necessary to take notes in class. Please note that they are no substitute for textbooks, and other study materials. The lecture notes and additional files are provided in different formats: PDF files, Matlab Code files, and Mathematica notebooks.
 The files with .pdf extension are in the standard Portable Document Format, and can be opened with any pdf reader (Adobe Acrobat Reader, Foxit Reader, Evince, xpdf).
 Files with .m extension are Matlab Code files, and can be opened with Matlab or any text editor (Emacs, Vim, Sublime). The files with .mlx, .mdl, and .slx extension are Matlab Live Code / Simulink files, and can be opened with Matlab only.
 Files with .nb extension are Wolfram Mathematica notebooks, and can be opened with Mathematica program – they can be viewed, recomputed, modified. The files with .cdf extension are in Computable Document Format, and can be opened with Wolfram Player – they can be viewed and played only (these files copy the Mathematica notebook files contents, and are provided for persons, who have no Mathematica access).
These notes are under copyright. They can be used only for anybody's private purposes, and cannot be distributed or published, for example by copying and making available from other Web pages, or in any other way.
no 
lecture 
materials 
1  Course introduction. Tools. Introduction to Matlab 

2  Procedural Programming in Matlab 

3  Object Oriented Programming in Matlab 

4  Graphics in Matlab 

5  Mathematics in Matlab 

6  Simulink 

7  Rapid Control Prototyping using Matlab/Simulink 

8  Introduction to Mathematica 

9  Mathematica basics – cont. 

10  Differential equations with Mathematica 

11  Inputs and outputs in Mathematica 

12  Diversitas Mathematica 

Laboratory classes
The following table collects materials displaying the laboratory classes contents. Students are supposed to familiarize with tasks to be performed before attending the class.
no 
subject  description 
materials 
1  Introduction to the laboratory environment. First steps in Matlab 


2  Introduction to Matlab 


3  Procedural Programming in Matlab 


4  Object Oriented Programming in Matlab 


5  Graphics in Matlab 


6  EMG/MMG Signals Analyser. Preliminary Analysis of the Measurement Data 


7  Mathematics in Matlab. Simulink 


8  Mathematica basics 


9  Mathematica basics 2 


10  Algebraic equations nad functions in Mathematica 


11  Ordinary differential equations in Mathematica 


12  Dynamical systems in Mathematica 

Double pendulum 
13  Control systems in Mathematica 

Controls 
14  Mathematica repetere 


Mathematica licence usage
Tutorials, books
MathWorks Tools
Wolfram Tools
Final grades
Passing and obtaining credit in this course requires successfully completing the laboratory class for the course, and obtaining a passing grade for the lecture. The final course grade is computed from the laboratory class score (weight 0.6) and the lecture score (weight 0.4) rounded to the closest nominal grade.
To get the lecture grade one has to pass a final test at the end of the semester. The final test will take place on January 22nd, 2024 at 17:05 in room 0.38 C13 (regular lecture term and place). The list of test topics can be found bellow.
 Discuss operations and expressions involving floatingpoint data types
 Discuss operations and expressions involving integer data types
 Discuss operations and expressions involving logical and relational data types
 Discuss operations and expressions on character arrays and strings
 Explain the similarities and differences between arrays and matrices in Matlab
 Explain the similarities and differences between functions in Matlab defined using a function handle and an mfile
 Explain the similarities and differences between arrays and cell arrays in Matlab
 List and discuss the flow control statements in Matlab
 Discuss the purpose and the construction of a toolbox in Matlab
 Discuss the structure of the class and its usage in Matlab
 Discuss the purpose and mutual relationship of the following graphics objects in Matlab: figure, axes, line, image
 Discuss the purpose of plot, fplot, plot3 and mesh functions in Matlab, similarities and differences between them.
 Explain the purpose of Simulink, list and briefly discuss the purpose of commonly used blocks from the Simulink Library.
 List and briefly discuss functions in Matlab designed for numerical and symbolic operations on matrices
 List and briefly discuss functions in Matlab designed for numerical and symbolic operations on polynomials
 List and briefly discuss functions in Matlab designed for numerical and symbolic differentiation and integration
 List and briefly discuss functions in Matlab designed for numerical and symbolic solving of ordinary differential equations
 List and briefly discuss functions in Matlab designed for numerical and symbolic solving of algebraic equations and for determining zero and minima of functions
 List and briefly discuss functions in Matlab designed to manipulate and simplify symbolic formulas
 List and briefly discuss functions in Matlab designed for descriptive statistics and visualization in Statistics and Machine Learning Toolbox
 Explain the idea of exact and approximate numbers in Mathematica. Give examples. Discuss the precision issue.
 Variables definition and types in Mathematica. Explain and illustrate with examples. What the value of an uninitialised variable is?
 Discuss transformation rules and their use in Mathematica. Illustrate with examples.
 Describe the way of representing vectors and matrices in Mathematica. Give examples.
 What are four kinds of brackets in Mathematica? Illustrate with examples.
 Describe how to define functions in Mathematica. Give examples.
 Discuss conditionals and their use in Mathematica. Illustrate with examples.
 Discuss loops and their use in Mathematica. Illustrate with examples.
 List and briefly describe functions in Mathematica designed for operations on vectors and matrices. Illustrate with examples of application.
 List and briefly describe functions in Mathematica designed for solving of algebraic equations. Illustrate with examples of application.
 List and briefly describe functions in Mathematica designed for differentiation and integration. Illustrate with examples of application.
 List and briefly describe functions in Mathematica designed for solving of ordinary differential equations. Illustrate with examples of application.
 Describe the differences between symbolic and numerical solving of differential equations in Mathematica. What form does the solution take in both cases?
 List and briefly describe functions in Mathematica useful for visualising solutions of differential equations. Illustrate with examples of application.
 List and briefly describe functions in Mathematica designed for function visualisation. Illustrate with examples of application.
 List and briefly describe functions in Mathematica designed for data plotting. Illustrate with examples of application.
 Discuss the procedure of dynamical systems simulation in Mathematica. Illustrate its steps with exemplary Mathematica functions calls.
To pass the laboratory classes the accomplishing of all the exercises is required. The final laboratory class grade results from exercise point credits.
Instructors
To contact instructors please choose Joanna Ratajczak, Katarzyna Zadarnowska, Krzysztof Arent or Robert Muszyński home page (Office hours in Polish is: Konsultacje :).
Lectures
 Laboratories
 Literature
 Examination
 Instructors
Last modified: Friday, 26Jan2024 15:36:08 CET