Add the DuMux adapter and Micro-Manager into the system tests workflows#758
Add the DuMux adapter and Micro-Manager into the system tests workflows#758
Conversation
IshaanDesai
left a comment
There was a problem hiding this comment.
We indeed need to set the Micro Manager version to develop. @Fujikawas, we had this at some point, right? Did we remove it?
We have |
|
The (partially undocumented) intention of these variables is generally the following:
Since the Micro-Manager is a stage in the Dockerfile, and it is built from its repository, I would rename the I will also add this to the documentation. |
|
@Fujikawas any idea why this run failed with both DuMux cases having issues building DuMux? Sample log: system-tests_macro-dumux.log |
|
Seems like the incorrect adapter version got used again. |
|
Ah, I see, I thought that using the default components in that job run would have been enough. In another run with the latest components, the free-flow-over-porous-media worked, while the two-scale-heat-conduction failed at the numerical comparisons step, but I think that all of the absolute differences are too small to consider these relative differences valid: stdout.log Until we find a better solution for #393, I suggest that we exclude this test from the We could also add it again after adding an override option to run the tests but not compare results (partially related to #404). |
| case_combination: | ||
| - macro-dumux | ||
| - micro-dumux | ||
| reference_result: ./two-scale-heat-conduction/reference-results/macro-dumux_micro-dumux.tar.gz |
There was a problem hiding this comment.
Are we fine with this for now? See explanation in #758 (comment)
Without this test in the release_test suite, the Micro-Manager will not be covered by any nightly test. I would still keep it in the dumux_test so that it is triggered in dumux-adapter PRs.
There was a problem hiding this comment.
I also added a micro_manager_test test suite in 6af9ebd, which will be the target of a system tests workflow in the Micro-Manager repository.
There was a problem hiding this comment.
Is there a place I can see the relative measure of comparison or something similar? I want to find out how small too small is, and why the comparison now fails.
There was a problem hiding this comment.
We don't have some single-number metric. I suggested that to fieldcompare, but this seemed to be complicated at the time.
Looking at the stdout.log, here are some examples:
field-compare-1 | Comparing '/runs/two-scale-heat-conduction_macro-dumux-micro-dumux_2026-03-31-085933/precice-exports/Macro-Mesh-Micro-Manager.dt2.vtk'
field-compare-1 | and '/runs/two-scale-heat-conduction_macro-dumux-micro-dumux_2026-03-31-085933/reference-results-unpacked/macro-dumux_micro-dumux/Macro-Mesh-Micro-Manager.dt2.vtk'
field-compare-1 | Reading '/runs/two-scale-heat-conduction_macro-dumux-micro-dumux_2026-03-31-085933/precice-exports/Macro-Mesh-Micro-Manager.dt2.vtk'
field-compare-1 | Reading '/runs/two-scale-heat-conduction_macro-dumux-micro-dumux_2026-03-31-085933/reference-results-unpacked/macro-dumux_micro-dumux/Macro-Mesh-Micro-Manager.dt2.vtk'
field-compare-1 | -- Comparing the field 'K00': FAILED
field-compare-1 | -- Report: Deviation above tolerance detected -> [0.5141269880086446] vs. [0.5141186814702282] ([0.00] %)
field-compare-1 | -- Predicate: DefaultEquality (abs_tol: 0., rel_tol: 3.e-07)
field-compare-1 | -- Comparing the field 'K01': FAILED
field-compare-1 | -- Report: Deviation above tolerance detected -> [-2.8569661945372316e-17] vs. [-3.152737885150525e-15] ([-10935.26] %)
field-compare-1 | -- Predicate: DefaultEquality (abs_tol: 0., rel_tol: 3.e-07)
field-compare-1 | -- Comparing the field 'K10': FAILED
field-compare-1 | -- Report: Deviation above tolerance detected -> [1.0382603233439358e-15] vs. [-1.382181217583312e-15] ([233.12] %)
field-compare-1 | -- Predicate: DefaultEquality (abs_tol: 0., rel_tol: 3.e-07)
This means that, at dt2:
K00differed at the 5th decimal (smaller than the printed0.00%)K01values are extremely close to zero (e-15/e-17)K10the same (e-15)
The relative difference is in parentheses, but it is rather useless.
We could also already experiment with an absolute tolerance computed based on the maximum, see #393 (comment)
There was a problem hiding this comment.
@IshaanDesai Actually, could this result (again in dt2) show that something in the functionality has recently changed?
field-compare-1 | -- Comparing the field 'Active-Steps': FAILED
field-compare-1 | -- Report: Deviation above tolerance detected -> [1.] vs. [0.] ([100.00] %)
field-compare-1 | -- Predicate: DefaultEquality (abs_tol: 0., rel_tol: 3.e-07)
There was a problem hiding this comment.
The data K01 and K10 are expected to be close to zero, but the difference in K00 concerns me, as it suggests the result of the two-scale problem has changed. This is probably because of the change in Active-Steps, which should ideally not change at all. All these differences point to the Micro Manager. Let me check the latest changes and try to find potential culprits.
|
@IshaanDesai ready for review, you can use this output (without the |
IshaanDesai
left a comment
There was a problem hiding this comment.
I do not fully understand all the changes, but I see they are consistent.
IshaanDesai
left a comment
There was a problem hiding this comment.
The failure in the comparison of the run results to the reference results is expected. I will handle this in a separate PR. Lets merge this.
Integrates the DuMux adapter tests into the regular system tests:
two-scale-heat-conductioncase to therelease_testsuiteFollow-up of #696 and #737.
The system tests run on this PR used the
tests.ymlfrom thedevelopbranch. Here isanother runthat takes thetests.ymlfrom this branch as well.Further runs: