From c3802cfc8763bc2b3c13598c5e6bc91af4eb8f90 Mon Sep 17 00:00:00 2001 From: iasonmanolas Date: Thu, 12 May 2022 09:24:32 +0300 Subject: [PATCH] Refactoring --- CMakeLists.txt | 22 +++++++++++++++++----- chronoseulersimulationmodel.cpp | 2 +- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 526c0ff..66cc9dd 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -156,11 +156,23 @@ PUBLIC ${ENSMALLEN_SOURCE_DIR}/include) add_compile_definitions(USE_ENSMALLEN) #endif() -set(Chrono_DIR "/home/iason/Coding/build/external dependencies/CHRONO-src/cmake") -find_package(Chrono - CONFIG REQUIRED) -target_link_libraries(${PROJECT_NAME} PRIVATE "/home/iason/Coding/build/external dependencies/CHRONO-src/build/RelWithDebInfo/lib/libChronoEngine.so") -target_include_directories(${PROJECT_NAME} PRIVATE "/home/iason/Coding/build/external dependencies/CHRONO-src/src" PRIVATE "/home/iason/Coding/build/external dependencies/CHRONO-src/build/RelWithDebInfo/" ) +#Chrono +#set(Chrono_DIR "/home/iason/Coding/Libraries/chrono-7.0.3/build/cmake") +set(Chrono_DIR "/home/iason/Coding/Libraries/chrono-7.0.3/build/cmake") +LIST(APPEND CMAKE_PREFIX_PATH "${CMAKE_INSTALL_PREFIX}/../Chrono/lib") +#set(Chrono_DIR "/home/iason/Coding/build/external dependencies/CHRONO-src/cmake") +find_package(Chrono #[[COMPONENTS FEA]] + CONFIG) +if (NOT Chrono_FOUND) + message("Could not find Chrono or one of its required modules") + return() +endif() +set_target_properties(${PROJECT_NAME} PROPERTIES + COMPILE_FLAGS "${CHRONO_CXX_FLAGS} ${EXTRA_COMPILE_FLAGS}" + COMPILE_DEFINITIONS "CHRONO_DATA_DIR=\"${CHRONO_DATA_DIR}\"" + LINK_FLAGS "${CHRONO_LINKER_FLAGS}") +target_link_libraries(${PROJECT_NAME} PRIVATE ${CHRONO_LIBRARIES}) +target_include_directories(${PROJECT_NAME} PRIVATE ${CHRONO_INCLUDE_DIRS}) #find_package(OpenMP REQUIRED) #target_link_libraries(${PROJECT_NAME} OpenMP::OpenMP_CXX) diff --git a/chronoseulersimulationmodel.cpp b/chronoseulersimulationmodel.cpp index e63ce02..8c480e9 100644 --- a/chronoseulersimulationmodel.cpp +++ b/chronoseulersimulationmodel.cpp @@ -148,7 +148,7 @@ SimulationResults ChronosEulerSimulationModel::executeSimulation( simulationResults.displacements[vi][1] = posDisplacement[1]; simulationResults.displacements[vi][2] = posDisplacement[2]; //Rotations - const chrono::ChQuaternion rotQuat = node_chronos->GetRot(); + chrono::ChQuaternion rotQuat = node_chronos->GetRot(); simulationResults.rotationalDisplacementQuaternion[vi] = Eigen::Quaternion(rotQuat.e0(), rotQuat.e1(), rotQuat.e2(), rotQuat.e3()); const ChVector eulerAngles = rotQuat.Q_to_Euler123();