What’s new in 24.4.0
Release Date: April 2024
General
Implemented support for jld2 file format
As with the MAT format earlier, we have implemented support for the jld2 format. You can now import and export variables to this format.
Displaying task progress in the file browser
Added indication of "heavy" tasks execution in the file browser. Now it will be clear when it is busy executing user commands.
Fixed file browser behaviour when deleting the current folder
Previously the file browser was "blocked" when deleting the current folder via the command line. We have fixed this behaviour, and now when deleting a folder that has been navigated to using cd
, it automatically navigates up a level.
Saving command history on the command line
Previously, the command history was cleared after rebooting Engee. With the new release, the command history will be saved and you can switch between commands using the arrows on the keyboard.
Added links to download examples in Engee
Made working with examples more convenient - follow the special link (Start Engee button) and load example directly into Engee:
Maths computing environment
New tool for managing application libraries
We have implemented a library of functions for managing third-party libraries - Engee.Pkg. Now with the EngeePkg.status
function you can display the list and status of installed libraries, understand which ones are system libraries and which ones are user libraries. This will help you figure out which ones require the using
command and which ones do not. You can read more about this library at Working with Julia packages.
Changed the backend of charting by default
Our users are very fond of the interactive charting backend (PlotlyJS), but it had to be plugged in via the using
command. Now you don’t have to do that, it will be plugged in by default.
Modelling environment
Performed a huge amount of optimisation work
Our developers have spent the last few months on various optimisations of the computational kernel of the simulation environment and revised the organisation of its work. This allowed us to significantly increase the speed of calculations of models of various classes (we checked it on our test models), and also had a positive impact on its stability.
-
Many discrete models with scalar signals were accelerated up to 25 times.
-
Many vector discrete models accelerated up to 20 times.
-
Continuous models, including physics models, were also sped up by up to 30%.
-
Improvements of the bus mechanism allowed to speed up models with Bus Creator and Bus Selector up to 20 times.
We have also seriously improved the overall stability of some important blocks and optimised their operation. For example, Relational Operator is now up to 5 times faster, Switch is twice as fast, and Product, often used in models, is 15-30% faster.
Try running your old models yourself, build new ones, or take one of the demos to see for yourself!
New Library - 5G Connectivity
The new Engee.5G system library is a set of specialised functions, system objects and a library of dynamic modelling blocks for modelling, simulation and verification of 5G communication systems.
The toolkit will support modelling of the radio link sublayer, validation against a "golden benchmark", and testing to ensure that designs conform to an industry standard.
With this toolkit you will be able to configure, simulate, measure and analyse end-to-end 5G communication links.
New chart type - Vector Chart
This type of graph has long been requested by engineers developing digital systems such as radar and communication systems. This type of graph allows you to accumulate a vector of data and display all points of a whole packet at once.
A new type of subsystem is Function-Call
Function-Call subsystems allow you to model logic for scheduling calls to model components and for controlling the execution of model components. You can create such a subsystem using the subsystems menu by combining blocks with the Shift key pressed and then selecting the desired subsystem type. Subsystems Function-Call are similar to function calls in procedural programming languages. They allow to call some part of the algorithm at the required moment of simulation time (and even two or more times during one calculation step).
Unified programme names of model settings
Aligned the software names of Engee model settings with those in Simulink. This will make it easier for the user to move from Simulink software model control to Engee software model control, as they will now have the same, familiar parameter names.
Finite automata: functions on a line by click
We have refined the transition lines between states so that the code for transition conditions can be written anywhere by clicking on the arrow.
Fixed behaviour of block parameters when changing them
Optimised work with parameters during simulation. It will not be possible to change parameters that will break the simulation in the process of modelling, and those that can be changed will be updated only after pressing Enter.
Updates and corrections in blocks
New base library blocks
5g
Communication systems
Phased antenna arrays
Signal processing
Library of electrical elements
Isothermal liquid
Humid air
Also:
-
Extended the flexible parameter setting for a number of blocks.
-
Developed the ability to change parameters during simulation for some blocks in sections of base library:
-
We have further improved Engee Function. We added the ability to use "external caches" for vector signals, which significantly affects the simulation performance.
Code generation
Added support for generating C code for finite automata
The documentation section of Code Generation for Finite Automata provides additional information.