IllinoisRocstar / Rocstar-legacy

Rocstar multiphysics simulation application
Other
20 stars 20 forks source link

Module integrity issues #5

Open Hanmeimei521 opened 6 years ago

Hanmeimei521 commented 6 years ago

Does anyone compile particles module successfully? This module does not compiled as a part of Rocstar!!

msafdari1234 commented 6 years ago

Dear user,

Thanks for reaching out. The build system for Rocstar has been ported to CMAKE and not all of the modules come with Rocstar are being compiled with the new build system. We are in the process of modernizing the code and its build system. We would be able to give you a better response within a few month.

Regards, Masoud

Rocstar Development Team

On Tue, Jun 12, 2018 at 1:48 AM, Hanmeimei521 notifications@github.com wrote:

Does anyone compile particles module successfully? This module does not compiled as a part of Rocstar!!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/IllinoisRocstar/Rocstar/issues/5, or mute the thread https://github.com/notifications/unsubscribe-auth/AGPs_NJ5CMEkx8I_YvKj_vnDl_K9aVz8ks5t72RDgaJpZM4Uj3gW .

Hanmeimei521 commented 6 years ago

Thank you and hope to receive your good news within a few months. :)

multiplemonomials commented 5 years ago

I've got your good news! I successfully built the particles module (and all the other optional Rocflu/Rocflo modules except rocrad) on my fork of Rocstar. I'm rewriting Rocstar's CMake build system to fix a lot of the issues we encountered here at USC Rocket Propulsion Lab, and this was a pretty easy fix. I've also managed to de-weirdify things by quite a bit in general, and you should get a lot less obscure errors out of the build system.

aerospaceDoDo commented 3 years ago

I've got your good news! I successfully built the particles module (and all the other optional Rocflu/Rocflo modules except rocrad) on my fork of Rocstar. I'm rewriting Rocstar's CMake build system to fix a lot of the issues we encountered here at USC Rocket Propulsion Lab, and this was a pretty easy fix. I've also managed to de-weirdify things by quite a bit in general, and you should get a lot less obscure errors out of the build system.

Hello! I have tried to install your fork of Rocstar, but met some errors when I used cmake, just as below: CMake Error at cmake-buildscripts/LibraryTracking.cmake:151 (message): Incorrect usage. At least one LIBRARY should be provided. Call Stack (most recent call first): cmake-buildscripts/MPIConfig.cmake:127 (import_libraries) CMakeLists.txt:17 (include) Can you tell me how to fix this error? Thanks a lot.

multiplemonomials commented 3 years ago

Man I haven't looked at this in ages... It looks like you enabled MPI but CMake didn't successfully find MPI on your machine? Can you post the full CMake output?

aerospaceDoDo commented 3 years ago

Man I haven't looked at this in ages... It looks like you enabled MPI but CMake didn't successfully find MPI on your machine? Can you post the full CMake output?

Of course. Here is the CmakeOuput file. CMakeOutput.log

multiplemonomials commented 3 years ago

Oh, did you set the compilers to the MPI compiler wrappers (mpicxx, mpif90, etc)? You don't want to do that, this build system isn't set up for it. You want to pass the actual compilers (g++, gfortran, etc), and then let CMake find MPI itself.

aerospaceDoDo commented 3 years ago

Oh, did you set the compilers to the MPI compiler wrappers (mpicxx, mpif90, etc)? You don't want to do that, this build system isn't set up for it. You want to pass the actual compilers (g++, gfortran, etc), and then let CMake find MPI itself.

Yes, I have set the compilers CC=mpicc, CXX=mpicxx, FC=mpif90 in the environment variables according to the Rocstar tutorial. Did you mean that it doesn't need to set these environment variables in your fork of Rocstar?

multiplemonomials commented 3 years ago

Oh yeah, I didn't realize it said to do that. With my fork, you shouldn't set these. So, unset them, delete your build dir, and run cmake again (making sure to pass the -DMPI=TRUE argument to enable MPI).

aerospaceDoDo commented 3 years ago

I'm appreciate for your instructions. However, there are some new errors occured:

CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: HDF4_MFHDF_LIBRARY linked by target "cmTC_2ceeb" in directory /home/dodo/Rocstar_Build/CMakeFiles/CMakeTmp

CMake Error at /usr/share/cmake-3.16/Modules/CheckFunctionExists.cmake:90 (try_compile): Failed to configure test project build system. Call Stack (most recent call first): cmake-buildscripts/FindHDF4.cmake:44 (check_function_exists) cmake-buildscripts/3rdPartyTools.cmake:216 (find_package) CMakeLists.txt:37 (include)

I have already installed the hdf4, and I don't know why this error occured. @multiplemonomials CMakeOutput.log

multiplemonomials commented 3 years ago

Oh, can you send me the standard output from cmake that it prints in terminal?

mmehrabadi commented 3 years ago

@aerospaceDoDo Thank you for your interest in Rocstar. I assume that you are trying to use a branch off the Rocstar Legacy code. We have a new repository for the most up-to-date Rocstar software (https://github.com/IllinoisRocstar/Rocstar) that you might find useful. In the new code we have added new flow solvers based on the OpenFOAM library as well as a structure solver based on the Calculix code. You can find these codes in our repository (https://github.com/IllinoisRocstar). Utilizing theses, now we can perform FSI simulations with the new code. Some of the features and solvers of the legacy code are now obsolete and not supported any more. Some features are still available but not yet tested in the code. In the new code, we have improved the CMake substantially, and installation has become much more easier. However there are still minor issues that need to be addressed based on the feedback we receive from our users.

Please note that for any of the codes, CGNS 3.3.0 is needed, and newer versions won't work with Rocstar since CGNS backward compatibility has some serious issues. We are in the process of migrating the IO to HDF5 format, and get rid of CGNS. But it is not finished yet.

aerospaceDoDo commented 3 years ago

Oh, can you send me the standard output from cmake that it prints in terminal?

Of course. @multiplemonomials Here is the output prints in the terminal:

-- ** -- Starting configuration of Rocstar version 1.0... -- CMake Version: 3.16.3 -- For how to use this build system, please read this wiki: -- http://ambermd.org/pmwiki/pmwiki.php/Main/CMake -- For a list of important CMake variables, check here: -- http://ambermd.org/pmwiki/pmwiki.php/Main/CMake-Common-Options -- ** CMake Deprecation Warning at cmake-buildscripts/Policies.cmake:44 (cmake_policy): The OLD behavior for policy CMP0058 will be removed from a future version of CMake.

The cmake-policies(7) manual explains that the OLD behaviors of all policies are deprecated and that a policy should be set to OLD only under specific short-term circumstances. Projects should be ported to the NEW behavior and not rely on setting a policy to OLD. Call Stack (most recent call first): cmake-buildscripts/AmberBuildSystemInit.cmake:51 (include) CMakeLists.txt:8 (include)

-- The C compiler identification is GNU 4.8.5 -- The CXX compiler identification is GNU 4.8.5 -- The Fortran compiler identification is GNU 4.8.5 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- 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/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Check for working Fortran compiler: /usr/bin/gfortran -- Check for working Fortran compiler: /usr/bin/gfortran -- works -- Detecting Fortran compiler ABI info -- Detecting Fortran compiler ABI info - done -- Checking whether /usr/bin/gfortran supports Fortran 90 -- Checking whether /usr/bin/gfortran supports Fortran 90 -- yes -- Detecting Fortran/C Interface -- Detecting Fortran/C Interface - Found GLOBAL and MODULE mangling -- Found MPI_C: /usr/lib/x86_64-linux-gnu/libmpich.so (found version "3.1") -- Found MPI_CXX: /usr/lib/x86_64-linux-gnu/libmpichcxx.so (found version "3.1") -- Found MPI_Fortran: /usr/lib/x8664-linux-gnu/libmpichfort.so (found version "3.1") -- Found MPI: TRUE (found version "3.1")
-- MPI C Compiler: /usr/bin/mpicc -- MPI CXX Compiler: /usr/bin/mpicxx -- MPI Fortran Compiler: /usr/bin/mpif90 -- If these are not the correct MPI wrappers, then set MPI
_COMPILER to the correct wrapper and reconfigure. -- Performing Test SUPPORTS_WNO_UNUSED_LOCAL_TYPEDEFS -- Performing Test SUPPORTS_WNO_UNUSED_LOCAL_TYPEDEFS - Success -- Looking for mkstemp -- Looking for mkstemp - found -- Checking whether to use built-in libraries... -- Unable to locate MKL_HOME for your system. To use MKL, set MKL_HOME to point to your MKL installation location. -- Performing Test SUPPORTS_NO_AS_NEEDED -- Performing Test SUPPORTS_NO_AS_NEEDED - Success -- Looking for dlopen in dl -- Looking for dlopen in dl - found -- Looking for pthread.h -- Looking for pthread.h - found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE
-- Could NOT find MKL (missing: MKL_INTERFACE_LIBRARY MKL_SEQUENTIAL_THREADING_LIBRARY MKL_CORE_LIBRARY) -- Looking for Fortran sgemm -- Looking for Fortran sgemm - found -- A library with BLAS API found. -- Looking for Fortran cheev -- Looking for Fortran cheev - found -- A library with LAPACK API found. -- Performing Test STDLIB_HAVE_SIN -- Performing Test STDLIB_HAVE_SIN - Failed -- Performing Test LIBM_HAVE_SIN -- Performing Test LIBM_HAVE_SIN - Success -- Found math library functions in math library "/usr/lib/x86_64-linux-gnu/libm.so". -- Found JPEG: /usr/lib/x86_64-linux-gnu/libjpeg.so (found version "80") -- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11") -- Looking for Hopen CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: HDF4_MFHDF_LIBRARY linked by target "cmTC_3346a" in directory /home/dodo/Rocstar_Build/CMakeFiles/CMakeTmp

CMake Error at /usr/share/cmake-3.16/Modules/CheckFunctionExists.cmake:90 (try_compile): Failed to configure test project build system. Call Stack (most recent call first): cmake-buildscripts/FindHDF4.cmake:44 (check_function_exists) cmake-buildscripts/3rdPartyTools.cmake:216 (find_package) CMakeLists.txt:37 (include)

-- Configuring incomplete, errors occurred! See also "/home/dodo/Rocstar_Build/CMakeFiles/CMakeOutput.log". See also "/home/dodo/Rocstar_Build/CMakeFiles/CMakeError.log".

aerospaceDoDo commented 3 years ago

@mmehrabadi Can the new code solve the problem including particle flow?

mmehrabadi commented 3 years ago

@mmehrabadi Can the new code solve the problem including particle flow?

@aerospaceDoDo Not currently.

multiplemonomials commented 3 years ago

@aerospaceDoDo OK I think I figured out what's causing the issue. Try deleting your build directory, pulling the latest version of my fork, and building again.

aerospaceDoDo commented 3 years ago

@aerospaceDoDo OK I think I figured out what's causing the issue. Try deleting your build directory, pulling the latest version of my fork, and building again.

Thanks a lot for your help. However, when I try to make the code, another error occured about the IRAD:

[ 21%] Building CXX object Rocon/CMakeFiles/Rocon.dir/src/RemeshFunctions.C.o /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C: In function ‘void TRAIL_RemeshRunDirSetup(const string&, double, MPI_Comm, bool)’: /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C:62:35: error: ‘IRAD::Sys’ has not been declared std::string rocstarrundir(IRAD::Sys::CWD()); ^ /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C:80:13: error: ‘IRAD::Sys’ has not been declared IRAD::Sys::MakeDirectory(rocremdir.c_str()); ^ /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C:85:11: error: ‘IRAD::Sys’ has not been declared IRAD::Sys::SymLink(ddsolver.c_str(),solver.c_str()); ^ /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C:88:13: error: ‘IRAD::Sys’ has not been declared IRAD::Sys::SymLink(ddrocm.c_str(),rocman.c_str()); ^ /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C:92:13: error: ‘IRAD::Sys’ has not been declared IRAD::Sys::SymLink(ddrocb.c_str(),rocburnapn.c_str()); ^ /home/dodo/Rocstar-particlefixed/Rocon/src/RemeshFunctions.C:95:11: error: ‘IRAD::Sys’ has not been declared IRAD::Sys::SymLink(rocstarrundir.c_str(),"rocstardir");

It seems like that there are some problems of IRAD include. But I don't know how to fix them.

multiplemonomials commented 3 years ago

Hmm, can you do a find for files called UnixUtils.h in the source dir? It seems like there might be a leftover file somewhere on your include path? We want that file to be including IRAD/include/UnixUtils.H.

multiplemonomials commented 3 years ago

Hmm, could also be a case problem

multiplemonomials commented 3 years ago

OK, I think I fixed it, give the current version a try.

aerospaceDoDo commented 3 years ago

OK, I think I fixed it, give the current version a try.

Yeah, I have made the code successfully. I found that there is no executable file of rocprep. So, where is your pre-processor application?

multiplemonomials commented 3 years ago

Have you looked in <build dir>/bin? I see rocprep there.

aerospaceDoDo commented 3 years ago

Have you looked in <build dir>/bin? I see rocprep there.

There is only rocprep.pm in /bin, not executable.

aerospaceDoDo commented 3 years ago

I try to run a simple test of fluid-particle flow, after rocprep, when I enter the rocstar command, it stopped with the error:

Rocflo: Reading user input ... Rocflo: Reading PLAG_ReadDisPartSection... Rocflo: Reading PLAG_ReadDisPartnContSection... Rocflo: Rocflo: ERROR (proc. 00000) - cannot read from file: Rocflo: Function: ReadListSection, file: ReadInputUtil.F90, line: 673 Rocflo: Called from: PLAG_ReadDisPartnContSection, file: PLAG_ReadDisPartnContSection.F90 Rocflo: Called from: PLAG_ReadInputFile, file: PLAG_ReadInputFile.F90 Rocflo: Called from: PLAG_UserInput, file: PLAG_UserInput.F90 Rocflo: Called from: RFLO_GetUserInput, file: RFLO_GetUserInput.F90 Rocflo: Called from: RFLO_InitFlowSolver, file: RFLO_InitFlowSolver.F90 Rocflo: STOP 1

How does that happened? @multiplemonomials

multiplemonomials commented 3 years ago

I'm sorry, I just do build systems for my lab, I don't actually have much experience with Rocstar.