Problems with the identifySubdomains tool

I am studying the H2M Liakopoulos benchmark. When I use the identifySubdomains tool, the N Arrays of my VTU file is 3, while in the benchmark, the N Arrays of the VTU file is 2. When I run ogs, it prompts “TH2M process does not support given dimension.”


I believe the issue mentioned above is related to the Extract Boundary tool. The N Arrays of the Boundary.vtu file extracted by the Extract Boundary tool is 3.

Hi Sherlock,

the TH2M process runs on 2D and 3D domains.
The error message “TH2M process does not support given dimension.” is printed, e.g., for 1D meshes.
Note that the order of meshes matters in the prj file: The first mesh is the domain (bulk mesh), subsequent meshes are used, e.g. for boundary condtions.
Did you forget to specify the mesh for the domain? Or did you specify that mesh not as the first one in the list of all meshes?

Best regards,
Christoph

Hello, Christoph.

Thank you very much for your help.
I did not change the prj file; I just wanted to rebuild the vtu file.
However, the vtu file I created using the method in the Mesh Tutorial and the identifySubdomains tool has 3 arrays, while the domain.vtu in the example has 2 arrays.I don’t know how to change the values of N arrays.

Best wishes,
Sherlock

Hi Sherlock,

could you please post all files (all meshes, and the prj file), here. Then I can take a closer look.
I don’t think that the number of fields existing in that mesh is relevant. The extra bulk_face_ids provides extra information that is most likely not used by OGS in this example. Its presence should not break anything.

Best regards,
Christoph

The error has nothing to do with (the number of) arrays. The error is triggered according to the source code if the bulk mesh dimension is something else than 2 or 3. I.e., the issue is probably that it reads a 1d mesh or single 1d elements as a bulk mesh/elements. Just check the first mesh you read in e.g. with paraview and look whether it contains at least one 1d element.

P.s.: The additional array is just a result of a newer version of ExtractBoundary it should not have any impact on the simulation results.

TH2M.zip (12.3 KB)
Thank you for all the help, I have successfully modified the mesh file of the case using gmsh and ran the case. However, I have not resolved the issue.Here are my .prj and .vtu files.

Hi Sherlock,

your domain.vtu consists entirely of 1D elements:

As Jörg said, that’s the problem.
The simulation domain must be 2D or 3D.

It looks like your domain.vtu is the result of the ExtractBoundary tool, i.e., only the boundary of the bulk mesh. But you need the bulk mesh itself.

Best regards,
Christoph