diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 5e4441e3..5a2d3ad4 100755 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -45,6 +45,7 @@ ADD_LBPM_EXECUTABLE( TestIonModel ) ADD_LBPM_EXECUTABLE( TestNernstPlanck ) ADD_LBPM_EXECUTABLE( TestPNP_Stokes ) ADD_LBPM_EXECUTABLE( TestMixedGrad ) +ADD_LBPM_EXECUTABLE( TestCrusher ) diff --git a/tests/TestCrusher.cpp b/tests/TestCrusher.cpp new file mode 100644 index 00000000..83f55b25 --- /dev/null +++ b/tests/TestCrusher.cpp @@ -0,0 +1,43 @@ +#include +#include +#include "common/ScaLBL.h" +#include "common/MPI.h" + + +int main(int argc, char **argv) +{ + Utilities::startup( argc, argv, true ); + Utilities::MPI comm( MPI_COMM_WORLD ); + int rank = comm.getRank(); + { + auto filename = argv[1]; + auto input_db = std::make_shared( filename ); + auto db = input_db->getDatabase( "Domain" ); + auto Dm = std::shared_ptr(new Domain(db,comm)); + int Nx = db->getVector( "n" )[0] + 2; + int Ny = db->getVector( "n" )[1] + 2; + int Nz = db->getVector( "n" )[2] + 2; + char LocalRankString[8]; + sprintf(LocalRankString,"%05d",rank); + char LocalRankFilename[40]; + sprintf(LocalRankFilename,"ID.%05i",rank); + auto id = new char[Nx*Ny*Nz]; + for (int k=0;kid[n] = id[n]; + } + } + } + Dm->CommInit(); + std::cout << "step 1" << std::endl << std::flush; + } + std::cout << "step 2" << std::endl << std::flush; + comm.barrier(); + std::cout << "step 3" << std::endl << std::flush; + Utilities::shutdown(); + std::cout << "step 4" << std::endl << std::flush; + return 0; +}