Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
d5f5144
timflow works `from timflow import steady as timml`
deltamarnix May 20, 2026
0f48f6f
Add prompt for test data runner
deltamarnix May 28, 2026
4934849
Fix documentation
deltamarnix May 28, 2026
9ca2a03
Fix type-o
deltamarnix May 28, 2026
04f544d
consistent name for timflow
JoerivanEngelen Jun 1, 2026
ed9bfa0
Merge branch 'master' into timflow
JoerivanEngelen Jun 10, 2026
7f02a1b
Fix wrong arg
JoerivanEngelen Jun 10, 2026
2d4f9fd
Rename buttons to follow Timflow
JoerivanEngelen Jun 10, 2026
84be868
Rename Python objects to new Timflow names
JoerivanEngelen Jun 10, 2026
c22312b
Update metadata
JoerivanEngelen Jun 10, 2026
8bda20f
Rename ImpermeableLineDoublet to ImpermeableWall
JoerivanEngelen Jun 10, 2026
817026c
Update module names
JoerivanEngelen Jun 10, 2026
c59b65e
Remove unused import
JoerivanEngelen Jun 10, 2026
1231964
Fix formatting
JoerivanEngelen Jun 10, 2026
19136c0
Add TODO
JoerivanEngelen Jun 10, 2026
b1a7b18
remove unnecessary mention of "timml"
JoerivanEngelen Jun 10, 2026
57f9f6c
Rename variables and functions to steady and transient
JoerivanEngelen Jun 10, 2026
afbb0c5
Rename validation scheme attributes
JoerivanEngelen Jun 10, 2026
b99d60d
Rename class variables
JoerivanEngelen Jun 10, 2026
2188380
Update extraction attribute names
JoerivanEngelen Jun 10, 2026
4a0fa61
Migrate all attribute names to steady and transient
JoerivanEngelen Jun 10, 2026
3b8faaf
Rename method names to steady and transient
JoerivanEngelen Jun 10, 2026
e9473c0
Rename missed method
JoerivanEngelen Jun 10, 2026
cac421a
Update docstring
JoerivanEngelen Jun 10, 2026
aa553a6
Update last variable names
JoerivanEngelen Jun 10, 2026
c780ef1
Rename "timml" to "steady-state" and "ttim" to "transient" in all str…
JoerivanEngelen Jun 11, 2026
4ca41d3
Better argname
JoerivanEngelen Jun 11, 2026
a3f42cc
Update text in the docs
JoerivanEngelen Jun 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,17 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Compute gistim server",
"type": "debugpy",
"request": "launch",
"program": "${workspaceFolder}/gistim/__main__.py",
"console": "integratedTerminal",
"args": [
"compute",
"${input:computeGistimJsonPath}"
]
},
{
"name": "Attach to QGIS",
"type": "debugpy",
Expand All @@ -11,5 +22,13 @@
},
"justMyCode": true
}
],
"inputs": [
{
"id": "computeGistimJsonPath",
"type": "promptString",
"description": "Path to the JSON input file for the compute command",
"default": "${workspaceFolder}/testdata/test.json"
}
]
}
15 changes: 7 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,14 @@

QGIS-Tim is an open source project for multi-layer groundwater flow
simulations. QGIS-Tim provides a link between QGIS and the open source analytic
element method software: [TimML (steady-state)](https://github.com/mbakker7/timml)
and [TTim (transient)](https://github.com/mbakker7/ttim).
element method software: [timflow](https://github.com/timflow-org/timflow).

The benefit of the analytic element method (AEM) is that no grid or
time-stepping is required. Geohydrological features are represented by points,
lines, and polygons. QGIS-Tim stores these features in a
[GeoPackage](https://www.geopackage.org/).

QGIS-Tim consists of a "front-end" (the QGIS plugin) and a "back-end" (the TimML and TTim server).
QGIS-Tim consists of a "front-end" (the QGIS plugin) and a "back-end" (the timflow server).
The front-end is a QGIS plugin that provides a limited graphical interface to setup model input,
visualize, and analyze model input. The back-end is a Python package. The plugin converts the
GeoPackage content to a JSON file or a Python script. The back-end reads the JSON file, does the
Expand Down Expand Up @@ -48,19 +47,19 @@ Download and install a recent version of QGIS (>=3.28):

This will add an icon to the toolbar(s). By clicking the icon, the plugin is started.

### Install the TimML and TTim server
### Install the timflow server

With the plugin installed, we can already define model input and convert it to Python scripts or JSON files.
To run TimML and TTim computations directly from QGIS, we need to install a server program which contains TimML and TTim.
To run timflow computations directly from QGIS, we need to install a server program which contains timflow.

1. Start the QGIS-Tim plugin by clicking the QGIS-Tim icon in the toolbar.
2. Find and click the "Install TimML and TTim server" button at the bottom of the plugin window.
2. Find and click the "Install timflow server" button at the bottom of the plugin window.
3. Click the "Install latest release from GitHub" button to download and install the server program.

Specific releases can also be manually downloaded from the [GitHub Releases page](https://github.com/Deltares/QGIS-Tim/releases):

1. Download the gistim ZIP file for your platform: Windows, macOS, or Linux.
2. Find and click the "Install TimML and TTim server" button at the bottom of the plugin window.
2. Find and click the "Install timflow server" button at the bottom of the plugin window.
3. Set the path to the downloaded ZIP file in the "Install from ZIP file" section.
4. Click the "Install" button.

Expand All @@ -73,7 +72,7 @@ This repository uses [pixi](https://pixi.sh) to install required dependencies.
3. Call `pixi shell -e dev` to activate the development environment.
4. Call `pixi run install-qgis-plugins` to install this plugin and some debug tools inside of the included QGIS installation.
5. Call `pixi run install-backend` to install the backend as a symlink between the pyinstaller dist folder and %APPDATA%/qgis-tim.
6. Call `pixi run qgis` to start QGIS. The plugin should be installed and enabled and you should be able to see the versions of timml and ttim.
6. Call `pixi run qgis` to start QGIS. The plugin should be installed and enabled and you should be able to see the versions of timflow.

After making a change to the plugin, you can reload the plugin with the [plugin reloader](https://plugins.qgis.org/plugins/plugin_reloader/).

Expand Down
7 changes: 2 additions & 5 deletions docs/developer.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,11 @@ QGIS-Tim uses pixi to manage installing dependencies and run common tasks.
Follow the instructions on the [Getting Started page](https://pixi.sh/).

### PyInstaller
To build the TimML and TTim server application with PyInstaller, run `pixi run build-backend`
To build the timflow server application with PyInstaller, run `pixi run build-backend`

This creates a built PyInstaller application in `./dist/gistim`.

Run `pixi run zip-backend` to create a ZIP file of the PyInstaller application.
Run `pixi run zip-plugin` to create a ZIP file of the QGIS plugin that can be installed in QGIS.

To test the created ZIP files: Install the QGIS from the ZIP file, start the QGIS plugin and try to install the ZIP file via the "Install TimML and TTim server" button.
Run `pixi run -e dev install-backend` to create a symlink between %APPDATA%/qgis-tim and ./dist/gistim.

## Creating new release

Expand Down
5 changes: 2 additions & 3 deletions docs/index.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,7 @@ listing:

QGIS-Tim is an open source project for multi-layer groundwater flow
simulations. QGIS-Tim provides a link between QGIS and the open source analytic
element method software: [TimML (steady-state)](https://github.com/mbakker7/timml)
and [TTim (transient)](https://github.com/mbakker7/ttim).
element method software: [timflow](https://github.com/timflow-org/timflow).

The benefit of the analytic element method (AEM) is that no grid or
time-stepping is required. Geohydrological features are represented by points,
Expand All @@ -21,5 +20,5 @@ lines, and polygons. QGIS-Tim stores these features in a
QGIS-Tim consists of a "front-end" and a "back-end". The front-end is a QGIS
plugin that provides a limited graphical interface to setup model input,
visualize, and analyze model input. The back-end is a Python package. It reads
the contents of the GeoPackage and transforms it into a TimML or TTim model,
the contents of the GeoPackage and transforms it into a timflow model,
computes a result, and writes it to a file that the QGIS plugin loads.
8 changes: 4 additions & 4 deletions docs/install.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,14 @@ This will add an icon to the toolbar(s). ![](figures/tutorial/button-Qgis-tim.pn

By clicking the icon, the plugin is started.

## 3. Install the TimML and TTim server
## 3. Install the timflow server
With the plugin installed, we can already define model input and convert it to Python scripts or JSON files.
To run TimML and TTim computations directly from QGIS, we need to install a server program which contains TimML and TTim.
To run timflow computations directly from QGIS, we need to install a server program which contains timflow.

### Method A: Install from GitHub (requires internet connection)

1. Start the QGIS-Tim plugin by clicking the QGIS-Tim icon in the toolbar.
1. Find and click the "Install TimML and TTim server" button at the bottom of the plugin window.
1. Find and click the "Install timflow server" button at the bottom of the plugin window.
1. Click the "Install latest release from GitHub" button to download and install the server program.

### Method B: Install from ZIP file
Expand All @@ -51,6 +51,6 @@ Specific releases can also be manually downloaded from the [GitHub Releases page

1. Download the gistim ZIP file for your platform: Windows, macOS, or Linux.
1. Start the QGIS-Tim plugin by clicking the QGIS-Tim icon in the toolbar.
1. Find and click the "Install TimML and TTim server" button at the bottom of the plugin window.
1. Find and click the "Install timflow server" button at the bottom of the plugin window.
1. Set the path to the downloaded ZIP file in the "Install from ZIP file" section.
1. Click the "Install" button.
Loading