fem issueshttps://gitlab.onelab.info/gmsh/fem/-/issues2024-03-21T11:16:46Zhttps://gitlab.onelab.info/gmsh/fem/-/issues/16fatal error: Bessel.h: No such file or directory when compiling example helmh...2024-03-21T11:16:46Zgerard henryfatal error: Bessel.h: No such file or directory when compiling example helmholtz2d/waveguidehello,
```
/usr/bin/c++ -I/home/me/APPS/gmsh/gmsh/libinstallgetdp/include -I/home/me/APPS/gmsh/gmsh/../../gmshfem/include -I/home/me/APPS/gmsh/gmsh/../../gmshfem/include/gmshfem -I/home/me/APPS/gmsh/petsc/include -I/home/me/APPS/gmsh/p...hello,
```
/usr/bin/c++ -I/home/me/APPS/gmsh/gmsh/libinstallgetdp/include -I/home/me/APPS/gmsh/gmsh/../../gmshfem/include -I/home/me/APPS/gmsh/gmsh/../../gmshfem/include/gmshfem -I/home/me/APPS/gmsh/petsc/include -I/home/me/APPS/gmsh/petsc/openmpi-mumps/include -I/home/me/APPS/gmsh/slepc/include -I/home/me/APPS/gmsh/slepc/openmpi-mumps/include -Wall -Wno-unused-but-set-variable -Wno-deprecated-declarations -fopenmp -MD -MT CMakeFiles/example.dir/main.cpp.o -MF CMakeFiles/example.dir/main.cpp.o.d -o CMakeFiles/example.dir/main.cpp.o -c /home/me/APPS/gmsh/fem/examples/helmholtz2d/waveguide/longitudinal/main.cpp
/home/me/APPS/gmsh/fem/examples/helmholtz2d/waveguide/longitudinal/main.cpp:3:10: fatal error: Bessel.h: No such file or directory
3 | #include <Bessel.h>
| ^~~~~~~~~~
compilation terminated.
```
as i found Bessel.h in contrib/, my workaround is just to link it in include/:
```
$ ln -s $PROG/fem/contrib/bessel/Bessel.h $PROG/libinstallgetdp/include
```
i think it's a problem during getdp install, or not?https://gitlab.onelab.info/gmsh/fem/-/issues/15Build fails on Windows via Cygwin2023-12-22T17:07:57ZStuart BarthBuild fails on Windows via CygwinFollowing the instructions at https://gitlab.onelab.info/gmsh/fem/-/wikis/Compilation on Windows 11 via Cygwin.
Installation of Petsc and Gmsh goes well.
At step: "Build and install GmshFEM:" the "make install" command fails with 2 error...Following the instructions at https://gitlab.onelab.info/gmsh/fem/-/wikis/Compilation on Windows 11 via Cygwin.
Installation of Petsc and Gmsh goes well.
At step: "Build and install GmshFEM:" the "make install" command fails with 2 errors:
<details><summary>Make Error Text</summary>
`[ 25%] Building CXX object CMakeFiles/shared.dir/src/dofs/DofsFactory.cpp.o
In file included from /usr/lib/gcc/x86_64-w64-mingw32/11/include/x86gprintrin.h:41,
from /usr/lib/gcc/x86_64-w64-mingw32/11/include/x86intrin.h:27,
from /home/stuar/fem/contrib/robin-hood-hashing/robin_hood.h:139,
from /home/stuar/fem/src/field/FieldInterface.h:26,
from /home/stuar/fem/src/dofs/DofsFactory.h:9,
from /home/stuar/fem/src/dofs/DofsFactory.cpp:6:
/usr/lib/gcc/x86_64-w64-mingw32/11/include/bmiintrin.h: In member function ‘void robin_hood::detail::Table<IsFlat, MaxLoadFactor100, Key, T, Hash, KeyEqual>::Iter<IsConst>::fastForward() [with bool IsConst = false; bool IsFlat = true; long long unsigned int MaxLoadFactor100 = 80; Key = gmshfem::dofs::Dof*; T = float; Hash = gmshfem::common::hash<gmshfem::dofs::Dof*>; KeyEqual = gmshfem::common::equal_to<gmshfem::dofs::Dof*>]’:
/usr/lib/gcc/x86_64-w64-mingw32/11/include/bmiintrin.h:172:1: error: inlining failed in call to ‘always_inline’ ‘long long unsigned int _tzcnt_u64(long long unsigned int)’: target specific option mismatch
172 | _tzcnt_u64 (unsigned long long __X)
| ^~~~~~~~~~
In file included from /home/stuar/fem/src/field/FieldInterface.h:26,
from /home/stuar/fem/src/dofs/DofsFactory.h:9,
from /home/stuar/fem/src/dofs/DofsFactory.cpp:6:
/home/stuar/fem/contrib/robin-hood-hashing/robin_hood.h:149:68: note: called from here
149 | # define ROBIN_HOOD_COUNT_TRAILING_ZEROES(x) ROBIN_HOOD(CTZ)(x)
| ^
/home/stuar/fem/contrib/robin-hood-hashing/robin_hood.h:1282:24: note: in expansion of macro ‘ROBIN_HOOD_COUNT_TRAILING_ZEROES’
1282 | auto inc = ROBIN_HOOD_COUNT_TRAILING_ZEROES(n) / 8;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/lib/gcc/x86_64-w64-mingw32/11/include/x86gprintrin.h:41,
from /usr/lib/gcc/x86_64-w64-mingw32/11/include/x86intrin.h:27,
from /home/stuar/fem/contrib/robin-hood-hashing/robin_hood.h:139,
from /home/stuar/fem/src/field/FieldInterface.h:26,
from /home/stuar/fem/src/dofs/DofsFactory.h:9,
from /home/stuar/fem/src/dofs/DofsFactory.cpp:6:
/usr/lib/gcc/x86_64-w64-mingw32/11/include/bmiintrin.h:172:1: error: inlining failed in call to ‘always_inline’ ‘long long unsigned int _tzcnt_u64(long long unsigned int)’: target specific option mismatch
172 | _tzcnt_u64 (unsigned long long __X)
| ^~~~~~~~~~
In file included from /home/stuar/fem/src/field/FieldInterface.h:26,
from /home/stuar/fem/src/dofs/DofsFactory.h:9,
from /home/stuar/fem/src/dofs/DofsFactory.cpp:6:
/home/stuar/fem/contrib/robin-hood-hashing/robin_hood.h:149:68: note: called from here
149 | # define ROBIN_HOOD_COUNT_TRAILING_ZEROES(x) ROBIN_HOOD(CTZ)(x)
| ^
/home/stuar/fem/contrib/robin-hood-hashing/robin_hood.h:1282:24: note: in expansion of macro ‘ROBIN_HOOD_COUNT_TRAILING_ZEROES’
1282 | auto inc = ROBIN_HOOD_COUNT_TRAILING_ZEROES(n) / 8;
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/shared.dir/build.make:496: CMakeFiles/shared.dir/src/dofs/DofsFactory.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1198: CMakeFiles/shared.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
`
</details>https://gitlab.onelab.info/gmsh/fem/-/issues/14Multi RHS and Dirichlet2023-10-12T14:42:03ZBoris MartinMulti RHS and DirichletWhen using solveAll(), Dirichlet conditions are set to zero.When using solveAll(), Dirichlet conditions are set to zero.https://gitlab.onelab.info/gmsh/fem/-/issues/11formulation and high order Lagrange2022-09-19T20:43:09ZGuillaume Demesyformulation and high order LagrangeDear Anthony,
I am facing a couple issues and have new questions about my previous grating example (attached[grating2D.cpp](/uploads/0228fc26ca5da4ad20093defe53576f4/grating2D.cpp)).
- The commented formmulation in the attached code w...Dear Anthony,
I am facing a couple issues and have new questions about my previous grating example (attached[grating2D.cpp](/uploads/0228fc26ca5da4ad20093defe53576f4/grating2D.cpp)).
- The commented formmulation in the attached code was working fine in gmshfem @ commit 1b257f97, and now it fails without error (getting nans), likely during assembly. I managed to fix it by packing most of the elementary operation (* and /) of the formulation into "piecewise objects" as ScalarPiecewiseFunction.
More precisely, the old verbose version :
`formulation.integral(-1./mur * grad(dof(u2d)), grad(tf(u2d)) , volscat | volsubs | volsuper , gauss);`
`formulation.integral(-PML_T_inv * grad(dof(u2d)), grad(tf(u2d)) , volpmls , gauss);`
fails where the following works :
`TensorPiecewiseFunction< Complex > inv_mur_tilde;`
`inv_mur_tilde.addFunction(PML_T_inv,volpmls);`
`inv_mur_tilde.addFunction(TensorId , volscat | volsubs | volsuper);`
`formulation.integral(-inv_mur_tilde * grad(dof(u2d)) , grad(tf(u2d)) , omega , gauss);`
- There is something off with P3 Lagrange order 3 (+ periodic conditions?): the attached example converges nicely (I'm computing the Fresnel reflexion/transmission coefficients of a plane wave onto a dielectric interface so R+T shoud be ~1) with order=1 and order=2 and gives wrong results for order>=3...
- a detail : the example uses `userDefinedParameter` to conviniently set common line arguments. The arguments are nicely taken into account, but I'm getting warnings at the end of the program output :
`WARNING! There are options you set that were not used!`
`WARNING! could be spelling mistake, etc!`
`There are 3 unused database options. They are:`
`Option left: name:-...`
- Is there a way to set the FEM interpolation order independently of the geometric order (eg P2 or P3 with order 1 planar elements)? For now the FEM order follows the geo one by using "gmsh::model::mesh::setOrder(order);"
Sorry, that's quite a lot of questions !? Of course I can make more tests if you need !
Kind regards,
Guillaume