mathlab / pi-bem Goto Github PK
View Code? Open in Web Editor NEWParallel Boundary Element Method solver
License: GNU Lesser General Public License v2.1
Parallel Boundary Element Method solver
License: GNU Lesser General Public License v2.1
Hello, I am trying to install and compile pi-BEM using docker and have not been able to do so.
I used
docker run -v pwd
:/pwd_to_your_own_directory/ -i -t mathlab/deal2lkit:latest bash
It successfully installed and then I tried installing pi-BEM but got the following error. Pleas help.
dealii@2dabcdcc27ca:$ git clone https://github.com/mathLab/pi-BEM.git$ cd pi-BEM
Cloning into 'pi-BEM'...
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (12/12), done.
remote: Total 1886 (delta 4), reused 7 (delta 1), pack-reused 1873
Receiving objects: 100% (1886/1886), 803.27 KiB | 1.38 MiB/s, done.
Resolving deltas: 100% (1426/1426), done.
Checking connectivity... done.
dealii@2dabcdcc27ca:
dealii@2dabcdcc27ca:/pi-BEM$ mkdir build/pi-BEM$ cd build
dealii@2dabcdcc27ca:
dealii@2dabcdcc27ca:/pi-BEM/build$ cmake ..//pi-BEM/build$ make -j4
-- Using the deal.II-9.0.0-pre installation found at /home/dealii/dealii-master
-- Include macro /home/dealii/dealii-master/share/deal.II/macros/macro_deal_ii_query_git_information.cmake
-- Include macro /home/dealii/dealii-master/share/deal.II/macros/macro_deal_ii_invoke_autopilot.cmake
-- Include macro /home/dealii/dealii-master/share/deal.II/macros/macro_deal_ii_setup_target.cmake
-- Include macro /home/dealii/dealii-master/share/deal.II/macros/macro_deal_ii_initialize_cached_variables.cmake
-- Include macro /home/dealii/dealii-master/share/deal.II/macros/macro_deal_ii_add_test.cmake
-- Include macro /home/dealii/dealii-master/share/deal.II/macros/macro_deal_ii_pickup_tests.cmake
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/mpicc
-- Check for working C compiler: /usr/bin/mpicc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/mpicxx
-- Check for working CXX compiler: /usr/bin/mpicxx -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Using the deal2lkit-9.0-pre installation found at /home/dealii/libs/deal2lkit-master
-- Include macro /home/dealii/libs/deal2lkit-master/share/deal2lkit/macros/macro_deal2lkit_initialize_cached_variables.cmake
-- Include macro /home/dealii/libs/deal2lkit-master/share/deal2lkit/macros/macro_deal2lkit_query_git_information.cmake
-- Include macro /home/dealii/libs/deal2lkit-master/share/deal2lkit/macros/macro_deal2lkit_setup_target.cmake
-- Include macro /home/dealii/libs/deal2lkit-master/share/deal2lkit/macros/macro_deal2lkit_invoke_autopilot.cmake
-- Found Release version of deal.II.
-- Found Release version of deal2lkit.
-- Configuring library bem_fma-lib
-- Configuring executable bem_fma_2d
-- Configuring executable bem_fma_3d
-- Found Debug version of deal.II.
-- Found Debug version of deal2lkit.
-- Configuring library bem_fma-lib.g
-- Configuring executable bem_fma_2d.g
-- Configuring executable bem_fma_3d.g
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Configuring done
-- Generating done
-- Build files have been written to: /home/dealii/pi-BEM/build
dealii@2dabcdcc27ca:
Scanning dependencies of target bem_fma-lib
Scanning dependencies of target bem_fma-lib.g
[ 3%] Building CXX object CMakeFiles/bem_fma-lib.g.dir/source/local_expansion_coeff.cc.o
[ 6%] Building CXX object CMakeFiles/bem_fma-lib.g.dir/source/driver.cc.o
[ 10%] Building CXX object CMakeFiles/bem_fma-lib.dir/source/driver.cc.o
[ 13%] Building CXX object CMakeFiles/bem_fma-lib.dir/source/local_expansion_coeff.cc.o
[ 16%] Building CXX object CMakeFiles/bem_fma-lib.dir/source/computational_domain.cc.o
[ 20%] Building CXX object CMakeFiles/bem_fma-lib.g.dir/source/computational_domain.cc.o
In file included from /home/dealii/pi-BEM/source/../include/driver.h:66:0,
from /home/dealii/pi-BEM/source/driver.cc:1:
/home/dealii/pi-BEM/source/../include/bem_problem.h:23:44: fatal error: deal.II/lac/affine_constraints.h: No such file or directory
compilation terminated.
In file included from /home/dealii/pi-BEM/source/../include/driver.h:66:0,
from /home/dealii/pi-BEM/source/driver.cc:1:
/home/dealii/pi-BEM/source/../include/bem_problem.h:23:44: fatal error: deal.II/lac/affine_constraints.h: No such file or directory
compilation terminated.
CMakeFiles/bem_fma-lib.dir/build.make:62: recipe for target 'CMakeFiles/bem_fma-lib.dir/source/driver.cc.o' failed
make[2]: *** [CMakeFiles/bem_fma-lib.dir/source/driver.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMakeFiles/bem_fma-lib.g.dir/build.make:62: recipe for target 'CMakeFiles/bem_fma-lib.g.dir/source/driver.cc.o' failed
make[2]: *** [CMakeFiles/bem_fma-lib.g.dir/source/driver.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 23%] Building CXX object CMakeFiles/bem_fma-lib.g.dir/source/multipole_expansion.cc.o
In file included from /home/dealii/pi-BEM/source/computational_domain.cc:3:0:
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:21: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:21: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:68: error: wrong number of template arguments (2, should be 1)
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
In file included from /usr/include/c++/5/bits/shared_ptr.h:52:0,
from /usr/include/c++/5/memory:82,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/move/algorithm.hpp:33,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/move/move.hpp:32,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant/detail/move.hpp:28,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant/detail/initializer.hpp:23,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant/variant.hpp:30,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant.hpp:17,
from /home/dealii/dealii-master/include/deal.II/base/table_handler.h:30,
from /home/dealii/dealii-master/include/deal.II/base/convergence_table.h:21,
from /home/dealii/pi-BEM/source/../include/computational_domain.h:9,
from /home/dealii/pi-BEM/source/computational_domain.cc:3:
/usr/include/c++/5/bits/shared_ptr_base.h:345:11: note: provided for ‘template class std::shared_ptr’
class shared_ptr;
^
In file included from /home/dealii/pi-BEM/source/computational_domain.cc:3:0:
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:69: error: template argument 1 is invalid
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:69: error: template argument 2 is invalid
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:71: error: expected unqualified-id before ‘>’ token
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
/home/dealii/pi-BEM/source/computational_domain.cc: In member function ‘void ComputationalDomain::refine_and_resize(unsigned int)’:
/home/dealii/pi-BEM/source/computational_domain.cc:628:11: error: ‘normal_to_mesh_projectors’ was not declared in this scope
normal_to_mesh_projectors.push_back(
^
/home/dealii/pi-BEM/source/computational_domain.cc:629:30: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
std::make_shared<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>(
^
/home/dealii/pi-BEM/source/computational_domain.cc:629:30: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
/home/dealii/pi-BEM/source/computational_domain.cc:648:37: error: ‘normal_to_mesh_projectors’ was not declared in this scope
tria.set_manifold(1 + i, *normal_to_mesh_projectors[i]);
^
/home/dealii/pi-BEM/source/computational_domain.cc: In instantiation of ‘ComputationalDomain::~ComputationalDomain() [with int dim = 2]’:
/home/dealii/pi-BEM/source/computational_domain.cc:1191:16: required from here
/home/dealii/pi-BEM/source/computational_domain.cc:55:7: error: ‘class dealii::Triangulation<1, 2>’ has no member named ‘reset_manifold’
tria.reset_manifold(1 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:60:7: error: ‘class dealii::Triangulation<1, 2>’ has no member named ‘reset_manifold’
tria.reset_manifold(11 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:63:3: error: ‘class dealii::Triangulation<1, 2>’ has no member named ‘reset_manifold’
tria.reset_manifold(0);
^
/home/dealii/pi-BEM/source/computational_domain.cc: In instantiation of ‘ComputationalDomain::~ComputationalDomain() [with int dim = 3]’:
/home/dealii/pi-BEM/source/computational_domain.cc:1192:16: required from here
/home/dealii/pi-BEM/source/computational_domain.cc:55:7: error: ‘class dealii::Triangulation<2, 3>’ has no member named ‘reset_manifold’
tria.reset_manifold(1 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:60:7: error: ‘class dealii::Triangulation<2, 3>’ has no member named ‘reset_manifold’
tria.reset_manifold(11 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:63:3: error: ‘class dealii::Triangulation<2, 3>’ has no member named ‘reset_manifold’
tria.reset_manifold(0);
^
In file included from /home/dealii/pi-BEM/source/computational_domain.cc:3:0:
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:21: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:21: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:68: error: wrong number of template arguments (2, should be 1)
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
In file included from /usr/include/c++/5/bits/shared_ptr.h:52:0,
from /usr/include/c++/5/memory:82,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/move/algorithm.hpp:33,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/move/move.hpp:32,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant/detail/move.hpp:28,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant/detail/initializer.hpp:23,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant/variant.hpp:30,
from /home/dealii/dealii-master/include/deal.II/bundled/boost/variant.hpp:17,
from /home/dealii/dealii-master/include/deal.II/base/table_handler.h:30,
from /home/dealii/dealii-master/include/deal.II/base/convergence_table.h:21,
from /home/dealii/pi-BEM/source/../include/computational_domain.h:9,
from /home/dealii/pi-BEM/source/computational_domain.cc:3:
/usr/include/c++/5/bits/shared_ptr_base.h:345:11: note: provided for ‘template class std::shared_ptr’
class shared_ptr;
^
In file included from /home/dealii/pi-BEM/source/computational_domain.cc:3:0:
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:69: error: template argument 1 is invalid
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:69: error: template argument 2 is invalid
/home/dealii/pi-BEM/source/../include/computational_domain.h:281:71: error: expected unqualified-id before ‘>’ token
std::shared_ptr<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>>
^
/home/dealii/pi-BEM/source/computational_domain.cc: In member function ‘void ComputationalDomain::refine_and_resize(unsigned int)’:
/home/dealii/pi-BEM/source/computational_domain.cc:628:11: error: ‘normal_to_mesh_projectors’ was not declared in this scope
normal_to_mesh_projectors.push_back(
^
/home/dealii/pi-BEM/source/computational_domain.cc:629:30: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
std::make_shared<OpenCASCADE::NormalToMeshProjectionManifold<2, 3>>(
^
/home/dealii/pi-BEM/source/computational_domain.cc:629:30: error: ‘NormalToMeshProjectionManifold’ is not a member of ‘dealii::OpenCASCADE’
/home/dealii/pi-BEM/source/computational_domain.cc:648:37: error: ‘normal_to_mesh_projectors’ was not declared in this scope
tria.set_manifold(1 + i, *normal_to_mesh_projectors[i]);
^
/home/dealii/pi-BEM/source/computational_domain.cc: In instantiation of ‘ComputationalDomain::~ComputationalDomain() [with int dim = 2]’:
/home/dealii/pi-BEM/source/computational_domain.cc:1191:16: required from here
/home/dealii/pi-BEM/source/computational_domain.cc:55:7: error: ‘class dealii::Triangulation<1, 2>’ has no member named ‘reset_manifold’
tria.reset_manifold(1 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:60:7: error: ‘class dealii::Triangulation<1, 2>’ has no member named ‘reset_manifold’
tria.reset_manifold(11 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:63:3: error: ‘class dealii::Triangulation<1, 2>’ has no member named ‘reset_manifold’
tria.reset_manifold(0);
^
/home/dealii/pi-BEM/source/computational_domain.cc: In instantiation of ‘ComputationalDomain::ComputationalDomain() [with int dim = 3]’:/pi-BEM/build$
/home/dealii/pi-BEM/source/computational_domain.cc:1192:16: required from here
/home/dealii/pi-BEM/source/computational_domain.cc:55:7: error: ‘class dealii::Triangulation<2, 3>’ has no member named ‘reset_manifold’
tria.reset_manifold(1 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:60:7: error: ‘class dealii::Triangulation<2, 3>’ has no member named ‘reset_manifold’
tria.reset_manifold(11 + i);
^
/home/dealii/pi-BEM/source/computational_domain.cc:63:3: error: ‘class dealii::Triangulation<2, 3>’ has no member named ‘reset_manifold’
tria.reset_manifold(0);
^
CMakeFiles/bem_fma-lib.dir/build.make:110: recipe for target 'CMakeFiles/bem_fma-lib.dir/source/computational_domain.cc.o' failed
make[2]: *** [CMakeFiles/bem_fma-lib.dir/source/computational_domain.cc.o] Error 1
CMakeFiles/Makefile2:136: recipe for target 'CMakeFiles/bem_fma-lib.dir/all' failed
make[1]: *** [CMakeFiles/bem_fma-lib.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
CMakeFiles/bem_fma-lib.g.dir/build.make:110: recipe for target 'CMakeFiles/bem_fma-lib.g.dir/source/computational_domain.cc.o' failed
make[2]: *** [CMakeFiles/bem_fma-lib.g.dir/source/computational_domain.cc.o] Error 1
CMakeFiles/Makefile2:284: recipe for target 'CMakeFiles/bem_fma-lib.g.dir/all' failed
make[1]: *** [CMakeFiles/bem_fma-lib.g.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
dealii@2dabcdcc27ca:
We should remove all references to deal2lkit from the README.md
file and update the instructions.
We should follow the release numbering of deal.II, i.e.,
pi-BEM v9.0.0 -> works with deal.II 9.0.0 and deal2lkit 9.0.0
The test cad_import_and_curvature_refinement
is not working (currently disabled).
I’m trying to install your parallel BEM solver at the moment and am running into some problems. I’d like to build it from source and got all the prerequisites (METIS, Trilinos, dealii and deal2lkit) already. However when running cmake in the build folder of pi-BEM, I get an error message.
This is my cmake call:
cmake -DDEAL_II_DIR=/home/christopher/software/deal9.0.0 -Ddeal2lkit_DIR=/home/christopher/repositories/deal2lkit/build/cmake/config ../
This is the error message:
-- Using the deal.II-9.0.0 installation found at /home/christopher/software/deal9.0.0
-- Include macro /home/christopher/software/deal9.0.0/share/deal.II/macros/macro_deal_ii_add_test.cmake
-- Include macro /home/christopher/software/deal9.0.0/share/deal.II/macros/macro_deal_ii_initialize_cached_variables.cmake
-- Include macro /home/christopher/software/deal9.0.0/share/deal.II/macros/macro_deal_ii_invoke_autopilot.cmake
-- Include macro /home/christopher/software/deal9.0.0/share/deal.II/macros/macro_deal_ii_pickup_tests.cmake
-- Include macro /home/christopher/software/deal9.0.0/share/deal.II/macros/macro_deal_ii_query_git_information.cmake
-- Include macro /home/christopher/software/deal9.0.0/share/deal.II/macros/macro_deal_ii_setup_target.cmake
-- Using the deal2lkit-9.0-pre installation found at /home/christopher/repositories/deal2lkit
CMake Error at CMakeLists.txt:64 (D2K_INITIALIZE_CACHED_VARIABLES):
Unknown CMake command "D2K_INITIALIZE_CACHED_VARIABLES".
-- Configuring incomplete, errors occurred!
See also "/home/christopher/repositories/pi-BEM/build/CMakeFiles/CMakeOutput.log".
I hope you can help me out on this. I’m not sure about the deal2lkit_DIR, but this It is the folder in which the deal2lkitConfig.cmake is stored. One additional note: My deal2lkit installation path is not the default one. Maybe this is an issue, too.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.