diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..2a5918e9 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,120 @@ +cmake_minimum_required(VERSION 3.5) +project(deepflame LANGUAGES CXX) +FIND_PACKAGE(MPI REQUIRED) +# Check valid OpenFOAM +if(DEFINED ENV{WM_PROJECT_DIR}) + MESSAGE(STATUS "OpenFOAM: " $ENV{WM_PROJECT_DIR}) +else() + message(FATAL_ERROR "OpenFOAM is not sourced") +endif(DEFINED ENV{WM_PROJECT_DIR}) +set(OpenFOAM_VERSION $ENV{WM_PROJECT_VERSION}) +set(OpenFOAM_DIR $ENV{WM_PROJECT_DIR}) +set(OpenFOAM_LIB_DIR $ENV{FOAM_LIBBIN}) +set(OpenFOAM_SRC $ENV{FOAM_SRC}) + +set(SRC_ORIG ${CMAKE_CURRENT_SOURCE_DIR}/src_orig) + + +FUNCTION(R_SEARCH search_path return_list) + FILE(GLOB_RECURSE new_list ${search_path}/*.H) + SET(dir_list "") + FOREACH(file_path ${new_list}) + GET_FILENAME_COMPONENT(dir_path ${file_path} PATH) + SET(dir_list ${dir_list} ${dir_path}) + ENDFOREACH() + LIST(REMOVE_DUPLICATES dir_list) + SET(${return_list} ${dir_list} PARENT_SCOPE) +ENDFUNCTION(R_SEARCH) + +set(DF_ROOT ${CMAKE_CURRENT_SOURCE_DIR}) +set(DF_SRC ${CMAKE_CURRENT_SOURCE_DIR}/src) + +set(CMAKE_INSTALL_PREFIX ${DF_ROOT}) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread -fPIC") + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") + + +R_SEARCH(${DF_SRC}/dfCombustionModels dfcombustion_inc) +R_SEARCH(${DF_SRC}/dfCanteraMixture dfcantera_inc) +R_SEARCH(${DF_SRC}/lagrangian/intermediate dflagrangianinter_inc) +R_SEARCH(${DF_SRC}/lagrangian/spray dflagrangianspray_inc) +R_SEARCH(${DF_SRC}/lagrangian/turbulence dflagrangianturb_inc) +R_SEARCH(${DF_SRC}/dfChemistryModel dfchemistry_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/basic dfthermophysicalbasic_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/SLGThermo dfthermophysicalslg_inc) +R_SEARCH(${DF_SRC}/TurbulenceModels dfturbulence_inc) +R_SEARCH(${DF_SRC}/dynamicMesh dfnewdynamic_inc) +R_SEARCH(${DF_SRC}/dynamicFvMesh dffvdynamic_inc) + + +# Check valid libcantera +if(DEFINED ENV{CANTERA_ROOT}) + MESSAGE(STATUS "libcantera: " $ENV{CANTERA_ROOT}) + set(CANTERA_ROOT $ENV{CANTERA_ROOT}) +else() + message(FATAL_ERROR "libcantera directory is not specified") +endif(DEFINED ENV{CANTERA_ROOT}) + + +# Check valid Torch +#if(DEFINED $ENV{PYTHON_INC_DIR)}) +# MESSAGE(STATUS "Torch: " $ENV{CANTERA_ROOT}) +#else() +# message(FATAL_ERROR "no torch used") +#endif(DEFINED ENV{PYTHON_INC_DIR}) + + + +include_directories( + ${OpenFOAM_SRC}/finiteVolume/lnInclude + + ${OpenFOAM_SRC}/OSspecific/POSIX/lnInclude + ${OpenFOAM_SRC}/OpenFOAM/lnInclude + ) + +message(STATUS "dummydir:" ${OpenFOAM_LIB_DIR}/dummy) +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy ) + +set(CMAKE_INSTALL_PREFIX ${DF_ROOT}) + +add_subdirectory(${DF_SRC}/thermophysicalModels/thermophysicalProperties) +add_subdirectory(${DF_SRC}/thermophysicalModels/basic) +add_subdirectory(${DF_SRC}/functionObjects/field) +add_subdirectory(${DF_SRC}/dfCanteraMixture) +add_subdirectory(${DF_SRC}/thermophysicalModels/SLGThermo) +add_subdirectory(${DF_SRC}/dfChemistryModel) +add_subdirectory(${DF_SRC}/TurbulenceModels/compressible) +add_subdirectory(${DF_SRC}/TurbulenceModels/turbulenceModels) +add_subdirectory(${DF_SRC}/regionModels/surfaceFilmModels) +add_subdirectory(${DF_SRC}/lagrangian/turbulence) +add_subdirectory(${DF_SRC}/lagrangian/spray) +add_subdirectory(${DF_SRC}/lagrangian/intermediate) +add_subdirectory(${DF_SRC}/dfCombustionModels) +add_subdirectory(${DF_SRC}/dynamicMesh) +add_subdirectory(${DF_SRC}/dynamicFvMesh) + + +# add_subdirectory(${DF_ROOT}/applications/solvers/df0DFoam) +#add_subdirectory(${DF_ROOT}/applications/solvers/dfLowMachFoam) +# add_subdirectory(${DF_ROOT}/applications/solvers/dfHighSpeedFoam) +# add_subdirectory(${DF_ROOT}/applications/solvers/dfSprayFoam) diff --git a/applications/solvers/df0DFoam/CMakeLists.txt b/applications/solvers/df0DFoam/CMakeLists.txt new file mode 100644 index 00000000..4516a276 --- /dev/null +++ b/applications/solvers/df0DFoam/CMakeLists.txt @@ -0,0 +1,160 @@ +cmake_minimum_required(VERSION 3.5) +project(df0DFoam LANGUAGES CXX) +FIND_PACKAGE(MPI REQUIRED) + +message(STATUS "MPI include path is " ${MPI_INCLUDE_PATH}) +message(STATUS "MPI libraries " ${MPI_LIBRARIES}) + + +# Check valid OpenFOAM +if(DEFINED ENV{WM_PROJECT_DIR}) + MESSAGE(STATUS "OpenFOAM: " $ENV{WM_PROJECT_DIR}) +else() + message(FATAL_ERROR "OpenFOAM is not sourced") +endif(DEFINED ENV{WM_PROJECT_DIR}) +set(OpenFOAM_VERSION $ENV{WM_PROJECT_VERSION}) +set(OpenFOAM_DIR $ENV{WM_PROJECT_DIR}) +set(OpenFOAM_LIB_DIR $ENV{FOAM_LIBBIN}) +set(OpenFOAM_SRC $ENV{FOAM_SRC}) + +set(DF_ROOT $ENV{DF_ROOT}) +set(DF_SRC ${DF_ROOT}/src) +set(SRC_ORIG ${DF_ROOT}/src_orig) + + +FUNCTION(R_SEARCH search_path return_list) + FILE(GLOB_RECURSE new_list ${search_path}/*.H) + SET(dir_list "") + FOREACH(file_path ${new_list}) + GET_FILENAME_COMPONENT(dir_path ${file_path} PATH) + SET(dir_list ${dir_list} ${dir_path}) + ENDFOREACH() + LIST(REMOVE_DUPLICATES dir_list) + SET(${return_list} ${dir_list} PARENT_SCOPE) +ENDFUNCTION(R_SEARCH) + + + + +R_SEARCH(${DF_SRC}/dfCombustionModels dfcombustion_inc) +R_SEARCH(${DF_SRC}/dfCanteraMixture dfcantera_inc) +R_SEARCH(${DF_SRC}/lagrangian/intermediate dflagrangianinter_inc) +R_SEARCH(${DF_SRC}/lagrangian/spray dflagrangianspray_inc) +R_SEARCH(${DF_SRC}/lagrangian/turbulence dflagrangianturb_inc) +R_SEARCH(${DF_SRC}/dfChemistryModel dfchemistry_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/basic dfthermophysicalbasic_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/SLGThermo dfthermophysicalslg_inc) +R_SEARCH(${DF_SRC}/TurbulenceModels dfturbulence_inc) +R_SEARCH(${DF_SRC}/dynamicMesh dfnewdynamic_inc) +R_SEARCH(${DF_SRC}/dynamicFvMesh dffvdynamic_inc) + + +# Check valid libcantera +if(DEFINED ENV{CANTERA_ROOT}) + MESSAGE(STATUS "libcantera: " $ENV{CANTERA_ROOT}) + set(CANTERA_ROOT $ENV{CANTERA_ROOT}) +else() + message(FATAL_ERROR "libcantera directory is not specified") +endif(DEFINED ENV{CANTERA_ROOT}) + + + +include_directories( + ${OpenFOAM_SRC}/finiteVolume/lnInclude + + ${OpenFOAM_SRC}/OSspecific/POSIX/lnInclude + ${OpenFOAM_SRC}/OpenFOAM/lnInclude + ) + + +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy ) + +set(CMAKE_INSTALL_PREFIX ${DF_ROOT}) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread -fPIC") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") + +FIND_PACKAGE(MPI REQUIRED) + +include_directories( + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/finiteVolume/cfdTools + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/Pstream/mpi + ${dfcantera_inc} + ${dfchemistry_inc} + ${dfcombustion_inc} + ${CANTERA_ROOT}/include + ${MPI_INCLUDE_PATH} + ${PROJECT_SOURCE_DIR} +) + + +add_executable(${PROJECT_NAME} ${PROJECT_SOURCE_DIR}/df0DFoam.C) + + +if(DEFINED ENV{PYTHON_INC_DIR}) + add_definitions(-DUSE_PYTORCH) + find_package (Python REQUIRED COMPONENTS Interpreter Development) + find_package(pybind11) + include_directories( + ${Python_INCLUDE_DIRS} + ${pybind11_INCLUDE_DIR}/pybind11 + ) + target_link_libraries(${PROJECT_NAME} ${Python_LIBRARIES}) + message(STATUS "pybind libraries" ${Python_LIBRARIES}) +endif() + + +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libcompressibleTransportModels.so libturbulenceModels.so libsampling.so libOpenFOAM.so libdynamicFvMesh.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} /home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +/home/runze/JX/deepflame-cmake/lib/libdfChemistryModel.so +/home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +/home/runze/JX/deepflame-cmake/lib/libdfFluidThermophysicalModels.so +/home/runze/JX/deepflame-cmake/lib/libdfCombustionModels.so +) +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy) + + +target_link_libraries(${PROJECT_NAME} +$ENV{FOAM_LIBBIN}/openmpi-system/libPstream.so +${MPI_LIBRARIES} +) + + +#set_target_properties(${PROJECT_NAME} +# PROPERTIES +# LINK_OPTIONS "-Xlinker --add-needed -Xlinker --no-as-needed" +# ) + + +install(TARGETS ${PROJECT_NAME} DESTINATION bin) \ No newline at end of file diff --git a/applications/solvers/dfHighSpeedFoam/CMakeLists.txt b/applications/solvers/dfHighSpeedFoam/CMakeLists.txt new file mode 100644 index 00000000..7fd637d9 --- /dev/null +++ b/applications/solvers/dfHighSpeedFoam/CMakeLists.txt @@ -0,0 +1,159 @@ +cmake_minimum_required(VERSION 3.5) +project(dfHighSpeedFoam LANGUAGES CXX) +FIND_PACKAGE(MPI REQUIRED) + +message(STATUS "MPI include path is " ${MPI_INCLUDE_PATH}) +message(STATUS "MPI libraries " ${MPI_LIBRARIES}) + + +# Check valid OpenFOAM +if(DEFINED ENV{WM_PROJECT_DIR}) + MESSAGE(STATUS "OpenFOAM: " $ENV{WM_PROJECT_DIR}) +else() + message(FATAL_ERROR "OpenFOAM is not sourced") +endif(DEFINED ENV{WM_PROJECT_DIR}) +set(OpenFOAM_VERSION $ENV{WM_PROJECT_VERSION}) +set(OpenFOAM_DIR $ENV{WM_PROJECT_DIR}) +set(OpenFOAM_LIB_DIR $ENV{FOAM_LIBBIN}) +set(OpenFOAM_SRC $ENV{FOAM_SRC}) + +set(DF_ROOT $ENV{DF_ROOT}) +set(DF_SRC ${DF_ROOT}/src) +set(SRC_ORIG ${DF_ROOT}/src_orig) + + +FUNCTION(R_SEARCH search_path return_list) + FILE(GLOB_RECURSE new_list ${search_path}/*.H) + SET(dir_list "") + FOREACH(file_path ${new_list}) + GET_FILENAME_COMPONENT(dir_path ${file_path} PATH) + SET(dir_list ${dir_list} ${dir_path}) + ENDFOREACH() + LIST(REMOVE_DUPLICATES dir_list) + SET(${return_list} ${dir_list} PARENT_SCOPE) +ENDFUNCTION(R_SEARCH) + + + + +R_SEARCH(${DF_SRC}/dfCombustionModels dfcombustion_inc) +R_SEARCH(${DF_SRC}/dfCanteraMixture dfcantera_inc) +R_SEARCH(${DF_SRC}/lagrangian/intermediate dflagrangianinter_inc) +R_SEARCH(${DF_SRC}/lagrangian/spray dflagrangianspray_inc) +R_SEARCH(${DF_SRC}/lagrangian/turbulence dflagrangianturb_inc) +R_SEARCH(${DF_SRC}/dfChemistryModel dfchemistry_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/basic dfthermophysicalbasic_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/SLGThermo dfthermophysicalslg_inc) +R_SEARCH(${DF_SRC}/TurbulenceModels dfturbulence_inc) +R_SEARCH(${DF_SRC}/dynamicMesh dfnewdynamic_inc) +R_SEARCH(${DF_SRC}/dynamicFvMesh dffvdynamic_inc) + + +# Check valid libcantera +if(DEFINED ENV{CANTERA_ROOT}) + MESSAGE(STATUS "libcantera: " $ENV{CANTERA_ROOT}) + set(CANTERA_ROOT $ENV{CANTERA_ROOT}) +else() + message(FATAL_ERROR "libcantera directory is not specified") +endif(DEFINED ENV{CANTERA_ROOT}) + + + +include_directories( + ${OpenFOAM_SRC}/finiteVolume/lnInclude + + ${OpenFOAM_SRC}/OSspecific/POSIX/lnInclude + ${OpenFOAM_SRC}/OpenFOAM/lnInclude + ) + + +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy ) + +set(CMAKE_INSTALL_PREFIX ${DF_ROOT}) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread -fPIC") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") + +FIND_PACKAGE(MPI REQUIRED) + +include_directories( + $ENV{FOAM_APP}/solvers/compressible/rhoCentralFoam/BCs/lnInclude + ${OpenFOAM_SRC}/finiteVolume/cfdTools + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/Pstream/mpi + ${OpenFOAM_SRC}/meshTools/lnInclude + ${dfcantera_inc} + ${dfchemistry_inc} + ${dfcombustion_inc} + ${CANTERA_ROOT}/include + ${MPI_INCLUDE_PATH} + ${PROJECT_SOURCE_DIR} +) + + +add_executable(${PROJECT_NAME} ${PROJECT_SOURCE_DIR}/dfHighSpeedFoam.C) + +if(DEFINED ENV{PYTHON_INC_DIR}) + add_definitions(-DUSE_PYTORCH) + find_package (Python REQUIRED COMPONENTS Interpreter Development) + find_package(pybind11) + include_directories( + ${Python_INCLUDE_DIRS} + ${pybind11_INCLUDE_DIR}/pybind11 + ) + target_link_libraries(${PROJECT_NAME} ${Python_LIBRARIES}) + message(STATUS "pybind libraries" ${Python_LIBRARIES}) +endif() + +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libcompressibleTransportModels.so libturbulenceModels.so libsampling.so libOpenFOAM.so libdynamicFvMesh.so libtopoChangerFvMesh.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} /home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +/home/runze/JX/deepflame-cmake/lib/libdfChemistryModel.so +/home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +/home/runze/JX/deepflame-cmake/lib/libdfFluidThermophysicalModels.so +/home/runze/JX/deepflame-cmake/lib/libdfCombustionModels.so +) +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy) + + +target_link_libraries(${PROJECT_NAME} +$ENV{FOAM_LIBBIN}/openmpi-system/libPstream.so +${MPI_LIBRARIES} +) + + +#set_target_properties(${PROJECT_NAME} +# PROPERTIES +# LINK_OPTIONS "-Xlinker --add-needed -Xlinker --no-as-needed" +# ) + + +install(TARGETS ${PROJECT_NAME} DESTINATION bin) \ No newline at end of file diff --git a/applications/solvers/dfLowMachFoam/CMakeLists.txt b/applications/solvers/dfLowMachFoam/CMakeLists.txt new file mode 100644 index 00000000..7f93124d --- /dev/null +++ b/applications/solvers/dfLowMachFoam/CMakeLists.txt @@ -0,0 +1,165 @@ +cmake_minimum_required(VERSION 3.5) +project(dfLowMachFoam LANGUAGES CXX) +FIND_PACKAGE(MPI REQUIRED) + +message(STATUS "MPI include path is " ${MPI_INCLUDE_PATH}) +message(STATUS "MPI libraries " ${MPI_LIBRARIES}) + + +# Check valid OpenFOAM +if(DEFINED ENV{WM_PROJECT_DIR}) + MESSAGE(STATUS "OpenFOAM: " $ENV{WM_PROJECT_DIR}) +else() + message(FATAL_ERROR "OpenFOAM is not sourced") +endif(DEFINED ENV{WM_PROJECT_DIR}) +set(OpenFOAM_VERSION $ENV{WM_PROJECT_VERSION}) +set(OpenFOAM_DIR $ENV{WM_PROJECT_DIR}) +set(OpenFOAM_LIB_DIR $ENV{FOAM_LIBBIN}) +set(OpenFOAM_SRC $ENV{FOAM_SRC}) + +set(DF_ROOT $ENV{DF_ROOT}) +set(DF_SRC ${DF_ROOT}/src) +set(SRC_ORIG ${DF_ROOT}/src_orig) + + +FUNCTION(R_SEARCH search_path return_list) + FILE(GLOB_RECURSE new_list ${search_path}/*.H) + SET(dir_list "") + FOREACH(file_path ${new_list}) + GET_FILENAME_COMPONENT(dir_path ${file_path} PATH) + SET(dir_list ${dir_list} ${dir_path}) + ENDFOREACH() + LIST(REMOVE_DUPLICATES dir_list) + SET(${return_list} ${dir_list} PARENT_SCOPE) +ENDFUNCTION(R_SEARCH) + + + + +R_SEARCH(${DF_SRC}/dfCombustionModels dfcombustion_inc) +R_SEARCH(${DF_SRC}/dfCanteraMixture dfcantera_inc) +R_SEARCH(${DF_SRC}/lagrangian/intermediate dflagrangianinter_inc) +R_SEARCH(${DF_SRC}/lagrangian/spray dflagrangianspray_inc) +R_SEARCH(${DF_SRC}/lagrangian/turbulence dflagrangianturb_inc) +R_SEARCH(${DF_SRC}/dfChemistryModel dfchemistry_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/basic dfthermophysicalbasic_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/SLGThermo dfthermophysicalslg_inc) +R_SEARCH(${DF_SRC}/TurbulenceModels dfturbulence_inc) +R_SEARCH(${DF_SRC}/dynamicMesh dfnewdynamic_inc) +R_SEARCH(${DF_SRC}/dynamicFvMesh dffvdynamic_inc) + + +# Check valid libcantera +if(DEFINED ENV{CANTERA_ROOT}) + MESSAGE(STATUS "libcantera: " $ENV{CANTERA_ROOT}) + set(CANTERA_ROOT $ENV{CANTERA_ROOT}) +else() + message(FATAL_ERROR "libcantera directory is not specified") +endif(DEFINED ENV{CANTERA_ROOT}) + + +# Check valid Torch +#if(DEFINED $ENV{PYTHON_INC_DIR)}) +# MESSAGE(STATUS "Torch: " $ENV{CANTERA_ROOT}) +#else() +# message(FATAL_ERROR "no torch used") +#endif(DEFINED ENV{PYTHON_INC_DIR}) + + + +include_directories( + ${OpenFOAM_SRC}/finiteVolume/lnInclude + + ${OpenFOAM_SRC}/OSspecific/POSIX/lnInclude + ${OpenFOAM_SRC}/OpenFOAM/lnInclude + ) + +message(STATUS "dummydir:" ${OpenFOAM_LIB_DIR}/dummy) +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy ) + +set(CMAKE_INSTALL_PREFIX ${DF_ROOT}) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread -fPIC") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") + +FIND_PACKAGE(MPI REQUIRED) + +include_directories( + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/finiteVolume/cfdTools + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/Pstream/mpi + ${dfcantera_inc} + ${dfchemistry_inc} + ${dfcombustion_inc} + ${CANTERA_ROOT}/include + ${MPI_INCLUDE_PATH} + ${PROJECT_SOURCE_DIR} +) + + +add_executable(${PROJECT_NAME} ${PROJECT_SOURCE_DIR}/dfLowMachFoam.C) + +if(DEFINED ENV{PYTHON_INC_DIR}) + add_definitions(-DUSE_PYTORCH) + find_package (Python REQUIRED COMPONENTS Interpreter Development) + find_package(pybind11) + include_directories( + ${Python_INCLUDE_DIRS} + ${pybind11_INCLUDE_DIR}/pybind11 + ) + target_link_libraries(${PROJECT_NAME} ${Python_LIBRARIES}) +endif() + +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libcompressibleTransportModels.so libturbulenceModels.so libsampling.so libOpenFOAM.so ) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} /home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +/home/runze/JX/deepflame-cmake/lib/libdfChemistryModel.so +/home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +/home/runze/JX/deepflame-cmake/lib/libdfFluidThermophysicalModels.so +/home/runze/JX/deepflame-cmake/lib/libdfCombustionModels.so +) +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy) + + +target_link_libraries(${PROJECT_NAME} +$ENV{FOAM_LIBBIN}/openmpi-system/libPstream.so +${MPI_LIBRARIES} +) + + +#set_target_properties(${PROJECT_NAME} +# PROPERTIES +# LINK_OPTIONS "-Xlinker --add-needed -Xlinker --no-as-needed" +# ) + + +install(TARGETS ${PROJECT_NAME} DESTINATION bin) \ No newline at end of file diff --git a/applications/solvers/dfSprayFoam/CMakeLists.txt b/applications/solvers/dfSprayFoam/CMakeLists.txt new file mode 100644 index 00000000..f1dd3aaf --- /dev/null +++ b/applications/solvers/dfSprayFoam/CMakeLists.txt @@ -0,0 +1,182 @@ +cmake_minimum_required(VERSION 3.5) +project(dfSprayFoam LANGUAGES CXX) +FIND_PACKAGE(MPI REQUIRED) + +message(STATUS "MPI include path is " ${MPI_INCLUDE_PATH}) +message(STATUS "MPI libraries " ${MPI_LIBRARIES}) + + +# Check valid OpenFOAM +if(DEFINED ENV{WM_PROJECT_DIR}) + MESSAGE(STATUS "OpenFOAM: " $ENV{WM_PROJECT_DIR}) +else() + message(FATAL_ERROR "OpenFOAM is not sourced") +endif(DEFINED ENV{WM_PROJECT_DIR}) +set(OpenFOAM_VERSION $ENV{WM_PROJECT_VERSION}) +set(OpenFOAM_DIR $ENV{WM_PROJECT_DIR}) +set(OpenFOAM_LIB_DIR $ENV{FOAM_LIBBIN}) +set(OpenFOAM_SRC $ENV{FOAM_SRC}) + +set(DF_ROOT $ENV{DF_ROOT}) +set(DF_SRC ${DF_ROOT}/src) +set(SRC_ORIG ${DF_ROOT}/src_orig) + + +FUNCTION(R_SEARCH search_path return_list) + FILE(GLOB_RECURSE new_list ${search_path}/*.H) + SET(dir_list "") + FOREACH(file_path ${new_list}) + GET_FILENAME_COMPONENT(dir_path ${file_path} PATH) + SET(dir_list ${dir_list} ${dir_path}) + ENDFOREACH() + LIST(REMOVE_DUPLICATES dir_list) + SET(${return_list} ${dir_list} PARENT_SCOPE) +ENDFUNCTION(R_SEARCH) + + + + +R_SEARCH(${DF_SRC}/dfCombustionModels dfcombustion_inc) +R_SEARCH(${DF_SRC}/dfCanteraMixture dfcantera_inc) +R_SEARCH(${DF_SRC}/lagrangian/intermediate dflagrangianinter_inc) +R_SEARCH(${DF_SRC}/lagrangian/spray dflagrangianspray_inc) +R_SEARCH(${DF_SRC}/lagrangian/turbulence dflagrangianturb_inc) +R_SEARCH(${DF_SRC}/dfChemistryModel dfchemistry_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/thermophysicalProperties dfthermophysicalprop_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/basic dfthermophysicalbasic_inc) +R_SEARCH(${DF_SRC}/thermophysicalModels/SLGThermo dfthermophysicalslg_inc) +R_SEARCH(${DF_SRC}/TurbulenceModels dfturbulence_inc) +R_SEARCH(${DF_SRC}/dynamicMesh dfnewdynamic_inc) +R_SEARCH(${DF_SRC}/dynamicFvMesh dffvdynamic_inc) + + + + +# Check valid libcantera +if(DEFINED ENV{CANTERA_ROOT}) + MESSAGE(STATUS "libcantera: " $ENV{CANTERA_ROOT}) + set(CANTERA_ROOT $ENV{CANTERA_ROOT}) +else() + message(FATAL_ERROR "libcantera directory is not specified") +endif(DEFINED ENV{CANTERA_ROOT}) + + + +include_directories( + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/OSspecific/POSIX/lnInclude + ${OpenFOAM_SRC}/OpenFOAM/lnInclude + ) + + +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/dummy ) + +set(CMAKE_INSTALL_PREFIX ${DF_ROOT}) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread -fPIC") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") + +FIND_PACKAGE(MPI REQUIRED) + +include_directories( + #${OpenFOAM_APP}/solvers/lagrangian/reactingParcelFoam + #$ENV{FOAM_APP}/solvers/compressible/rhoPimpleFoam + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/regionModels/regionModel/lnInclude + ${OpenFOAM_SRC}/regionModels/surfaceFilmModels/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/lagrangian/basic/lnInclude + ${dflagrangianinter_inc} + #${DF_SRC}/lagrangian/intermediate/lnInclude + ${OpenFOAM_SRC}/lagrangian/intermediate/lnInclude + ${dflagrangianspray_inc} + #${DF_SRC}/lagrangian/spray/lnInclude + ${OpenFOAM_SRC}/lagrangian/spray/lnInclude + ${OpenFOAM_SRC}/lagrangian/distributionModels/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${dfthermophysicalprop_inc} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${dfthermophysicalslg_inc} + ${dfcantera_inc} + ${dfchemistry_inc} + ${dfcombustion_inc} + ${OpenFOAM_SRC}/Pstream/mpi + ${CANTERA_ROOT}/include + ${MPI_INCLUDE_PATH} + ${PROJECT_SOURCE_DIR} +) + + +add_executable(${PROJECT_NAME} ${PROJECT_SOURCE_DIR}/dfSprayFoam.C) + +if(DEFINED ENV{PYTHON_INC_DIR}) + add_definitions(-DUSE_PYTORCH) + find_package (Python REQUIRED COMPONENTS Interpreter Development) + find_package(pybind11) + include_directories( + ${Python_INCLUDE_DIRS} + ${pybind11_INCLUDE_DIR}/pybind11 + ) + target_link_libraries(${PROJECT_NAME} ${Python_LIBRARIES}) +endif() + +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libcompressibleTransportModels.so libturbulenceModels.so libsampling.so libOpenFOAM.so libdynamicFvMesh.so liblagrangian.so libregionModels.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} /home/runze/JX/deepflame-cmake/lib/libdfCanteraMixture.so +${CMAKE_INSTALL_PREFIX}/lib/libdfChemistryModel.so +${CMAKE_INSTALL_PREFIX}/lib/libdfCanteraMixture.so +${CMAKE_INSTALL_PREFIX}/lib/libdfFluidThermophysicalModels.so +${CMAKE_INSTALL_PREFIX}/lib/libdfCombustionModels.so +${CMAKE_INSTALL_PREFIX}/lib/libdfLagrangianIntermediate.so +${CMAKE_INSTALL_PREFIX}/lib/libdfLagrangianTurbulence.so +${CMAKE_INSTALL_PREFIX}/lib/libdfLagrangianSpray.so +${CMAKE_INSTALL_PREFIX}/lib/libdfThermophysicalProperties.so +${CMAKE_INSTALL_PREFIX}/lib/libdfCompressibleTurbulenceModels.so +${CMAKE_INSTALL_PREFIX}/lib/libdfSLGThermo.so +${CMAKE_INSTALL_PREFIX}/lib/libdfSurfaceFilmModels.so +) + +link_directories(${OpenFOAM_LIB_DIR} ${OpenFOAM_LIB_DIR}/$ENV{FOAM_MPI} $ENV{WM_THIRD_PARTY_DIR}/platforms/linux64GccDPInt32/lib/openmpi-system) + + +target_link_libraries(${PROJECT_NAME} +libPstream.so +${MPI_LIBRARIES} +$ENV{WM_THIRD_PARTY_DIR}/platforms/linux64GccDPInt32/lib/openmpi-system/libptscotch.so +$ENV{WM_THIRD_PARTY_DIR}/platforms/linux64GccDPInt32/lib/openmpi-system/libscotch.so +) + + +#set_target_properties(${PROJECT_NAME} +# PROPERTIES +# LINK_OPTIONS "-Xlinker --add-needed -Xlinker --no-as-needed" +# ) + + +install(TARGETS ${PROJECT_NAME} DESTINATION bin) \ No newline at end of file diff --git a/applications/solvers/dfSprayFoam/correctPhi.H b/applications/solvers/dfSprayFoam/correctPhi.H new file mode 100644 index 00000000..3cd82d29 --- /dev/null +++ b/applications/solvers/dfSprayFoam/correctPhi.H @@ -0,0 +1,12 @@ +CorrectPhi +( + U, + phi, + p, + rho, + psi, + dimensionedScalar("rAUf", dimTime, 1), + divrhoU(), + pimple, + true +); diff --git a/src/TurbulenceModels/compressible/CMakeLists.txt b/src/TurbulenceModels/compressible/CMakeLists.txt new file mode 100644 index 00000000..a283a986 --- /dev/null +++ b/src/TurbulenceModels/compressible/CMakeLists.txt @@ -0,0 +1,57 @@ + +project(dfCompressibleTurbulenceModels LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +set(WORKINGDIR ${SRC_ORIG}/TurbulenceModels/compressible/) +include_directories( + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${CANTERA_ROOT}/include + ) + + + + +add_library(dfCompressibleTurbulenceModels SHARED + + +${WORKINGDIR}/compressibleTurbulenceModel.C +${WORKINGDIR}/turbulentFluidThermoModels/turbulentFluidThermoModels.C +${WORKINGDIR}/turbulentFluidThermoModels/derivedFvPatchFields/wallFunctions/alphatWallFunctions/alphatWallFunction/alphatWallFunctionFvPatchScalarField.C +) + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libturbulenceModels.so libfiniteVolume.so libmeshTools.so) + + + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/TurbulenceModels/turbulenceModels/CMakeLists.txt b/src/TurbulenceModels/turbulenceModels/CMakeLists.txt new file mode 100644 index 00000000..fe2f9315 --- /dev/null +++ b/src/TurbulenceModels/turbulenceModels/CMakeLists.txt @@ -0,0 +1,55 @@ +project(dfTurbulenceModels LANGUAGES CXX) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +include_directories( +${dfturbulence_inc} + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude +) + +add_library(dfTurbulenceModels SHARED + +${CMAKE_CURRENT_SOURCE_DIR}/makeTurbulentFluidThermoModels.C +) + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libturbulenceModels.so +libfiniteVolume.so libmeshTools.so ) + +target_link_libraries(${PROJECT_NAME} dfCompressibleTurbulenceModels +dfFluidThermophysicalModels +) + + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/dfCanteraMixture/CMakeLists.txt b/src/dfCanteraMixture/CMakeLists.txt new file mode 100644 index 00000000..2354767b --- /dev/null +++ b/src/dfCanteraMixture/CMakeLists.txt @@ -0,0 +1,53 @@ + +project(dfCanteraMixture LANGUAGES CXX) + +include_directories( + ./ + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${CANTERA_ROOT}/include + ) + + + + +add_library(dfCanteraMixture SHARED + CanteraMixture.C + makeThermos.C +) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/dfChemistryModel/CMakeLists.txt b/src/dfChemistryModel/CMakeLists.txt new file mode 100644 index 00000000..16c8073b --- /dev/null +++ b/src/dfChemistryModel/CMakeLists.txt @@ -0,0 +1,85 @@ + +project(dfChemistryModel LANGUAGES CXX) + +include_directories( + ${dfchemistry_inc} + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${dfcantera_inc} + ${CANTERA_ROOT}/include + ) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") + + +add_library(dfChemistryModel SHARED + +${DF_SRC}/${PROJECT_NAME}/loadBalancing/ChemistryProblem.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/ChemistrySolution.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/ChemistryLoad.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/LoadBalancerBase.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/SendBuffer.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/RecvBuffer.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/algorithms_DLB.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/runtime_assert.C +${DF_SRC}/${PROJECT_NAME}/loadBalancing/LoadBalancer.C + +${DF_SRC}/${PROJECT_NAME}/makeDfChemistryModels.C +) + +if(DEFINED ENV{PYTHON_INC_DIR}) + add_definitions(-DUSE_PYTORCH) + find_package (Python REQUIRED COMPONENTS Interpreter Development) + find_package(pybind11) + include_directories( + ${Python_INCLUDE_DIRS} + ${pybind11_INCLUDE_DIR}/pybind11 + ) + #target_link_libraries(${PROJECT_NAME} ${Python_LIBRARIES}) + message(STATUS "pybind libraries" ${Python_LIBRARIES}) +endif() + + + + + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libturbulenceModels.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} dfFluidThermophysicalModels +dfCompressibleTurbulenceModels +dfCanteraMixture +) + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/dfCombustionModels/CMakeLists.txt b/src/dfCombustionModels/CMakeLists.txt new file mode 100644 index 00000000..5c0006ea --- /dev/null +++ b/src/dfCombustionModels/CMakeLists.txt @@ -0,0 +1,88 @@ +project(dfCombustionModels LANGUAGES CXX) + +#set(INC_DIR R_SEARCH(search_paths)) + +message(STATUS "header" ${header_dir}) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +include_directories( + + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${DF_SRC}/dfCanteraMixture + ${PROJECT_SOURCE_DIR} + ${dfcombustion_inc} + ${dfchemistry_inc} + + $ENV{CANTERA_ROOT}/include + #$ENV{WM_DIR}/rules/mplibType +) + + +if(DEFINED ENV{PYTHON_INC_DIR}) + add_definitions(-DUSE_PYTORCH) + find_package (Python REQUIRED COMPONENTS Interpreter Development) + find_package(pybind11) + include_directories( + ${Python_INCLUDE_DIRS} + ${pybind11_INCLUDE_DIR}/pybind11 + ) + #target_link_libraries(${PROJECT_NAME} ${Python_LIBRARIES}) + message(STATUS "pybind libraries" ${Python_LIBRARIES}) +endif() + + +add_library(dfCombustionModels SHARED + +${DF_SRC}/${PROJECT_NAME}/combustionModel/combustionModel.C +${DF_SRC}/${PROJECT_NAME}/CombustionModel/CombustionModel/CombustionModels.C +${DF_SRC}/${PROJECT_NAME}/PaSR/PaSRs.C +${DF_SRC}/${PROJECT_NAME}/EDC/EDCs.C + +${DF_SRC}/${PROJECT_NAME}/laminar/laminars.C + +${DF_SRC}/${PROJECT_NAME}/noCombustion/noCombustions.C +) + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libturbulenceModels.so +libfiniteVolume.so libmeshTools.so ) + +target_link_libraries(${PROJECT_NAME} dfCompressibleTurbulenceModels +dfCanteraMixture +dfChemistryModel +) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/dynamicFvMesh/CMakeLists.txt b/src/dynamicFvMesh/CMakeLists.txt new file mode 100644 index 00000000..098e273a --- /dev/null +++ b/src/dynamicFvMesh/CMakeLists.txt @@ -0,0 +1,65 @@ +project(dfDynamicFvMesh LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +# add library +add_library(dfDynamicFvMesh SHARED + +${DF_SRC}/dynamicFvMesh/dfDynamicRefineFvMesh/multiCritRefinement.C +${DF_SRC}/dynamicFvMesh/dfDynamicRefineFvMesh/dfDynamicRefineFvMesh.C + +${DF_SRC}/dynamicFvMesh/dfRefinementHistoryConstraint/dfRefinementHistoryConstraint.C +) + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libtriSurface.so libdynamicMesh.so libdynamicFvMesh.so +libextrudeModel.so libdecompositionMethods.so +) +target_link_libraries(${PROJECT_NAME} newdynamicMesh) +link_directories($ENV{FOAM_LIBBIN}/dummy +) +target_link_libraries(${PROJECT_NAME} + $ENV{FOAM_LIBBIN}/dummy/libscotchDecomp.so + $ENV{FOAM_LIBBIN}/dummy/libptscotchDecomp.so + $ENV{FOAM_LIBBIN}/dummy/libmetisDecomp.so +) + + + +include_directories( + ${dffvdynamic_inc} + ${dfnewdynamic_inc} + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/triSurface/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/dynamicMesh/lnInclude + ${OpenFOAM_SRC}/parallel/decompose/decompositionMethods/lnInclude + + ) + + + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) \ No newline at end of file diff --git a/src/dynamicMesh/CMakeLists.txt b/src/dynamicMesh/CMakeLists.txt new file mode 100644 index 00000000..dbf26bb4 --- /dev/null +++ b/src/dynamicMesh/CMakeLists.txt @@ -0,0 +1,70 @@ +project(newdynamicMesh LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +# add library +add_library(newdynamicMesh SHARED + +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRef.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRefData.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/dfRefinementHistory.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRefNew.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRef8/hexRef8.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRef4/hexRef4.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRef4Axi/hexRef4Axi.C +${DF_SRC}/dynamicMesh/polyTopoChange/polyTopoChange/hexRef/hexRef2/hexRef2.C + +) + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libtriSurface.so libdynamicMesh.so libdynamicFvMesh.so +libextrudeModel.so libdecompositionMethods.so +) + + +link_directories($ENV{FOAM_LIBBIN}/dummy) +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/dummy/libscotchDecomp.so + $ENV{FOAM_LIBBIN}/dummy/libptscotchDecomp.so + $ENV{FOAM_LIBBIN}/dummy/libmetisDecomp.so +) + + + +include_directories( + ${dfnewdynamic_inc} + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/triSurface/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/dynamicMesh/lnInclude + ${OpenFOAM_SRC}/dynamicMesh/lnInclude + ${OpenFOAM_SRC}/parallel/decompose/decompositionMethods/lnInclude + ${OpenFOAM_SRC}/mesh/extrudeModel/lnInclude + + ) + + + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) \ No newline at end of file diff --git a/src/functionObjects/field/CMakeLists.txt b/src/functionObjects/field/CMakeLists.txt new file mode 100644 index 00000000..453fbc63 --- /dev/null +++ b/src/functionObjects/field/CMakeLists.txt @@ -0,0 +1,136 @@ +project(dfFieldFunctionObjects LANGUAGES CXX) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +set(workDir ${SRC_ORIG}/functionObjects/field) + + +# add library +add_library(dfFieldFunctionObjects SHARED + +${workDir}/fieldAverage/fieldAverage.C +${workDir}/fieldAverage/fieldAverageItem/fieldAverageItem.C +${workDir}/fieldAverage/fieldAverageItem/fieldAverageItemIO.C + +${workDir}/fieldCoordinateSystemTransform/fieldCoordinateSystemTransform.C +${workDir}/fieldMinMax/fieldMinMax.C + +${workDir}/fieldValues/fieldValue/fieldValue.C +${workDir}/fieldValues/fieldValue/fieldValueNew.C +${workDir}/fieldValues/fieldValueDelta/fieldValueDelta.C +${workDir}/fieldValues/volFieldValue/volFieldValue.C +${workDir}/fieldValues/surfaceFieldValue/surfaceFieldValue.C + +${workDir}/nearWallFields/nearWallFields.C +${workDir}/nearWallFields/findCellParticle.C +${workDir}/nearWallFields/findCellParticleCloud.C + +${workDir}/processorField/processorField.C +${workDir}/readFields/readFields.C + +${workDir}/streamLine/streamLine.C +${workDir}/streamLine/streamLineParticle.C +${workDir}/streamLine/streamLineParticleCloud.C + +${workDir}/surfaceInterpolate/surfaceInterpolate.C + +${workDir}/regionSizeDistribution/regionSizeDistribution.C +${workDir}/histogram/histogram.C + +${workDir}/fieldExpression/fieldExpression.C +${workDir}/components/components.C +${workDir}/randomise/randomise.C +${workDir}/div/div.C +${workDir}/grad/grad.C +${workDir}/ddt/ddt.C +${workDir}/mag/mag.C +${workDir}/magSqr/magSqr.C +${workDir}/scale/scale.C +${workDir}/log/log.C +${workDir}/vorticity/vorticity.C +${workDir}/enstrophy/enstrophy.C +${workDir}/Q/Q.C +${workDir}/Lambda2/Lambda2.C +${workDir}/flowType/flowType.C +${workDir}/CourantNo/CourantNo.C + +${workDir}/blendingFactor/blendingFactor.C +${workDir}/pressure/pressure.C +${workDir}/MachNo/MachNo.C + +${workDir}/yPlus/yPlus.C +${workDir}/turbulenceIntensity/turbulenceIntensity.C + +${workDir}/writeCellCentres/writeCellCentres.C +${workDir}/writeCellVolumes/writeCellVolumes.C + +${workDir}/XiReactionRate/XiReactionRate.C +${workDir}/streamFunction/streamFunction.C + +${workDir}/fieldsExpression/fieldsExpression.C +${workDir}/add/add.C +${workDir}/subtract/subtract.C + +${workDir}/interfaceHeight/interfaceHeight.C + +${workDir}/age/age.C +) + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so +libmeshTools.so +libincompressibleTransportModels.so +libturbulenceModels.so +libcompressibleTransportModels.so +libsurfMesh.so +liblagrangian.so +libfileFormats.so +libsampling.so +libsurfMesh.so +) +target_link_libraries(${PROJECT_NAME} dfFluidThermophysicalModels) + + + + +include_directories( + ${SRC_ORIG}/functionObjects/field/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + ${OpenFOAM_SRC}/lagrangian/basic/lnInclude + ${OpenFOAM_SRC}/fileFormats/lnInclude + ${OpenFOAM_SRC}/surfMesh/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/transportModels + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + + ) + + + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) \ No newline at end of file diff --git a/src/lagrangian/intermediate/CMakeLists.txt b/src/lagrangian/intermediate/CMakeLists.txt new file mode 100644 index 00000000..5025cafe --- /dev/null +++ b/src/lagrangian/intermediate/CMakeLists.txt @@ -0,0 +1,188 @@ +project(dfLagrangianIntermediate LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +include_directories( + ${OpenFOAM_SRC}/lagrangian/basic/lnInclude + ${OpenFOAM_SRC}/lagrangian/distributionModels/lnInclude + ${dflagrangianinter_inc} + ${OpenFOAM_SRC}/lagrangian/intermediate/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${dfthermophysicalprop_inc} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${dfthermophysicalslg_inc} + $ENV{CANTERA_ROOT}/include + ${dfcantera_inc} + ${OpenFOAM_SRC}/transportModels + ${OpenFOAM_SRC}/regionModels/regionModel/lnInclude + ${OpenFOAM_SRC}/regionModels/surfaceFilmModels/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + +) + +set(workDir ${SRC_ORIG}/lagrangian/intermediate) +set(PARCELS ${CMAKE_CURRENT_SOURCE_DIR}/parcels) +set(BASEPARCELS ${PARCELS}/baseClasses) +set(DERIVEDPARCELS ${PARCELS}/derived) + +set(CLOUDS ${CMAKE_CURRENT_SOURCE_DIR}/clouds) +set(BASECLOUDS ${CLOUDS}/baseClasses) +set(DERIVEDCLOUDS ${CLOUDS}/derived) +set(KINEMATICPARCEL ${DERIVEDPARCELS}/basicKinematicParcel) +set(KINEMATICCOLLIDINGPARCEL ${DERIVEDPARCELS}/basicKinematicCollidingParcel) +set(THERMOPARCEL ${DERIVEDPARCELS}/basicThermoParcel) +set(REACTINGPARCEL ${DERIVEDPARCELS}/basicReactingParcel) +set(REACTINGMPPARCEL ${DERIVEDPARCELS}/basicReactingMultiphaseParcel) +set(KINEMATICMPPICPARCEL ${DERIVEDPARCELS}/basicKinematicMPPICParcel) +set(KINEMATICINJECTION ${workDir}/submodels/Kinematic/InjectionModel) +set(THERMOINJECTION ${workDir}/submodels/Thermodynamic/InjectionModel) +set(REACTINGMPINJECTION ${workDir}/submodels/ReactingMultiphase/InjectionModel) +set(REACTINGINJECTION ${workDir}/submodels/Reacting/InjectionModel) +set(MPPICCORRECTIONLIMITING ${workDir}/submodels/MPPIC/CorrectionLimitingMethods) +set(MPPICPARTICLESTRESS ${workDir}/submodels/MPPIC/ParticleStressModels) +set(MPPICCORRECTIONLIMITING ${workDir}/submodels/MPPIC/CorrectionLimitingMethods) +set(MPPICTIMESCALE ${workDir}/submodels/MPPIC/TimeScaleModels) +add_library(dfLagrangianIntermediate SHARED + + +${BASECLOUDS}/kinematicCloud/kinematicCloud.C +${BASECLOUDS}/thermoCloud/thermoCloud.C +${BASECLOUDS}/reactingCloud/reactingCloud.C +${BASECLOUDS}/reactingMultiphaseCloud/reactingMultiphaseCloud.C + +${KINEMATICPARCEL}/defineBasicKinematicParcel.C +${KINEMATICPARCEL}/makeBasicKinematicParcelSubmodels.C + +${KINEMATICCOLLIDINGPARCEL}/defineBasicKinematicCollidingParcel.C +${KINEMATICCOLLIDINGPARCEL}/makeBasicKinematicCollidingParcelSubmodels.C + + + +${THERMOPARCEL}/defineBasicThermoParcel.C +${THERMOPARCEL}/makeBasicThermoParcelSubmodels.C + + + +${REACTINGPARCEL}/defineBasicReactingParcel.C +${REACTINGPARCEL}/makeBasicReactingParcelSubmodels.C + + + +${REACTINGMPPARCEL}/defineBasicReactingMultiphaseParcel.C +${REACTINGMPPARCEL}/makeBasicReactingMultiphaseParcelSubmodels.C + + + +${KINEMATICMPPICPARCEL}/defineBasicKinematicMPPICParcel.C +${KINEMATICMPPICPARCEL}/makeBasicKinematicMPPICParcelSubmodels.C + + + +${workDir}/submodels/Kinematic/PatchInteractionModel/LocalInteraction/patchInteractionData.C +${workDir}/submodels/Kinematic/PatchInteractionModel/LocalInteraction/patchInteractionDataList.C + + +${KINEMATICINJECTION}/KinematicLookupTableInjection/kinematicParcelInjectionData.C +${KINEMATICINJECTION}/KinematicLookupTableInjection/kinematicParcelInjectionDataIO.C +${KINEMATICINJECTION}/KinematicLookupTableInjection/kinematicParcelInjectionDataIOList.C +${KINEMATICINJECTION}/PatchInjection/patchInjectionBase.C + + +${THERMOINJECTION}/ThermoLookupTableInjection/thermoParcelInjectionData.C +${THERMOINJECTION}/ThermoLookupTableInjection/thermoParcelInjectionDataIO.C +${THERMOINJECTION}/ThermoLookupTableInjection/thermoParcelInjectionDataIOList.C + + +${REACTINGINJECTION}/ReactingLookupTableInjection/reactingParcelInjectionData.C +${REACTINGINJECTION}/ReactingLookupTableInjection/reactingParcelInjectionDataIO.C +${REACTINGINJECTION}/ReactingLookupTableInjection/reactingParcelInjectionDataIOList.C + + +${REACTINGMPINJECTION}/ReactingMultiphaseLookupTableInjection/reactingMultiphaseParcelInjectionData.C +${REACTINGMPINJECTION}/ReactingMultiphaseLookupTableInjection/reactingMultiphaseParcelInjectionDataIO.C +${REACTINGMPINJECTION}/ReactingMultiphaseLookupTableInjection/reactingMultiphaseParcelInjectionDataIOList.C + + +${MPPICPARTICLESTRESS}/ParticleStressModel/ParticleStressModel.C +${MPPICPARTICLESTRESS}/HarrisCrighton/HarrisCrighton.C +${MPPICPARTICLESTRESS}/Lun/Lun.C +${MPPICPARTICLESTRESS}/exponential/exponential.C + + +${MPPICCORRECTIONLIMITING}/CorrectionLimitingMethod/CorrectionLimitingMethod.C +${MPPICCORRECTIONLIMITING}/noCorrectionLimiting/noCorrectionLimiting.C +${MPPICCORRECTIONLIMITING}/absolute/absolute.C +${MPPICCORRECTIONLIMITING}/relative/relative.C + + +${MPPICTIMESCALE}/TimeScaleModel/TimeScaleModel.C +${MPPICTIMESCALE}/equilibrium/equilibrium.C +${MPPICTIMESCALE}/nonEquilibrium/nonEquilibrium.C +${MPPICTIMESCALE}/isotropic/isotropic.C + + +${workDir}/integrationScheme/integrationScheme/integrationScheme.C +${workDir}/integrationScheme/integrationScheme/integrationSchemeNew.C +${workDir}/integrationScheme/Euler/Euler.C +${workDir}/integrationScheme/analytical/analytical.C + + +${workDir}/phaseProperties/phaseProperties/phaseProperties.C +${workDir}/phaseProperties/phaseProperties/phasePropertiesIO.C +${workDir}/phaseProperties/phasePropertiesList/phasePropertiesList.C + + +${CMAKE_CURRENT_SOURCE_DIR}/clouds/Templates/KinematicCloud/cloudSolution/cloudSolution.C + + + +${workDir}/submodels/MPPIC/AveragingMethods/makeAveragingMethods.C +) + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libregionModels.so +libfiniteVolume.so libmeshTools.so liblagrangian.so libdistributionModels.so libincompressibleTransportModels.so libdynamicFvMesh.so libsampling.so +libmeshTools.so +) + +target_link_libraries(${PROJECT_NAME} dfCompressibleTurbulenceModels +dfCanteraMixture +dfChemistryModel +dfFluidThermophysicalModels +dfThermophysicalProperties +dfSLGThermo +dfSurfaceFilmModels +) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/lagrangian/spray/CMakeLists.txt b/src/lagrangian/spray/CMakeLists.txt new file mode 100644 index 00000000..f4f31949 --- /dev/null +++ b/src/lagrangian/spray/CMakeLists.txt @@ -0,0 +1,88 @@ +project(dfLagrangianSpray +LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +include_directories( + ${OpenFOAM_SRC}/lagrangian/basic/lnInclude + ${dflagrangianinter_inc} + ${OpenFOAM_SRC}/lagrangian/intermediate/lnInclude + ${OpenFOAM_SRC}/lagrangian/distributionModels/lnInclude + ${dflagrangianspray_inc} + ${OpenFOAM_SRC}/lagrangian/spray/lnInclude + ${dflagrangianturb_inc} + ${OpenFOAM_SRC}/lagrangian/turbulence/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${dfthermophysicalprop_inc} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${dfthermophysicalslg_inc} + $ENV{CANTERA_ROOT}/include + ${dfcantera_inc} + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/incompressible/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/transportModels + ${OpenFOAM_SRC}/regionModels/regionModel/lnInclude + ${OpenFOAM_SRC}/regionModels/surfaceFilmModels/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + +) + + +set(SPRAYPARCEL ${CMAKE_CURRENT_SOURCE_DIR}/parcels/derived/basicSprayParcel) + + +add_library(dfLagrangianSpray SHARED + +${CMAKE_CURRENT_SOURCE_DIR}/clouds/baseClasses/sprayCloud/sprayCloud.C + +${SPRAYPARCEL}/defineBasicSprayParcel.C +${SPRAYPARCEL}/makeBasicSprayParcelSubmodels.C +) + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libturbulenceModels.so +libfiniteVolume.so libmeshTools.so liblagrangian.so libdistributionModels.so libincompressibleTransportModels.so libdynamicFvMesh.so libsampling.so +) + +target_link_libraries(${PROJECT_NAME} dfCompressibleTurbulenceModels +dfCanteraMixture +dfLagrangianIntermediate +dfFluidThermophysicalModels +dfThermophysicalProperties +dfSLGThermo +dfLagrangianTurbulence +) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/lagrangian/turbulence/CMakeLists.txt b/src/lagrangian/turbulence/CMakeLists.txt new file mode 100644 index 00000000..77571dc5 --- /dev/null +++ b/src/lagrangian/turbulence/CMakeLists.txt @@ -0,0 +1,101 @@ +project(dfLagrangianTurbulence +LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +include_directories( + ${OpenFOAM_SRC}/lagrangian/basic/lnInclude + ${dflagrangianinter_inc} + ${OpenFOAM_SRC}/lagrangian/intermediate/lnInclude + ${OpenFOAM_SRC}/lagrangian/distributionModels/lnInclude + ${OpenFOAM_SRC}/lagrangian/turbulence/lnInclude + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${dfthermophysicalprop_inc} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${dfthermophysicalslg_inc} + $ENV{CANTERA_ROOT}/include + ${dfcantera_inc} + ${OpenFOAM_SRC}/TurbulenceModels/turbulenceModels/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/incompressible/lnInclude + ${OpenFOAM_SRC}/TurbulenceModels/compressible/lnInclude + ${OpenFOAM_SRC}/transportModels + ${OpenFOAM_SRC}/regionModels/regionModel/lnInclude + ${OpenFOAM_SRC}/regionModels/surfaceFilmModels/lnInclude + ${OpenFOAM_SRC}/dynamicFvMesh/lnInclude + ${OpenFOAM_SRC}/sampling/lnInclude + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude +) + + +set(DERIVEDPARCELS ${SRC_ORIG}/lagrangian/turbulence/parcels/derived) +set(THERMOPARCEL ${DERIVEDPARCELS}/basicThermoParcel) +set(KINEMATICPARCEL ${DERIVEDPARCELS}/basicKinematicParcel) +set(KINEMATICCOLLIDINGPARCEL ${DERIVEDPARCELS}/basicKinematicCollidingParcel) +set(REACTINGPARCEL ${DERIVEDPARCELS}/basicReactingParcel) +set(REACTINGMPPARCEL ${DERIVEDPARCELS}/basicReactingMultiphaseParcel) +set(KINEMATICMPPICPARCEL ${DERIVEDPARCELS}/basicKinematicMPPICParcel) + +add_library(dfLagrangianTurbulence SHARED + + +${KINEMATICPARCEL}/makeBasicKinematicParcelSubmodels.C + + +${KINEMATICCOLLIDINGPARCEL}/makeBasicKinematicCollidingParcelSubmodels.C + + +${THERMOPARCEL}/makeBasicThermoParcelSubmodels.C + + +${REACTINGPARCEL}/makeBasicReactingParcelSubmodels.C + + +${REACTINGMPPARCEL}/makeBasicReactingMultiphaseParcelSubmodels.C + + +${KINEMATICMPPICPARCEL}/makeBasicKinematicMPPICParcelSubmodels.C +) + + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libcompressibleTransportModels.so libturbulenceModels.so +libfiniteVolume.so libmeshTools.so liblagrangian.so libdistributionModels.so libincompressibleTransportModels.so libdynamicFvMesh.so libsampling.so +libincompressibleTurbulenceModels.so) + +target_link_libraries(${PROJECT_NAME} dfCompressibleTurbulenceModels +dfCanteraMixture +dfLagrangianIntermediate +dfFluidThermophysicalModels +dfThermophysicalProperties +dfSLGThermo +) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + + + +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/regionModels/surfaceFilmModels/CMakeLists.txt b/src/regionModels/surfaceFilmModels/CMakeLists.txt new file mode 100644 index 00000000..d497163c --- /dev/null +++ b/src/regionModels/surfaceFilmModels/CMakeLists.txt @@ -0,0 +1,154 @@ +project(dfSurfaceFilmModels LANGUAGES CXX) + +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +set(workDir ${SRC_ORIG}/regionModels/surfaceFilmModels) +set(KINEMATICMODELS ${workDir}/submodels/kinematic) +set(THERMOMODELS ${workDir}/submodels/thermo) +set(PATCHFIELDS ${workDir}/derivedFvPatchFields) + +# add library +add_library (dfSurfaceFilmModels SHARED + +#* Surface film models */ +${workDir}/surfaceFilmModel/surfaceFilmModel.C +${workDir}/surfaceFilmModel/surfaceFilmModelNew.C +${workDir}/surfaceFilmRegionModel/surfaceFilmRegionModel.C +${workDir}/noFilm/noFilm.C +${workDir}/kinematicSingleLayer/kinematicSingleLayer.C +${workDir}/thermoSingleLayer/thermoSingleLayer.C + + +#Sub-models +${workDir}/submodels/filmSubModelBase.C + +${KINEMATICMODELS}/force/force/force.C +${KINEMATICMODELS}/force/force/forceNew.C +${KINEMATICMODELS}/force/forceList/forceList.C +${KINEMATICMODELS}/force/contactAngleForces/contactAngleForce/contactAngleForce.C +${KINEMATICMODELS}/force/contactAngleForces/distribution/distributionContactAngleForce.C +${KINEMATICMODELS}/force/contactAngleForces/temperatureDependent/temperatureDependentContactAngleForce.C +${KINEMATICMODELS}/force/contactAngleForces/perturbedTemperatureDependent/perturbedTemperatureDependentContactAngleForce.C +${KINEMATICMODELS}/force/thermocapillaryForce/thermocapillaryForce.C + +${KINEMATICMODELS}/injectionModel/injectionModel/injectionModel.C +${KINEMATICMODELS}/injectionModel/injectionModel/injectionModelNew.C +${KINEMATICMODELS}/injectionModel/injectionModelList/injectionModelList.C +${KINEMATICMODELS}/injectionModel/drippingInjection/drippingInjection.C +${KINEMATICMODELS}/injectionModel/BrunDrippingInjection/BrunDrippingInjection.C +${KINEMATICMODELS}/injectionModel/patchInjection/patchInjection.C +${KINEMATICMODELS}/injectionModel/curvatureSeparation/curvatureSeparation.C + +${KINEMATICMODELS}/transferModels/transferModel/transferModel.C +${KINEMATICMODELS}/transferModels/transferModel/transferModelNew.C +${KINEMATICMODELS}/transferModels/transferModelList/transferModelList.C + +${KINEMATICMODELS}/filmThermoModel/filmThermoModel/filmThermoModel.C +${KINEMATICMODELS}/filmThermoModel/filmThermoModel/filmThermoModelNew.C +${KINEMATICMODELS}/filmThermoModel/constantFilmThermo/constantFilmThermo.C +${KINEMATICMODELS}/filmThermoModel/liquidFilmThermo/liquidFilmThermo.C + +${KINEMATICMODELS}/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModel.C +${KINEMATICMODELS}/filmTurbulenceModel/filmTurbulenceModel/filmTurbulenceModelNew.C +${KINEMATICMODELS}/filmTurbulenceModel/laminar/laminar.C + +${THERMOMODELS}/phaseChangeModel/phaseChangeModel/phaseChangeModel.C +${THERMOMODELS}/phaseChangeModel/phaseChangeModel/phaseChangeModelNew.C +${THERMOMODELS}/phaseChangeModel/noPhaseChange/noPhaseChange.C +${THERMOMODELS}/phaseChangeModel/standardPhaseChange/standardPhaseChange.C +${THERMOMODELS}/phaseChangeModel/solidification/solidification.C +${THERMOMODELS}/phaseChangeModel/waxSolventEvaporation/waxSolventEvaporation.C + +${THERMOMODELS}/heatTransferModel/heatTransferModel/heatTransferModel.C +${THERMOMODELS}/heatTransferModel/heatTransferModel/heatTransferModelNew.C +${THERMOMODELS}/heatTransferModel/constantHeatTransfer/constantHeatTransfer.C +${THERMOMODELS}/heatTransferModel/mappedConvectiveHeatTransfer/mappedConvectiveHeatTransfer.C + +${THERMOMODELS}/filmRadiationModel/filmRadiationModel/filmRadiationModel.C +${THERMOMODELS}/filmRadiationModel/filmRadiationModel/filmRadiationModelNew.C +${THERMOMODELS}/filmRadiationModel/noRadiation/noRadiation.C +${THERMOMODELS}/filmRadiationModel/constantRadiation/constantRadiation.C +${THERMOMODELS}/filmRadiationModel/primaryRadiation/primaryRadiation.C +${THERMOMODELS}/filmRadiationModel/standardRadiation/standardRadiation.C + +${THERMOMODELS}/filmViscosityModel/filmViscosityModel/filmViscosityModel.C +${THERMOMODELS}/filmViscosityModel/filmViscosityModel/filmViscosityModelNew.C +${THERMOMODELS}/filmViscosityModel/constantViscosity/constantViscosity.C +${THERMOMODELS}/filmViscosityModel/liquidViscosity/liquidViscosity.C +${THERMOMODELS}/filmViscosityModel/thixotropicViscosity/thixotropicViscosity.C +${THERMOMODELS}/filmViscosityModel/ArrheniusViscosity/ArrheniusViscosity.C +${THERMOMODELS}/filmViscosityModel/function1Viscosity/function1Viscosity.C +${THERMOMODELS}/filmViscosityModel/waxSolventViscosity/waxSolventViscosity.C + + +#/* Boundary conditions */ + +${PATCHFIELDS}/filmHeightInletVelocity/filmHeightInletVelocityFvPatchVectorField.C +${PATCHFIELDS}/inclinedFilmNusseltHeight/inclinedFilmNusseltHeightFvPatchScalarField.C +${PATCHFIELDS}/inclinedFilmNusseltInletVelocity/inclinedFilmNusseltInletVelocityFvPatchVectorField.C +) + +# dynamic link +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libtriSurface.so libdynamicMesh.so libdynamicFvMesh.so +libextrudeModel.so libdecompositionMethods.so +) +target_link_libraries(${PROJECT_NAME} newdynamicMesh) +link_directories($ENV{FOAM_LIBBIN}/dummy +) +target_link_libraries(${PROJECT_NAME} + libcompressibleTransportModels.so + dfFluidThermophysicalModels + dfThermophysicalProperties + dfSLGThermo + libdistributionModels.so + libregionModels.so + libfiniteVolume.so + libmeshTools.so +) + + + +include_directories( + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${dfthermophysicalprop_inc} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${dfthermophysicalslg} + ${DF_SRC}/thermophysicalModels/SLGThermo/SLGThermo/ + ${CANTERA_ROOT}/include + ${dfcantera_inc} + ${OpenFOAM_SRC}/lagrangian/distributionModels/lnInclude + ${OpenFOAM_SRC}/regionModels/regionModel/lnInclude + ${OpenFOAM_SRC}/regionModels/surfaceFilmModels/lnInclude + ${OpenFOAM_SRC}/finiteVolume/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + + ) + + + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) \ No newline at end of file diff --git a/src/thermophysicalModels/SLGThermo/CMakeLists.txt b/src/thermophysicalModels/SLGThermo/CMakeLists.txt new file mode 100644 index 00000000..da9ecef2 --- /dev/null +++ b/src/thermophysicalModels/SLGThermo/CMakeLists.txt @@ -0,0 +1,57 @@ +project(dfSLGThermo LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +# add library + +add_library(${PROJECT_NAME} SHARED +${CMAKE_CURRENT_SOURCE_DIR}/SLGThermo/SLGThermo.C) + +include_directories( + + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${dfthermophysicalprop_inc} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${CANTERA_ROOT}/include + ${dfcantera_inc} + ${OpenFOAM_SRC}/finiteVolume/lnInclude +) + + + +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libcompressibleTransportModels.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} + +dfThermophysicalProperties +dfCanteraMixture + +) + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/thermophysicalModels/basic/CMakeLists.txt b/src/thermophysicalModels/basic/CMakeLists.txt new file mode 100644 index 00000000..b0bbbe69 --- /dev/null +++ b/src/thermophysicalModels/basic/CMakeLists.txt @@ -0,0 +1,72 @@ +project(dfFluidThermophysicalModels LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +# add library +set(workDir + $ENV{SRC_ORIG}/thermophysicalModels/basic/) + +set(SOURCES + ${workDir}/basicThermo/basicThermo.C + ${workDir}/fluidThermo/fluidThermo.C + + ${workDir}/psiThermo/psiThermo.C + + ${workDir}/rhoThermo/rhoThermo.C + + ${workDir}/derivedFvPatchFields/fixedEnergy/fixedEnergyFvPatchScalarField.C + ${workDir}/derivedFvPatchFields/gradientEnergy/gradientEnergyFvPatchScalarField.C + ${workDir}/derivedFvPatchFields/mixedEnergy/mixedEnergyFvPatchScalarField.C + + ${workDir}/derivedFvPatchFields/energyJump/energyJump/energyJumpFvPatchScalarField.C + ${workDir}/derivedFvPatchFields/energyJump/energyJumpAMI/energyJumpAMIFvPatchScalarField.C + ) + +add_library(${PROJECT_NAME} SHARED ${SOURCES}) + +include_directories( + ${OpenFOAM_SRC}/transportModels/compressible/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/basic/lnInclude + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude + ${OpenFOAM_SRC}/meshTools/lnInclude + $ENV{DF_SRC}/thermophysicalModels/thermophysicalProperties/solidProperties/solidMixtureProperties + $ENV{DF_SRC}/thermophysicalModels/thermophysicalProperties/solidProperties/solidProperties +) + + + +target_link_libraries(${PROJECT_NAME} $ENV{FOAM_LIBBIN}/libfiniteVolume.so libmeshTools.so libcompressibleTransportModels.so) + +target_link_libraries(${PROJECT_NAME} ${CANTERA_ROOT}/lib/libcantera_shared.so.2) + +target_link_libraries(${PROJECT_NAME} + +#${DF_ROOT}/lib/libdfThermophysicalProperties.so +dfThermophysicalProperties +) + + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + ) diff --git a/src/thermophysicalModels/thermophysicalProperties/CMakeLists.txt b/src/thermophysicalModels/thermophysicalProperties/CMakeLists.txt new file mode 100644 index 00000000..cdff53a1 --- /dev/null +++ b/src/thermophysicalModels/thermophysicalProperties/CMakeLists.txt @@ -0,0 +1,104 @@ +project(dfThermophysicalProperties LANGUAGES CXX) +#set the options for the shared library +set(LINK_FLAGS "-fuse-ld=bfd -shared -Xlinker --add-needed -Xlinker --no-as-needed") + +#set the link options +set(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS}") +set(CMAKE_EXE_LINKER_FLAGS "${LINK_FLAGS}") + + +SET(CMAKE_C_COMPILER g++) +set(PATH_LIB_OPENMPI "openmpi-system") # Foundation version +set(DEFINITIONS_COMPILE "-std=c++11 -m64 -Dlinux64 -DWM_ARCH_OPTION=64 +-DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor +-Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -O3 +-DNoRepository -ftemplate-depth-100 -std=c++14 +-Wno-unused-variable -Wno-unused-but-set-variable -Wno-old-style-cast -DOMPI_SKIP_MPICXX +-pthread +-fPIC -c") + + +# Compiling configure +add_definitions("${DEFINITIONS_COMPILE}") +# add library +set(workDir + ${SRC_ORIG}/thermophysicalModels/thermophysicalProperties/) + +set(NSRDSfunctions + ${workDir}/thermophysicalFunctions/NSRDSfunctions) + +set(SOURCES + ${workDir}/thermophysicalFunctions/thermophysicalFunction/thermophysicalFunction.C + + ${NSRDSfunctions}/NSRDSfunc0/NSRDSfunc0.C + ${NSRDSfunctions}/NSRDSfunc1/NSRDSfunc1.C + ${NSRDSfunctions}/NSRDSfunc2/NSRDSfunc2.C + ${NSRDSfunctions}/NSRDSfunc3/NSRDSfunc3.C + ${NSRDSfunctions}/NSRDSfunc4/NSRDSfunc4.C + ${NSRDSfunctions}/NSRDSfunc5/NSRDSfunc5.C + ${NSRDSfunctions}/NSRDSfunc6/NSRDSfunc6.C + ${NSRDSfunctions}/NSRDSfunc7/NSRDSfunc7.C + ${NSRDSfunctions}/NSRDSfunc14/NSRDSfunc14.C + + ${workDir}/thermophysicalFunctions/APIfunctions/APIdiffCoefFunc/APIdiffCoefFunc.C + + ${workDir}/thermophysicalProperties/thermophysicalProperties.C + + ${workDir}/liquidProperties/liquidProperties/liquidProperties.C + ${PROJECT_SOURCE_DIR}/liquidProperties/liquidMixtureProperties/liquidMixtureProperties.C + + ${workDir}/liquidProperties/H2O/H2O.C + ${workDir}/liquidProperties/C7H16/C7H16.C + ${workDir}/liquidProperties/C12H26/C12H26.C + ${workDir}/liquidProperties/C10H22/C10H22.C + ${workDir}/liquidProperties/C8H18/C8H18.C + ${workDir}/liquidProperties/IC8H18/IC8H18.C + ${workDir}/liquidProperties/C4H10O/C4H10O.C + ${workDir}/liquidProperties/C2H6O/C2H6O.C + ${workDir}/liquidProperties/IDEA/IDEA.C + ${workDir}/liquidProperties/aC10H7CH3/aC10H7CH3.C + ${workDir}/liquidProperties/bC10H7CH3/bC10H7CH3.C + ${workDir}/liquidProperties/C8H10/C8H10.C + ${workDir}/liquidProperties/C16H34/C16H34.C + ${workDir}/liquidProperties/C9H20/C9H20.C + ${workDir}/liquidProperties/C6H6/C6H6.C + ${workDir}/liquidProperties/C7H8/C7H8.C + ${workDir}/liquidProperties/C6H14/C6H14.C + ${workDir}/liquidProperties/C13H28/C13H28.C + ${workDir}/liquidProperties/C14H30/C14H30.C + ${workDir}/liquidProperties/C3H8/C3H8.C + ${workDir}/liquidProperties/C3H6O/C3H6O.C + ${workDir}/liquidProperties/C2H6/C2H6.C + ${workDir}/liquidProperties/CH3OH/CH3OH.C + ${workDir}/liquidProperties/C2H5OH/C2H5OH.C + ${workDir}/liquidProperties/Ar/Ar.C + ${workDir}/liquidProperties/N2/N2.C + ${workDir}/liquidProperties/MB/MB.C + ${workDir}/liquidProperties/CH4N2O/CH4N2O.C + ${workDir}/liquidProperties/nC3H8O/nC3H8O.C + ${workDir}/liquidProperties/iC3H8O/iC3H8O.C + + ${PROJECT_SOURCE_DIR}/solidProperties/solidProperties/solidProperties.C + ${PROJECT_SOURCE_DIR}/solidProperties/solidProperties/solidPropertiesNew.C + ${workDir}/solidProperties/solidMixtureProperties/solidMixtureProperties.C + + ${workDir}solidProperties/ash/ash.C + ${workDir}solidProperties/C/C.C + ${workDir}solidProperties/CaCO3/CaCO3.C) + +add_library(${PROJECT_NAME} SHARED ${SOURCES}) + +include_directories( + ${PROJECT_SOURCE_DIR}/solidProperties/solidMixtureProperties + ${PROJECT_SOURCE_DIR}/solidProperties/solidProperties + ${workDir} + ${OpenFOAM_SRC}/thermophysicalModels/thermophysicalProperties/lnInclude +) +message("PROJECT_SOURCE_DIR: " ${PROJECT_SOURCE_DIR}) + +# install +install(TARGETS ${PROJECT_NAME} + LIBRARY DESTINATION lib +PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE +GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE + )