gridap / GridapGmsh.jl

Gmsh generated meshes for Gridap
MIT License
42 stars 19 forks source link

Interference with gmsh_jll #79

Open DanielBoigk opened 6 months ago

DanielBoigk commented 6 months ago

So, I was creating a simple file: circle.geo:

`cellSize = 0.05; radius = 1; Point(1) = {0, 0, cellSize}; Point(2) = {-radius, 0, cellSize}; Point(3) = {0, radius, cellSize}; Point(4) = {radius, 0, cellSize}; Point(5) = {0, -radius, cellSize}; Circle(6) = {2, 1, 3}; Circle(7) = {3, 1, 4}; Circle(8) = {4, 1, 5}; Circle(9) = {5, 1, 2}; Line Loop(10) = {6, 7, 8, 9}; Plane Surface(11) = {10};

// Mark the boundary of the circular mesh Physical Line("Boundary") = {6, 7, 8, 9}; Physical Surface("Disk") = {11}; // Mesh generation commands (if needed) Mesh 2;`

I was unable to get any .geo or the corresponding .msh file to work. Until I setup a new environment with just Gridap and GridapGmsh. Then it worked. After installing FerriteGmsh into this environment it stopped working again. Is there a way to have both FerriteGmsh and GridapGmsh in the same Environment?

Edit: The Enviroment where it runs gives: Pkg.status("gmsh_jll")

gives the output: No Matches in~/Code/Julia/Env_Only_Gridap/Project.toml``

JordiManyer commented 6 months ago

Hey @DanielBoigk , I'm afraid I do not know enough about FerriteGmsh to understand what is going on.

I would however have a look at where both packages are trying to get gmsh from, i.e where are they looking for the binaries. Maybe that is the cause of the issue. That error you mention looks like one of the packages might be having trouble finding the artifacts.

If you manage to find where the incompatibility is, I'll be happy to accept a PR with the fixes.

DanielBoigk commented 6 months ago

Thanks for the answer: I try to give context:

If I do this:

```julia using Pkg # Fresh Environment Pkg.activate("FreshEnvironment01") Pkg.instantiate() Pkg.add("Gridap") Pkg.add("GridapGmsh") using Gridap using GridapGmsh model = GmshDiscreteModel("circle.geo") ```

it works. However this:

```julia using Pkg # Fresh Environment Pkg.activate("FreshEnvironment02") Pkg.instantiate() Pkg.add("gmsh_jll") Pkg.add("Gridap") Pkg.add("GridapGmsh") using Gridap using GridapGmsh model = GmshDiscreteModel("circle.geo") ```

Leads to an Error: image

So Ferrite isn't the Problem. gmsh_jll seems to be.

I'm using vanilla arch both my source for julia and gmsh is pacman.

JordiManyer commented 6 months ago

I would have a look at what version of gmsh_jll is loaded, and if that changes depending on the packages you have.