From 850dd80efb4c95c514355e0ee0955bd05cbdaefe Mon Sep 17 00:00:00 2001 From: Pablo Colturi Date: Mon, 30 Mar 2026 12:24:07 +0200 Subject: [PATCH 1/2] grid node support --- Dockerfile.coral | 2 +- README.md | 23 +++---- coral | 2 +- src/lib/data/defaultNodes.json | 108 +++++++++++++++++++++++++++++++++ 4 files changed, 122 insertions(+), 13 deletions(-) diff --git a/Dockerfile.coral b/Dockerfile.coral index 004e44b0..2ac955c5 100644 --- a/Dockerfile.coral +++ b/Dockerfile.coral @@ -1,4 +1,4 @@ -FROM dealii/dealii:v9.6.0-noble +FROM dealii/dealii:v9.7.1-noble USER root RUN apt update -y && \ diff --git a/README.md b/README.md index e5f89253..db37b758 100644 --- a/README.md +++ b/README.md @@ -88,6 +88,10 @@ Adjust your path to your public SSH key in the `docker-compose.yml` file (it has `docker compose up -d` +To rebuild images (e.g. after updating the `coral` submodule or changing the `Dockerfile.coral`): + +`docker compose up -d --build` + In the main app window click on the settings button and set the default url for the Visualizer `http://localhost:8008/` @@ -102,11 +106,18 @@ Or open a shell in the container (restarting the container if needed) Build the Coral backend in the container -``` +```bash cd app cmake -B build -DCMAKE_BUILD_TYPE=Release && cmake --build build ``` +#### Manually generate available nodes file registry.json + +```bash +cd app +./build/core/coral --plugin ./build/backends/dealii/libcoral_backend_dealii.so register --registry-path shared-data/registry.json +``` + #### Manually test the Coral backend Manually execute the backend from the running container with path to the graph.json to execute and the path to the directory where the node execution status files will be written @@ -148,16 +159,6 @@ In particular, when the app exports a `graph.json` for execution, it is written Output files (e.g., `.vtk` files, Slurm logs) produced by CORAL during execution are also written here and served by the `coral-visualizer` container. -### Other usefull Docker commands - -Stop the containers - -`docker compose stop` - -Restart - -`docker compose restart` - # Packaging Build the frontend with `npm run build` and then run the following commands to package the app. diff --git a/coral b/coral index 87511c32..a6a43d3b 160000 --- a/coral +++ b/coral @@ -1 +1 @@ -Subproject commit 87511c32bd532cd072d46277ff896d95d38d1592 +Subproject commit a6a43d3b2b10af83c669078a7601f18e16406c80 diff --git a/src/lib/data/defaultNodes.json b/src/lib/data/defaultNodes.json index 45c8c465..98d0c266 100644 --- a/src/lib/data/defaultNodes.json +++ b/src/lib/data/defaultNodes.json @@ -1153,6 +1153,114 @@ "outputs": [-1], "type": "dealii::Triangulation<3, 3>" }, + "dealii::read_grid<1,2>": { + "arguments": [ + { + "connection_type": "input", + "name": "file_name", + "type": "std::string" + }, + { + "connection_type": "pass_through", + "name": "triangulation", + "type": "dealii::Triangulation<1, 2>" + } + ], + "inputs": [0, 1], + "node_type": "void_function", + "outputs": [1], + "type": "dealii::read_grid<1,2>" + }, + "dealii::read_grid<1,3>": { + "arguments": [ + { + "connection_type": "input", + "name": "file_name", + "type": "std::string" + }, + { + "connection_type": "pass_through", + "name": "triangulation", + "type": "dealii::Triangulation<1, 3>" + } + ], + "inputs": [0, 1], + "node_type": "void_function", + "outputs": [1], + "type": "dealii::read_grid<1,3>" + }, + "dealii::read_grid<1>": { + "arguments": [ + { + "connection_type": "input", + "name": "file_name", + "type": "std::string" + }, + { + "connection_type": "pass_through", + "name": "triangulation", + "type": "dealii::Triangulation<1, 1>" + } + ], + "inputs": [0, 1], + "node_type": "void_function", + "outputs": [1], + "type": "dealii::read_grid<1>" + }, + "dealii::read_grid<2,3>": { + "arguments": [ + { + "connection_type": "input", + "name": "file_name", + "type": "std::string" + }, + { + "connection_type": "pass_through", + "name": "triangulation", + "type": "dealii::Triangulation<2, 3>" + } + ], + "inputs": [0, 1], + "node_type": "void_function", + "outputs": [1], + "type": "dealii::read_grid<2,3>" + }, + "dealii::read_grid<2>": { + "arguments": [ + { + "connection_type": "input", + "name": "file_name", + "type": "std::string" + }, + { + "connection_type": "pass_through", + "name": "triangulation", + "type": "dealii::Triangulation<2, 2>" + } + ], + "inputs": [0, 1], + "node_type": "void_function", + "outputs": [1], + "type": "dealii::read_grid<2>" + }, + "dealii::read_grid<3>": { + "arguments": [ + { + "connection_type": "input", + "name": "file_name", + "type": "std::string" + }, + { + "connection_type": "pass_through", + "name": "triangulation", + "type": "dealii::Triangulation<3, 3>" + } + ], + "inputs": [0, 1], + "node_type": "void_function", + "outputs": [1], + "type": "dealii::read_grid<3>" + }, "double": { "arguments": [], "inputs": [], From a672541883d910f2b13f160f663bdec179682605 Mon Sep 17 00:00:00 2001 From: Pablo Colturi Date: Mon, 30 Mar 2026 14:05:58 +0200 Subject: [PATCH 2/2] changelog --- CHANGELOG.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a3d9d0e8..585ddcfc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,14 @@ See [docs/changelog-template.md](docs/changelog-template.md) for formatting your - [#158](https://github.com/2listic/dealiiX-platform/issues/158) Conditionally upload of the graph JSON and/or template parameters file. Sbatch templates replaced the hardcoded execution command with a new placeholder that is resolved to include or omit a new flag to handle parameters file. +### Submodules + +- [#177](https://github.com/2listic/dealiiX-platform/pull/17) Coral submodule backend updated in order to test new `read_grid` node with containerized Coral backend. + +### Protocol + +- [#177](https://github.com/2listic/dealiiX-platform/pull/17) Updated registry JSON file with available nodes to include new `read_grid` node. + ## [1.3.0] - 2026-03-23 ### Building