Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2025/2026

Programming in Mathematica

Display time-table
Code Completion Credits Range Language
FIT-PMA Z,ZK 4 2P+2C Czech
Course guarantor:
Zdeněk Buk
Lecturer:
Zdeněk Buk
Tutor:
Zdeněk Buk
Supervisor:
Department of Theoretical Computer Science
Synopsis:

Students will be working with modern technical and scientific software. Students will learn how to use different programming styles (functional programming, rule-based programming, etc.), how to create dynamic interactive applications and visualisations, data processing and presentations.

Requirements:

Basic knowledge of algorithmization (cycles, conditions, etc.) and data structures (mainly arrays).

Syllabus of lectures:

1.Introduction to the Mathematica System

Overview of the environment, notebooks, and workflow in Wolfram Mathematica.

2.Syntax, Function Definitions, Expression Evaluation, and Basic Computations

Understanding the evaluation model, defining and applying functions, and performing symbolic and numeric calculations.

3.Graphics: Visualization of Functions, Data, Data Structures, and Graphs

Creating plots and visual representations of mathematical and data-driven content.

4.Interactivity: Manipulators, Interactive Visualizations and Computations, Dynamics

Building interactive content using Manipulate and dynamic expressions.

5.Symbolic and Numerical Computations

Working with exact and approximate methods, hybrid symbolic-numeric workflows.

6.Programming Basics and Functional Programming

Core programming constructs, higher-order functions, and functional paradigms in Wolfram Language.

7.Rule-Based Programming

Pattern matching, transformation rules, and symbolic rewriting techniques.

8.Data Import and Export, Database Connectivity

Working with structured and unstructured data; integration with external data sources and databases.

9.Typography and Dynamic Documents in Mathematica

Combining text, computation, and graphics in interactive notebooks and reports.

10.Optimization (NMinimize, FindMinimum), Neural Networks

Solving optimization problems; brief introduction to machine learning and neural network capabilities.

11.Efficient Programming, Optimization, and Parallelization

Writing performant code, using compilation and parallel processing tools.

12.J/Link and MathLink Integration with Java and C Programs

Connecting Mathematica with external programming languages and libraries.

13.Comprehensive Applications

Simulation and control examples, Wolfram Workbench projects, and special topics based on student interest.

Syllabus of tutorials:

1. Introduction

2. Introduction to programming in Mathematica

3. Graphics and visualisation

4. Symbolic computations

5. Functional programming, project consultation

6. Rule-based programming, project consultation

7. Interactive manipulators, project consultation

8. Project consultation

9. Project consultation

10. Project presentation

11. Project presentation

12. Project presentation

13. Assessment

Study Objective:

Wolfram Mathematica is a modern technical and scientific software which has been developed over last 20 years. This system has been used at many prestigious universities and scientific institutions (e.g. CERN, NASA, Intel, Lockheed Martin, Apple, IBM, Microsoft, ...). It represents now the complete integrated environment for publication, presentation, computations, dynamic interactive applications, etc. Mathematica is very powerful programming language combining different programming styles (functional, rule-based, etc.). In this course the students will be introduced into the Mathematica system and they will learn how to work with different programming styles in this system. After the course the student will be able to create complete interactive documentats and presentations, process different data files, create own libraries, etc.

Study materials:

Wolfram Mathematica Documentation Center - http://reference.wolfram.com/mathematica/guide/Mathematica.html

Wolfram Screencast and Video Gallery - http://www.wolfram.com/broadcast/

Wolfram Education Group, Free online seminars - http://www.wolfram.com/services/education/seminars/

Wolfram Demonstration Projects - http://demonstrations.wolfram.com/

Note:

This course is presented in Czech.

Further information:
https://courses.fit.cvut.cz/BI-PMA/
Time-table for winter semester 2025/2026:
Time-table is not available yet
Time-table for summer semester 2025/2026:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2025-11-12
For updated information see http://bilakniha.cvut.cz/en/predmet8495206.html