Droplet Lagrangian Transient One-dimensional Reacting Code
Implementation of both liquid and gas phase governing equations.
Nevar pievienot vairāk kā 25 tēmas
Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
|
- cmake_minimum_required(VERSION 3.12.0)
- project(demo)
-
- if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
- set(CMAKE_INSTALL_PREFIX ${PROJECT_SOURCE_DIR} CACHE PATH "Installing prefix of the project" FORCE)
- endif(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
-
- if (NOT CMAKE_BUILD_TYPE)
- message(STATUS "No build type selected, default to Release")
- set(CMAKE_BUILD_TYPE "Release")
- endif()
-
- set(CMAKE_CXX_STANDARD 11)
- find_package(OpenMP REQUIRED)
- find_package(Eigen3 REQUIRED)
- find_package(fmt REQUIRED)
-
- find_package(PkgConfig REQUIRED)
- pkg_check_modules(GSL REQUIRED IMPORTED_TARGET gsl)
- pkg_check_modules(CANTERA REQUIRED IMPORTED_TARGET cantera)
-
- # Define path to header files and libraries
- set(IDA_DIR /usr/local)
- set(COOLPROP_DIR /opt/CoolProp/shared_library/Linux)
-
- set(IDA_INCLUDES ${IDA_DIR}/include)
- set(COOLPROP_INCLUDES ${COOLPROP_DIR}/include)
-
- # Search for source files
- file(GLOB SRC ${PROJECT_SOURCE_DIR}/src/*.cpp)
- add_executable(DropletCombustion ${SRC})
-
- # Link libraries
- target_link_directories(DropletCombustion PRIVATE ${IDA_DIR}/lib ${COOLPROP_DIR}/64bit)
- target_link_libraries(DropletCombustion
- PRIVATE
- PkgConfig::CANTERA
- PkgConfig::GSL
- fmt::fmt
- Eigen3::Eigen
- sundials_nvecopenmp sundials_ida sundials_sunlinsollapackband CoolProp)
- target_link_libraries(DropletCombustion PRIVATE OpenMP::OpenMP_CXX)
-
- # Include directories
- target_include_directories(DropletCombustion
- PRIVATE ${PROJECT_SOURCE_DIR}/include ${IDA_INCLUDES} ${COOLPROP_INCLUDES})
-
- # Set the output path
- install(TARGETS DropletCombustion
- DESTINATION bin)
|