Skip to content

Commit 65c30d1

Browse files
MakisHpreCICE Tests VM
and
preCICE Tests VM
authored
Add su2 adapter tests and update reference results (precice#521)
Co-authored-by: preCICE Tests VM <[email protected]>
1 parent bf312a9 commit 65c30d1

25 files changed

+144
-51
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:8b00ccdcd8f2ddb4c1fc115dbaf9ee36bb03ba0f9fb98a3498dcc1d389acaf3b
3-
size 703652
2+
oid sha256:501038f52ba09cea3e7d430f26ff8ca88b301e0aa38862ce894cabaf47237490
3+
size 702367
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:0fe449e0890c9906b7f132bc12c978621bedb2f12fc678f367e5b12823e2543e
3-
size 703586
2+
oid sha256:0d2520075e8ecdcee88288cf91f8da7af2b805771241200168455ed117b13a6a
3+
size 702553
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:4ad401034b1d980c0584bbbb09dc17c8e2723ec195a1f041e4a246e41ded7092
3-
size 703580
2+
oid sha256:553e17167087ce036096c5319d41e322f28e9fbd9da32a63b28002e26ea023df
3+
size 702971

elastic-tube-1d/reference_results.metadata

+10-8
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,30 @@ We also include some information on the machine used to generate them
1111

1212
| name | time | sha256 |
1313
|------|------|-------|
14-
| fluid-cpp_solid-cpp.tar.gz | 2024-03-21 09:41:34 | 8b00ccdcd8f2ddb4c1fc115dbaf9ee36bb03ba0f9fb98a3498dcc1d389acaf3b |
15-
| fluid-cpp_solid-python.tar.gz | 2024-03-21 09:41:34 | 0fe449e0890c9906b7f132bc12c978621bedb2f12fc678f367e5b12823e2543e |
16-
| fluid-python_solid-python.tar.gz | 2024-03-21 09:41:34 | 4ad401034b1d980c0584bbbb09dc17c8e2723ec195a1f041e4a246e41ded7092 |
14+
| fluid-cpp_solid-cpp.tar.gz | 2024-04-13 12:00:34 | 501038f52ba09cea3e7d430f26ff8ca88b301e0aa38862ce894cabaf47237490 |
15+
| fluid-python_solid-python.tar.gz | 2024-04-13 12:00:34 | 553e17167087ce036096c5319d41e322f28e9fbd9da32a63b28002e26ea023df |
16+
| fluid-cpp_solid-python.tar.gz | 2024-04-13 12:00:34 | 0d2520075e8ecdcee88288cf91f8da7af2b805771241200168455ed117b13a6a |
1717

1818
## List of arguments used to generate the files
1919

2020
| name | value |
2121
|------|------|
22-
| PRECICE_REF | v3.0.0 |
23-
| OPENFOAM_EXECUTABLE | openfoam2306 |
22+
| PRECICE_REF | v3.1.1 |
23+
| OPENFOAM_EXECUTABLE | openfoam2312 |
2424
| OPENFOAM_ADAPTER_REF | v1.3.0 |
25-
| PYTHON_BINDINGS_REF | v3.0.0.0 |
25+
| PYTHON_BINDINGS_REF | v3.1.0 |
2626
| FENICS_ADAPTER_REF | v2.1.0 |
27-
| TUTORIALS_REF | 3f139d36f1708fb3ebfde2c48f14b1df94c9d70a |
27+
| TUTORIALS_REF | 340b447 |
2828
| PLATFORM | ubuntu_2204 |
2929
| CALULIX_VERSION | 2.20 |
3030
| CALULIX_ADAPTER_REF | v2.20.1 |
31+
| SU2_VERSION | 7.5.1 |
32+
| SU2_ADAPTER_REF | 64d4aff |
3133
## Information about the machine
3234

3335
### uname -a
3436

35-
Linux precice-tests 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
37+
Linux precice-tests 5.15.0-101-generic #111-Ubuntu SMP Tue Mar 5 20:16:58 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
3638

3739

3840
### lscpu
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:efe8b31a945bed1aec706747dcac70acbf8fb5cc88a79e797e52ca86d403d78a
3-
size 775238
2+
oid sha256:656007eaa973f35c421a3b9ec340a06145fd065041e33f10efe023ab127a4552
3+
size 775369
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:4cf68dae854f23fa773cea329b06f2046a5cb3c4ec5ba8b9f4c363010fd9613a
3-
size 531221
2+
oid sha256:13557384af972d30f6b6d7fcf07429b2d99a463d1e9358d19ea72665fd06279e
3+
size 531446
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:ff95baa77b582eceb69d726b113df2ca340829fb2ca1c2c083c2f96f65908c10
3-
size 497632
2+
oid sha256:da907862142542501da920b8dde9d81cc53e947bd72dc59a8df59dc8e3b28348
3+
size 497746

flow-over-heated-plate/reference_results.metadata

+10-8
Original file line numberDiff line numberDiff line change
@@ -11,28 +11,30 @@ We also include some information on the machine used to generate them
1111

1212
| name | time | sha256 |
1313
|------|------|-------|
14-
| fluid-openfoam_solid-openfoam.tar.gz | 2024-03-21 09:41:34 | ff95baa77b582eceb69d726b113df2ca340829fb2ca1c2c083c2f96f65908c10 |
15-
| fluid-openfoam_solid-nutils.tar.gz | 2024-03-21 09:41:34 | 4cf68dae854f23fa773cea329b06f2046a5cb3c4ec5ba8b9f4c363010fd9613a |
16-
| fluid-openfoam_solid-fenics.tar.gz | 2024-03-21 09:41:34 | efe8b31a945bed1aec706747dcac70acbf8fb5cc88a79e797e52ca86d403d78a |
14+
| fluid-openfoam_solid-nutils.tar.gz | 2024-04-13 12:00:34 | 13557384af972d30f6b6d7fcf07429b2d99a463d1e9358d19ea72665fd06279e |
15+
| fluid-openfoam_solid-openfoam.tar.gz | 2024-04-13 12:00:34 | da907862142542501da920b8dde9d81cc53e947bd72dc59a8df59dc8e3b28348 |
16+
| fluid-openfoam_solid-fenics.tar.gz | 2024-04-13 12:00:34 | 656007eaa973f35c421a3b9ec340a06145fd065041e33f10efe023ab127a4552 |
1717

1818
## List of arguments used to generate the files
1919

2020
| name | value |
2121
|------|------|
22-
| PRECICE_REF | v3.0.0 |
23-
| OPENFOAM_EXECUTABLE | openfoam2306 |
22+
| PRECICE_REF | v3.1.1 |
23+
| OPENFOAM_EXECUTABLE | openfoam2312 |
2424
| OPENFOAM_ADAPTER_REF | v1.3.0 |
25-
| PYTHON_BINDINGS_REF | v3.0.0.0 |
25+
| PYTHON_BINDINGS_REF | v3.1.0 |
2626
| FENICS_ADAPTER_REF | v2.1.0 |
27-
| TUTORIALS_REF | 3f139d36f1708fb3ebfde2c48f14b1df94c9d70a |
27+
| TUTORIALS_REF | 340b447 |
2828
| PLATFORM | ubuntu_2204 |
2929
| CALULIX_VERSION | 2.20 |
3030
| CALULIX_ADAPTER_REF | v2.20.1 |
31+
| SU2_VERSION | 7.5.1 |
32+
| SU2_ADAPTER_REF | 64d4aff |
3133
## Information about the machine
3234

3335
### uname -a
3436

35-
Linux precice-tests 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
37+
Linux precice-tests 5.15.0-101-generic #111-Ubuntu SMP Tue Mar 5 20:16:58 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
3638

3739

3840
### lscpu

perpendicular-flap/metadata.yaml

+5-5
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,11 @@ cases:
1919
run: ./run.sh
2020
component: openfoam-adapter
2121

22-
# fluid-su2:
23-
# participant: Fluid
24-
# directory: ./fluid-su2
25-
# run: ./run.sh
26-
# component: su2-adapter
22+
fluid-su2:
23+
participant: Fluid
24+
directory: ./fluid-su2
25+
run: ./run.sh
26+
component: su2-adapter
2727

2828
solid-calculix:
2929
participant: Solid
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
version https://git-lfs.github.com/spec/v1
2-
oid sha256:b974131b50bfb199f695d066f74100a75f633fba472020e78c3fc0d52b8ad36b
3-
size 13532601
2+
oid sha256:863c5078f8068135a983b24433d8d71120c2fdd67d6ab93b9dc1a4642ee595ba
3+
size 13532926
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
version https://git-lfs.github.com/spec/v1
2+
oid sha256:d74d72729eb88049f067eb794768948d01f58e0b8f0db7e542c2d9da0643c7b5
3+
size 3399058

perpendicular-flap/reference_results.metadata

+9-6
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,29 @@ We also include some information on the machine used to generate them
1111

1212
| name | time | sha256 |
1313
|------|------|-------|
14-
| fluid-openfoam_solid-calculix.tar.gz | 2024-03-21 09:41:34 | b974131b50bfb199f695d066f74100a75f633fba472020e78c3fc0d52b8ad36b |
14+
| fluid-su2_solid-fenics.tar.gz | 2024-04-13 12:00:34 | d74d72729eb88049f067eb794768948d01f58e0b8f0db7e542c2d9da0643c7b5 |
15+
| fluid-openfoam_solid-calculix.tar.gz | 2024-04-13 12:00:34 | 863c5078f8068135a983b24433d8d71120c2fdd67d6ab93b9dc1a4642ee595ba |
1516

1617
## List of arguments used to generate the files
1718

1819
| name | value |
1920
|------|------|
20-
| PRECICE_REF | v3.0.0 |
21-
| OPENFOAM_EXECUTABLE | openfoam2306 |
21+
| PRECICE_REF | v3.1.1 |
22+
| OPENFOAM_EXECUTABLE | openfoam2312 |
2223
| OPENFOAM_ADAPTER_REF | v1.3.0 |
23-
| PYTHON_BINDINGS_REF | v3.0.0.0 |
24+
| PYTHON_BINDINGS_REF | v3.1.0 |
2425
| FENICS_ADAPTER_REF | v2.1.0 |
25-
| TUTORIALS_REF | 3f139d36f1708fb3ebfde2c48f14b1df94c9d70a |
26+
| TUTORIALS_REF | 340b447 |
2627
| PLATFORM | ubuntu_2204 |
2728
| CALULIX_VERSION | 2.20 |
2829
| CALULIX_ADAPTER_REF | v2.20.1 |
30+
| SU2_VERSION | 7.5.1 |
31+
| SU2_ADAPTER_REF | 64d4aff |
2932
## Information about the machine
3033

3134
### uname -a
3235

33-
Linux precice-tests 5.15.0-91-generic #101-Ubuntu SMP Tue Nov 14 13:30:08 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
36+
Linux precice-tests 5.15.0-101-generic #111-Ubuntu SMP Tue Mar 5 20:16:58 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
3437

3538

3639
### lscpu

tools/tests/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Workflow for the preCICE v3 release testing:
2121
3. Trigger the GitHub Actions Workflow. Until we merge the workflow to develop, this can only happen via the [GitHub CLI](https://cli.github.com/):
2222

2323
```bash
24-
gh workflow run run_testsuite_manual.yml -f suites=release_test -f build_args="PRECICE_REF:150d4ee,OPENFOAM_ADAPTER_REF:a0e5263,PYTHON_BINDINGS_REF:49c2af0,FENICS_ADAPTER_REF:6f99859,TUTORIALS_REF:a1d46c4" --ref=develop
24+
gh workflow run run_testsuite_manual.yml -f suites=release_test -f build_args="PRECICE_REF:v3.1.1,OPENFOAM_ADAPTER_REF:v1.3.0,PYTHON_BINDINGS_REF:v3.1.0,FENICS_ADAPTER_REF:v2.1.0,SU2_VERSION:7.5.1,SU2_ADAPTER_REF:64d4aff,TUTORIALS_REF:340b447" --ref=develop
2525
```
2626

2727
4. Go to the tutorials [Actions](https://github.com/precice/tutorials/actions) page and find the running workflow
@@ -61,7 +61,7 @@ gh workflow run run_testsuite_manual.yml -f suites=fenics_test --ref=develop
6161
Another example, to use the latest releases and enable debug information of the tests:
6262

6363
```shell
64-
gh workflow run run_testsuite_manual.yml -f suites=fenics_test -f build_args="PRECICE_REF:v3.1.1,OPENFOAM_ADAPTER_REF:v1.3.0,PYTHON_BINDINGS_REF:v3.1.0,FENICS_ADAPTER_REF:v2.1.0" -f loglevel=DEBUG --ref=develop
64+
gh workflow run run_testsuite_manual.yml -f suites=fenics_test -f build_args="PRECICE_REF:v3.1.1,OPENFOAM_ADAPTER_REF:v1.3.0,PYTHON_BINDINGS_REF:v3.1.0,FENICS_ADAPTER_REF:v2.1.0,SU2_VERSION:7.5.1,SU2_ADAPTER_REF:64d4aff,TUTORIALS_REF:340b447" -f loglevel=DEBUG --ref=develop
6565
```
6666

6767
where the `*_REF` should be a specific [commit-ish](https://git-scm.com/docs/gitglossary#Documentation/gitglossary.txt-aiddefcommit-ishacommit-ishalsocommittish).
@@ -286,7 +286,7 @@ volumes:
286286
command: >
287287
/bin/bash -c "id &&
288288
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
289-
{{ run }} | tee {{ case_folder }}.log 2>&1"
289+
{{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"
290290
```
291291
292292
This template defines:

tools/tests/component-templates/bare.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ volumes:
1313
command: >
1414
/bin/bash -c "id &&
1515
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16-
{{ run }} | tee {{ case_folder }}.log 2>&1"
16+
{{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"

tools/tests/component-templates/calculix-adapter.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ volumes:
1313
command: >
1414
/bin/bash -c "id &&
1515
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16-
{{ run }} | tee {{ case_folder }}.log 2>&1"
16+
{{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"

tools/tests/component-templates/fenics-adapter.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ volumes:
1313
command: >
1414
/bin/bash -c "id &&
1515
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16-
{{ run }} | tee {{ case_folder }}.log 2>&1"
16+
{{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"

tools/tests/component-templates/nutils-adapter.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ volumes:
1313
command: >
1414
/bin/bash -c "id &&
1515
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16-
{{ run }} | tee {{ case_folder }}.log 2>&1"
16+
{{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"

tools/tests/component-templates/openfoam-adapter.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ volumes:
1313
command: >
1414
/bin/bash -c "id &&
1515
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16-
openfoam {{ run }} | tee {{ case_folder }}.log 2>&1"
16+
openfoam {{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"

tools/tests/component-templates/python-bindings.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ volumes:
1313
command: >
1414
/bin/bash -c "id &&
1515
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16-
{{ run }} | tee {{ case_folder }}.log 2>&1"
16+
{{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
build:
2+
context: {{ dockerfile_context }}
3+
args:
4+
{% for key, value in build_arguments.items() %}
5+
- {{key}}={{value}}
6+
{% endfor %}
7+
target: su2_adapter
8+
depends_on:
9+
prepare:
10+
condition: service_completed_successfully
11+
volumes:
12+
- {{ run_directory }}:/runs
13+
command: >
14+
/bin/bash -c "id &&
15+
cd '/runs/{{ tutorial_folder }}/{{ case_folder }}' &&
16+
SU2_RUN="/home/precice/SU2_RUN/bin" PYTHONPATH="/home/precice/SU2_RUN/bin:$PYTHONPATH" {{ run }} | tee system-tests_{{ case_folder }}.log 2>&1"

tools/tests/components.yaml

+20
Original file line numberDiff line numberDiff line change
@@ -107,3 +107,23 @@ calculix-adapter:
107107
CALULIX_ADAPTER_REF:
108108
description: Version of Calculix-Adapter to use
109109
default: "master"
110+
111+
su2-adapter:
112+
repository: https://github.com/precice/su2-adapter
113+
template: component-templates/su2-adapter.yaml
114+
build_arguments:
115+
PRECICE_REF:
116+
description: Version of preCICE to use
117+
default: "main"
118+
PLATFORM:
119+
description: Dockerfile platform used
120+
default: "ubuntu_2204"
121+
TUTORIALS_REF:
122+
description: Tutorial git reference to use
123+
default: "master"
124+
SU2_VERSION:
125+
description: Version of SU2 to use
126+
default: "7.5.1"
127+
SU2_ADAPTER_REF:
128+
description: Version of SU2-Adapter to use
129+
default: "master"

tools/tests/dockerfiles/ubuntu_2204/Dockerfile

+28
Original file line numberDiff line numberDiff line change
@@ -126,3 +126,31 @@ RUN git clone https://github.com/precice/calculix-adapter.git && \
126126
git checkout ${CALULIX_ADAPTER_REF} &&\
127127
make CXX_VERSION=${CALULIX_VERSION} ADDITIONAL_FFLAGS="-fallow-argument-mismatch" -j $(nproc) && \
128128
ln -s /home/precice/calculix-adapter/bin/ccx_preCICE /home/precice/.local/bin/ccx_preCICE
129+
130+
FROM python_bindings as su2_adapter
131+
COPY --from=precice /home/precice/.local /home/precice/.local
132+
USER root
133+
RUN apt-get -qq update && \
134+
apt-get -qq install swig
135+
ARG SU2_VERSION
136+
USER precice
137+
138+
# Download and build SU2 (We could also use pre-built binaries from the SU2 releases)
139+
WORKDIR /home/precice
140+
RUN wget https://github.com/su2code/SU2/archive/refs/tags/v${SU2_VERSION}.tar.gz && \
141+
tar xvzf v${SU2_VERSION}.tar.gz && \
142+
rm -fv v${SU2_VERSION}.tar.gz
143+
RUN pip3 install --user mpi4py
144+
ARG SU2_ADAPTER_REF
145+
WORKDIR /home/precice
146+
ENV SU2_RUN="/home/precice/SU2_RUN"
147+
ENV SU2_HOME="/home/precice/SU2-${SU2_VERSION}"
148+
ENV PATH="/home/precice/su2-adapter/run:$SU2_RUN:$PATH"
149+
ENV PYTHONPATH="$SU2_RUN:$PYTHONPATH"
150+
RUN git clone https://github.com/precice/su2-adapter.git && \
151+
cd su2-adapter &&\
152+
git checkout ${SU2_ADAPTER_REF} &&\
153+
./su2AdapterInstall
154+
RUN cd "${SU2_HOME}" &&\
155+
./meson.py build -Denable-pywrapper=true --prefix=$SU2_RUN &&\
156+
./ninja -C build install

tools/tests/reference_versions.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,5 @@ TUTORIALS_REF: "340b447" # April 12, 2024, just before v202404.0
77
PLATFORM: "ubuntu_2204"
88
CALULIX_VERSION: "2.20"
99
CALULIX_ADAPTER_REF: "v2.20.1"
10+
SU2_VERSION: "7.5.1"
11+
SU2_ADAPTER_REF: "64d4aff" # Distribution v2404

tools/tests/systemtests/Systemtest.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
import os
2020

2121

22-
GLOBAL_TIMEOUT = 360
22+
GLOBAL_TIMEOUT = 600
2323
SHORT_TIMEOUT = 10
2424

2525

tools/tests/tests.yaml

+17
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ test_suites:
3939
- fluid-openfoam
4040
- solid-calculix
4141
reference_result: ./perpendicular-flap/reference-results/fluid-openfoam_solid-calculix.tar.gz
42+
su2_test:
43+
tutorials:
44+
- path: perpendicular-flap
45+
case_combination:
46+
- fluid-su2
47+
- solid-fenics
48+
reference_result: ./perpendicular-flap/reference-results/fluid-su2_solid-fenics.tar.gz
4249
elastic_tube_1d_test:
4350
tutorials:
4451
- path: elastic-tube-1d
@@ -78,3 +85,13 @@ test_suites:
7885
- fluid-openfoam
7986
- solid-openfoam
8087
reference_result: ./flow-over-heated-plate/reference-results/fluid-openfoam_solid-openfoam.tar.gz
88+
- path: perpendicular-flap
89+
case_combination:
90+
- fluid-openfoam
91+
- solid-calculix
92+
reference_result: ./perpendicular-flap/reference-results/fluid-openfoam_solid-calculix.tar.gz
93+
- path: perpendicular-flap
94+
case_combination:
95+
- fluid-su2
96+
- solid-fenics
97+
reference_result: ./perpendicular-flap/reference-results/fluid-su2_solid-fenics.tar.gz

0 commit comments

Comments
 (0)