# INSEL 8.3 release notes Current Version : INSEL 8.3 Beta7: * For [Windows](https://bwsyncandshare.kit.edu/s/nenYqtBfkfncJxC). * For [Ubuntu 20.04](https://bwsyncandshare.kit.edu/s/QFYeyRg8isnAE2G) * For [Ubuntu 18.04](https://bwsyncandshare.kit.edu/s/Pb33bGgmDwsqgbN) * For [macOS](https://bwsyncandshare.kit.edu/s/bBRFYwsoLMqPSE6) (Very experimental) ## Timeline * Alpha1 release: 19th July 2021 * Alpha2 release: 30th August 2021 (Mostly stable, can be used for lessons.) * Alpha3 release: 8th October 2021 (Was too broken.) * Alpha4 release: 8th November 2021 (Seems stable.) * Beta5 release: 15th November 2021 (Required more testing.) * Beta6 release: 6th December 2021 (Seems stable.) * Beta7 release: 22nd December 2021 (Some bugfixes) * Official release: When it's really ready. ## What's new? * First release since 2014. * First release without Jürgen :-( * First release for macOs. * Relatively easy to compile and package for Windows/Linux/macOs. When bugs are found and fixed, it shouldn't take too long to get a new installer. * Split in two : INSEL Core & INSEL GUI. * INSEL Core can run on servers, and has everything required for simulations. * INSEL Core can be used by SimStadt. * Cooperation between Concordia & HfT Stuttgart (Guillermo, Kai & Eric). * Updated examples. * Automated tests with Python. * Many bugfixes. * Probably many new bugs. :D ### Blocks * Every block accepting coordinates (e.g. MTMLALO, GENGT, ...) is deprecated and has a new version (MTMLALO2, GENGT2, ...) using east-positive longitude and timezones. Stuttgart (48.77°N, 9.18°E, UTC+1) is now described with (48.77, 9.18, 1) instead of (48.77, -9.18, 23). * Models with old coordinates automatically get converted to the new convention when opened in INSEL GUI. * ROOT, GAIN, ATT, OFFSET, DELAYS, ABS, SQRT, EXP, NOP, CHS, ANINT, INT, FRAC now accept between 1 and 10 inputs. * PLOTv2 is now the default PLOT block. * Models with old PLOT blocks automatically get converted to PLOTv2 when opened in INSEL GUI. * SCREEN block displays a nicer output (only 7 significant digits, no trailing zeroes, decimal points are aligned). * Faster SCREEN output, especially when run from terminal. * Unused parameters for WRITE block have been deprecated, and it's now possible to define Header from GUI. * Two new constants have been defined : NaN & Infinity. NaN can be useful in order to indicated missing data in plots. * DIFF block has been added : it calculates `x - y` directly, removing the need to calculate `x + (-y)`. * Finer defaults for GENGT2 (± 0.1 K deviation allowed instead of ± 2K for monthly average). * GENGT had a bug since at least 2010: temperature generation had large deviations after the first year. Monthly averages were still mostly correct, though. * EPS output format in PLOT Block. * Contour drawing for 3D Plots. * MTM2 has 8 outputs by default. * Same name for MTM2 outputs and GENGT2 inputs. * D18599 block has been added. * Gnuplot window does not get closed automatically with a mouse click, which lets the user interact with the graph. (Press q or click on X to close). * It is now easier to work with Y2 axis in PLOT block (e.g. range is set and displayed automatically) * Sun position was sometimes in the wrong quadrant, in the tropics, close to the horizon. * PLOTP writes X/Y/Parameter and not just X/Y, so that Parameter can be used (e.g. for line colors) ### GUI * "Show INSEL model" has a nicer output (no trailing zeroes). * Default language is English. * Default model size is 8x8. * INSEL GUI now uses Java 15+. * New GUI themes (light/dark modes, high-contrast for accessibility, ...) * New keyboard shortcuts: * CtrlR to run a model * CtrlP to pause a model * CtrlZ to stop a model * An experimental LIVECHART Block is available in the GUI. Data is displayed in real time. * New icons (from FontAwesome). * CLOCK block now shows progress. * Models are not marked as changed when they are simply opened or run. * The content of Vseit files isn't shuffled anymore anytime they are saved. * Blocks are placed on a regular grid when imported from an insel file. * Old INSEL 7 files (.ins, .vee) cannot be imported anymore. To import them, please use INSEL 8.2. * The installed version can be copied to any folder (e.g. on a USB drive). Two portable bat scripts are included on windows. ### INSEL Engine * INSEL Core can use Fortran 90. * Easier way to integrate and share userblocks (UB library files can have any name, e.g. `libInselAlice.dll`, `libInselBob.dll`). * `libInselCommunity` has been created, and it contains useful user blocks from the community (e.g. `UBSTORAGE`, CHP blocks, ...). * Source can have any filename (e.g. `ubstorage.cpp`) instead of `ub1234.cpp`. * Function names can be called `ubstorage(...)` and not just `ub0001(...)`, in order to avoid conflicts. * Can list every available block with `insel -b`. * Can list the version of every module with `insel -v`. * Possible to use underscores in constants : `C stuttgart_latitude 48.77` * Simulink blocks and logics have been removed, since they have not been used for years. ## Beta-testers: What to test? * Please backup every model before opening them in INSEL 8.3! (e.g. the whole `Documents/insel.work` folder) * Please backup userblock libraries if you have any. * Please keep an INSEL 8.2 installer, just in case. * Remove INSEL 8.2. * Install INSEL 8.3. (+Gnuplot + GUI, MSYS2 is only needed for developing user blocks) * Start INSEL 8.3 GUI. * A new folder should be created at startup. * Old models should still be readable. * Old PLOT blocks should be converted. * Old coordinates should be converted. If they are defined via constants, please update constants manually. * Can user blocks still be used? They probably need to get compiled again. * Models shouldn't run slower than before. * Please report any crash (with any `replay_*.log` and `hs_err_*.log` file you can find) (TODO: Where?). * A gitlab project has been created in order to collect user-feedback: https://transfer.hft-stuttgart.de/gitlab/insel/insel-8-3/-/issues ## Known bugs * MTMUP somehow does not update MTM weather database. * If variables are not properly initialized in blocks, they might be shared between simulation runs when run from the GUI. * Underscores in filenames or function names might break documentation. * UB documentation PDFs are searched at the wrong location. ## What's next? * Fix more bugs. * New GUI, based on Eclipse Sirius (with zoom / undo / web-interface / ...). * Double-precision instead of single-precision floats. * Allow blocks to be written in Python. * PVGIS Block (month as input, coordinates as parameters, monthly average irradiances and temperatures as output). * SORT Block (n inputs, data is saved during simulation, sorted at the end according to the first input, and written to a file). * READCSV Block. * Updated Weather DB. * Updated Photovoltaics DB. * Upload install files to an official server (insel.eu?) * Preparation for open-sourcing in the future.