Engee Physical Modeling Language
In most cases, for physical modeling in Engee, it is sufficient to use the standard physical block library. These ready-made blocks cover the main work scenarios and allow you to quickly assemble models by simply connecting the blocks together. This approach is the basic way to work with physical modeling in Engee.
However, there are situations when typical physical blocks are not enough. In such cases, you can create physical component is its own physical unit, the logic of operation and parameters of which are completely determined by the user himself. This allows you to describe a unique mathematical model that is not included in the physical library, and use such blocks in Engee models along with other blocks.
To describe such components, the Engee physical modeling language is used. It is declarative because there is no need to write a step-by-step algorithm (as in imperative languages like Julia or Python). Instead, you simply specify the relationships between the quantities in the form of a system of differential equations.
So, you describe what the physical component (your own physical block) should do, and how to calculate it - the Engee solver determines automatically: it converts the equations itself, checks the dimensions and solves them numerically.