WSL/SLF GitLab Repository

README.md 3.61 KB
Newer Older
1
INIshell
2
3
====================

Michael Reisecker's avatar
Michael Reisecker committed
4
Introduction
5
6
--------------------

Michael Reisecker's avatar
Michael Reisecker committed
7
8
9
10
Welcome to Inishell, a flexible Graphical User Interface (GUI) for simulation software.
Inishell is open source under the GNU GPL3 license and is shipped as the GUI for various numerical modelling software packages to configure and run the simulations intuitively.

Inishell loads XML files containing a semantic description of the models' parameters and dynamically builds a GUI upon this information.
Mathias Bavay's avatar
Mathias Bavay committed
11
12
13
Hence, for the end user it offers a graphical user interface for provided modeling software which is tailored to rapid development and therefore hopefully never outdated. For the developer on the other hand, it offers the possibility to very easily set up a GUI for their application and keep it synchronized with the evolving models. Deploying a new feature in the GUI is then as easy as editing an XML text file and shipping this updated version to the user. 

You can find more details in the following paper: Bavay, M., Reisecker, M., Egger, T., and Korhammer, D.: *Inishell 2.0: semantically driven automatic GUI generation for scientific models*, Geosci. Model Dev., **15**, 365–378, https://doi.org/10.5194/gmd-15-365-2022, 2022.
Michael Reisecker's avatar
Michael Reisecker committed
14

15
- For help concerning the installation of Inishell as well as general information please visit Inishell's project page at https://gitlabext.wsl.ch/snow-models/inishell - especially the wiki pages at https://gitlabext.wsl.ch/snow-models/inishell/-/wikis/home
Michael Reisecker's avatar
Michael Reisecker committed
16
17
18
19
- Once Inishell is running, it offers an extensive built-in help browser for both end users and developers.
- For technical information about the architecture and principles and how Inishell can help you as a developer please consult the paper shipped in the subfolder "resources/doc".
- For help about the software that is being configured through Inishell (i. e. the numerical model itself), see the respective vendor's documentation (and of course the help that is provided for it through Inishell).

20
21
22
23
24
Precompiled packages
--------------------

You can find precompiled packages for your plateform currently at https://models.slf.ch/p/inishell-ng/downloads/. These packages contain a precompiled version of the MeteoIO library as well as a small executable in order to be able to use it to preprocess meteorological timeseries.

Michael Reisecker's avatar
Michael Reisecker committed
25
26
27
28
29
Compilation from source
--------------------

You will need a C++ compiler (such as g++ on GNU/Linux), and the Qt compiler (translating code written for the Qt toolkit to pure C++).
On GNU/Linux, you can install relatively small toolkits to compile Inishell through the command line:
30
31
32

```bash
sudo apt install make
Michael Reisecker's avatar
Michael Reisecker committed
33
sudo apt install build-essential
34
35
sudo apt install qttools5-dev-tools
sudo apt install libqt5xmlpatterns5-dev
36
37
38
```

```bash
Michael Reisecker's avatar
Michael Reisecker committed
39
cd inishell
40
41
42
43
qmake
make
```

Michael Reisecker's avatar
Michael Reisecker committed
44
On other platforms you can either try to emulate this or you can install Qt Creator by downloading a copy from https://www.qt.io/download (choosing an open source license) and importing the file "inishell.pro". After configuring your compiler kit (e. g. Clang on macOS, Visual C++ on Windows or Code::Blocks on all platforms) you can build the project. On Windows, be sure to make the needed DLLs from the Qt installation directory accessible (by e. g. copying them alongside the exe). Static linking requires a static version of Qt. On macOS you also need XCode to run Qt Creator, which can be obtained from Apple with an Apple ID (which does not have to be a developer ID). Of course you can also use Qt Creator on GNU/Linux.
45

Michael Reisecker's avatar
Michael Reisecker committed
46
The compiled program can then be found in the "build" subdirectory.
47
48

*This project has been made possible with the support of the WSL Institute for Snow and Avalanche Research SLF (https://www.slf.ch).*