Not compatible with mfem-4.7
- Dominant language
- C++
- Stars
- 245
- Forks
- 36
- Avg merge
- 8d 23h
- Merged PRs (30d)
- 4
Description
Build fails:
```
/usr/local/libexec/ccache/c++ -DH5_BUILT_AS_DYNAMIC_LIB -Dserac_numerics_EXPORTS -I/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../.. -I/usr/ports/science/serac/work/.build/include -isystem /usr/local/include -isystem /usr/local/include/json-c -isystem /usr/local/include/gcc13 -isystem /usr/local/include/conduit -isystem /usr/local/include/lua54 -Wall -Wextra -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -Werror -Wshadow -Wdouble-promotion -Wconversion -Wundef -Wnull-dereference -Wold-style-cast -Wpedantic -Wno-c++2a-extensions -Wunused-private-field -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -DNDEBUG -std=c++17 -fPIC -pthread -DCONDUIT_RELAY_IO_MPI_ENABLED -DCONDUIT_BLUEPRINT_MPI_ENABLED -MD -MT src/serac/numerics/CMakeFiles/serac_numerics.dir/odes.cpp.o -MF src/serac/numerics/CMakeFiles/serac_numerics.dir/odes.cpp.o.d -o src/serac/numerics/CMakeFiles/serac_numerics.dir/odes.cpp.o -c /usr/ports/science/serac/work/serac-33946be/src/serac/numerics/odes.cpp
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/numerics/odes.cpp:7:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/odes.hpp:19:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/boundary_conditions/boundary_condition_manager.hpp:18:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/boundary_conditions/boundary_condition.hpp:23:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/state/finite_element_state.hpp:23:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/state/finite_element_vector.hpp:22:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/functional.hpp:19:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tensor.hpp:2059:
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:737:31: error: expected ';' after expression
737 | mfem::DenseMatrixEigensystem eig_sys(matA);
| ^
| ;
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:737:9: error: no member named 'DenseMatrixEigensystem' in namespace 'mfem'
737 | mfem::DenseMatrixEigensystem eig_sys(matA);
| ~~~~~~^
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:737:32: error: use of undeclared identifier 'eig_sys'
737 | mfem::DenseMatrixEigensystem eig_sys(matA);
| ^
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:738:3: error: use of undeclared identifier 'eig_sys'
738 | eig_sys.Eval();
| ^
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:744:17: error: use of undeclared identifier 'eig_sys'
744 | output[k] = eig_sys.Eigenvalue(k);
| ^
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/tuple_tensor_dual_functions.hpp:748:72: error: use of undeclared identifier 'eig_sys'
748 | tensor phi = make_tensor([&](int i) { return eig_sys.Eigenvector(k)[i]; });
| ^
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/numerics/odes.cpp:7:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/odes.hpp:19:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/boundary_conditions/boundary_condition_manager.hpp:18:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/boundary_conditions/boundary_condition.hpp:23:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/state/finite_element_state.hpp:23:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/physics/state/finite_element_vector.hpp:22:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/functional.hpp:22:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/integral.hpp:15:
In file included from /usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/geometric_factors.hpp:3:
/usr/ports/science/serac/work/serac-33946be/src/serac/infrastructure/../../serac/numerics/functional/element_restriction.hpp:198:42: error: no member named 'Host' in 'axom::MemorySpace'
198 | axom::Array dof_info;
| ~~~~~~~~~~~~~~~~~~~^
```
Contributor guide
Research direction
Start with the reported errors in numerics/functional/tuple_tensor_dual_functions.hpp and numerics/functional/element_restriction.hpp, then reproduce the build of odes.cpp against mfem-4.7. Check the relevant MFEM and Axom compatibility points, and consider the issue done when the project builds successfully with those dependency versions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100