Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
93a1d3b
Convert to MDS mesh during adapt for capVol
bobpaw Aug 29, 2024
49262e8
Clean up capVol
bobpaw Sep 12, 2024
2fbdf38
Add mds adapts to capVol test matrix
bobpaw Sep 12, 2024
7ddcb65
use new PCU object
bobpaw Jun 12, 2025
e7c796f
add gmi_cap_probe and gmi_cap_load_some
bobpaw Jun 17, 2025
5f2e701
add gmi_cap documentation and update cmake
bobpaw Jun 18, 2025
da0bcd0
update apf_cap and tests that call it
bobpaw Jun 18, 2025
60326fe
add Capstone functions and rewrite capVol
bobpaw Jun 19, 2025
a713124
capVol: use ma::getBoundingBox
bobpaw Jun 23, 2025
d92206b
capVol: add parallel test cases
bobpaw Jun 23, 2025
87a142b
update apf_cap/gmi_cap docs and rename function
bobpaw Jun 25, 2025
a4ff301
test: limit capstone tests even more
bobpaw Jun 26, 2025
3268190
test: add alternate cube shock and re-enable
bobpaw Jun 26, 2025
fa5fe5b
gmi_cap: check for probe failure
bobpaw Jun 26, 2025
511ff0a
test: cleanup capstone utilities
bobpaw Jun 26, 2025
e1e6ccb
apf_cap: define getCapNative
bobpaw Jun 26, 2025
a187c98
test: cleanup capCheckParam and capGeomTest
bobpaw Jun 26, 2025
32d57be
gmi_cap: fix #include brackets
bobpaw Jun 26, 2025
a878a59
apf_cap: add sizing functions
bobpaw Jun 30, 2025
d836b5c
apf_cap: use PUMI_HAS_CAPSTONE_SIZINGMETRICTOOL
bobpaw Jun 30, 2025
99aeb5d
apf_cap: use PUMI_ENABLE_CAPSTONE
bobpaw Jun 30, 2025
b6c2f9e
apf_cap: add extractCapSizing
bobpaw Jun 30, 2025
01aaa8b
apf_cap: add documentation for new functions
bobpaw Jun 30, 2025
1b30ee3
test: add capAdapt -B and -A flags
bobpaw Jun 30, 2025
32c246e
test: update capCheckParam
bobpaw Jul 1, 2025
912a7dd
test: add cap native adapt test
bobpaw Jul 2, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -105,14 +105,18 @@ set(Trilinos_PREFIX "" CACHE STRING "Trilinos installation directory")
option(SKIP_SIMMETRIX_VERSION_CHECK "enable at your own risk; it may result in undefined behavior" OFF)
option(ENABLE_SIMMETRIX "Build with Simmetrix support" OFF)
message(STATUS "ENABLE_SIMMETRIX: ${ENABLE_SIMMETRIX}")
option(ENABLE_CAPSTONE "Build with Capstone support" OFF)
message(STATUS "ENABLE_CAPSTONE: ${ENABLE_CAPSTONE}")
option(PUMI_ENABLE_CAPSTONE "Build PUMI with Capstone support" OFF)
# For compatibility and to inherit from owning projects:
if(ENABLE_CAPSTONE)
set(PUMI_ENABLE_CAPSTONE ON)
endif()
message(STATUS "PUMI_ENABLE_CAPSTONE: ${PUMI_ENABLE_CAPSTONE}")

if(ENABLE_SIMMETRIX)
add_definitions(-DHAVE_SIMMETRIX)
endif()
if(ENABLE_CAPSTONE)
add_definitions(-DHAVE_CAPSTONE)
if(PUMI_ENABLE_CAPSTONE)
add_definitions(-DPUMI_HAS_CAPSTONE)
endif()

option(ENABLE_FPP "Build with snapping to first problem plane" OFF)
Expand Down Expand Up @@ -144,8 +148,8 @@ if(ENABLE_SIMMETRIX)
find_package(SimModSuite MODULE REQUIRED)
endif()

if(ENABLE_CAPSTONE)
set(SCOREC_USE_CreateMG_DEFAULT ${ENABLE_CAPSTONE})
if(PUMI_ENABLE_CAPSTONE)
set(SCOREC_USE_CreateMG_DEFAULT ${PUMI_ENABLE_CAPSTONE})
bob_public_dep(CreateMG)
endif()

Expand Down
4 changes: 2 additions & 2 deletions apf/apfMesh.cc
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ int const quad_edge_verts[4][2] =
*/

int const tet_edge_verts[6][2] =
#ifndef HAVE_CAPSTONE
#ifndef PUMI_HAS_CAPSTONE
{{0,1}
,{1,2}
,{2,0}
Expand All @@ -78,7 +78,7 @@ int const pyramid_edge_verts[8][2] =
,{0,4},{1,4},{2,4},{3,4}};

int const tet_tri_verts[4][3] =
#ifndef HAVE_CAPSTONE
#ifndef PUMI_HAS_CAPSTONE
{{0,1,2}
,{0,1,3}
,{1,2,3}
Expand Down
24 changes: 17 additions & 7 deletions apf_cap/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ if(DEFINED TRIBITS_PACKAGE)
return()
endif()

if(NOT ENABLE_CAPSTONE)
if(NOT PUMI_ENABLE_CAPSTONE)
return()
endif()

Expand All @@ -12,25 +12,35 @@ include(CheckIncludeFileCXX)
cmake_policy(SET CMP0075 NEW) # Observe CMAKE_REQUIRED_LIBRARIES.

#Sources & Headers
set(SOURCES apfCAP.cc)
set(SOURCES apfCAP.cc apfCAPsizing.cc)
set(HEADERS apfCAP.h)

#Library
add_library(apf_cap ${SOURCES})
target_link_libraries(apf_cap PUBLIC apf gmi_cap)
target_link_libraries(apf_cap PUBLIC capstone_module
framework_testing)
target_link_libraries(apf_cap PRIVATE framework_mesh framework_application)

set(CMAKE_CXX_OLD_STANDARD "${CMAKE_CXX_STANDARD}")
cmake_push_check_state(RESET)
set(CMAKE_CXX_STANDARD 14)

# CreateFT_Vector.h via CreateMG_SizingMetricTool.h is missing
# `#include <limits>` in Capstone 12.5.2 so add it explicitly in this check.
if(MSVC)
set(CMAKE_REQUIRED_FLAGS "/FI limits")
else()
set(CMAKE_REQUIRED_FLAGS "-include limits")
endif()

set(CMAKE_REQUIRED_LIBRARIES "framework_meshing")
check_include_file_cxx("CreateMG_SizingMetricTool.h" HAVE_CAPSTONE_SIZINGMETRICTOOL)
check_include_file_cxx(
"CreateMG_SizingMetricTool.h" PUMI_HAS_CAPSTONE_SIZINGMETRICTOOL
)
cmake_pop_check_state()
set(CMAKE_CXX_STANDARD "${CMAKE_CXX_OLD_STANDARD}")

if(HAVE_CAPSTONE_SIZINGMETRICTOOL)
target_compile_definitions(apf_cap PRIVATE HAVE_CAPSTONE_SIZINGMETRICTOOL)
if(PUMI_HAS_CAPSTONE_SIZINGMETRICTOOL)
target_compile_definitions(apf_cap PRIVATE PUMI_HAS_CAPSTONE_SIZINGMETRICTOOL)
target_compile_features(framework_meshing INTERFACE cxx_std_14)
target_link_libraries(apf_cap PRIVATE framework_meshing)
endif()
Expand Down
Loading