Course detail
Automation of Calculation, Simulation and Visualization
FSI-LAV Acad. year: 2024/2025 Summer semester
This course offers a structured approach to programming fundamentals and their applications in the context of energy engineering. The initial weeks focus on establishing a solid foundation, introducing students to basic programming concepts and data processing techniques. As the course progresses, we delve deeper into advanced programming features, such as debugging, logging, and profiling. The utilization of both standard and third-party libraries is explored. Additionally, the course underscores the significance of data analysis and presentation, emphasizing the use of Python libraries like Numpy, Pandas, and Plotly, enabling the creation of visually appealing and interactive graphs.
Furthermore, students will be introduced to specialized tools such as FeniCSx, Coolprop, and Xsteam, which are essential for addressing energy-related tasks. The course concludes with coverage of optimization techniques, parallel programming for processing large volumes of data, and a comprehensive review of assignments completed by students throughout the semester, ultimately leading to earning credit.
Supervisor
Department
Learning outcomes of the course unit
Prerequisites
A foundational understanding of mathematics and physics at the undergraduate level, coupled with analytical thinking skills.
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Regular and active participation in exercises, delivery of all assigned tasks is required for credit to be granted.
Language of instruction
Czech
Aims
In this course, students will learn how to automate calculations and design processes for developing in-house software by utilizing the Python programming language, along with compatible libraries and open-source software. This approach minimizes the need for manual and intellectual labor, ultimately enhancing efficiency. Furthermore, students will also become acquainted with tools for visually presenting results and data through appealing diagrams, extending beyond engineering calculations.
Specification of controlled education, way of implementation and compensation for absences
The study programmes with the given course
Programme C-AKR-P: , Lifelong learning
branch CLS: , 2 credits, elective
Programme N-ETI-P: Power and Thermo-fluid Engineering, Master's
branch ENI: Power Engineering, 2 credits, compulsory
Type of course unit
Computer-assisted exercise
26 hours, optionally
Syllabus
Week 1 – Introduction to programming 1 – Data types, Basic operations, Generic operations,
Week 2 – Introduction to programming 2 – Flow control, Loops, Functions, arguments,
Week 3 – Objects, Inheritance, Polymorphism,
Week 4– Debugging, logging, profiling,
Week 5 – Python Standard Libraries, Third Party Modules, Imports,
Week 6 – Working with files, Text and binary files,
Week 7 – Arrays and Matrices, Numpy library,
Week 8 – Time series, Data analysis, Pandas,
Week 9 – Data presentation, Interactive graphs, Plots, Dashboard,
Week 10 – Selected Libraries for Energy Engineers, FeniCSx, Coolprop, Xsteam,
Week 11 – Optimization, SciPy, PyTorch,
Week 12 – Parallel programming for processing a large volume of data,
Week 13 – Review of assignments, Credit.