changed: redo restarting support

store restart data separate from visualization data.
this has several advantages:
- no unusual striding in visualization files due to multistep methods
- we can store data which are not on a per-control-point basis
- simplify logic
This commit is contained in:
Arne Morten Kvarving
2017-03-24 09:24:46 +01:00
parent 0c582050c3
commit e7413d0d26
21 changed files with 433 additions and 232 deletions

View File

@@ -222,6 +222,17 @@ if(IFEM_USE_ISTL)
endif()
endif()
# Cereal
if(IFEM_USE_CEREAL)
find_path(CEREAL_INCLUDE_DIRS NAMES cereal/cereal.hpp)
if(CEREAL_INCLUDE_DIRS)
list(APPEND IFEM_DEPINCLUDES ${CEREAL_INCLUDE_DIRS})
list(APPEND IFEM_DEFINITIONS -DHAS_CEREAL=1)
message(STATUS "Cereal serialization support enabled")
set(CEREAL_FOUND 1)
endif()
endif()
# Portability issues
include(CheckFunctionExists)
set(CMAKE_REQUIRED_DEFINITIONS)

View File

@@ -11,6 +11,7 @@ OPTION(IFEM_USE_SAMG "Compile with SAMG support?" OFF)
OPTION(IFEM_USE_HDF5 "Compile with HDF5 support?" ON)
OPTION(IFEM_USE_VTFWRITER "Compile with VTFWriter support?" ON)
OPTION(IFEM_USE_UMFPACK "Compile with UMFPACK support?" ON)
OPTION(IFEM_USE_CEREAL "Compile with cereal support?" ON)
OPTION(IFEM_AS_SUBMODULE "Compile IFEM as a submodule of apps?" OFF)
OPTION(IFEM_WHOLE_PROG_OPTIM "Compile IFEM with link-time optimizations?" OFF)
OPTION(IFEM_TEST_MEMCHECK "Run tests through valgrind?" OFF)

View File

@@ -1,7 +1,7 @@
if(NOT IFEM_FOUND)
set(IFEM_INCLUDE_DIRS @IFEM_INCLUDE_DIRS@)
set(IFEM_LIBRARIES -L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -lIFEM @IFEM_DEPLIBS@)
set(IFEM_DEFINITIONS "@IFEM_DEFINITIONS@")
set(IFEM_DEFINITIONS @IFEM_DEFINITIONS@)
set(IFEM_CXX_FLAGS "@IFEM_CXX_FLAGS@")
list(APPEND CMAKE_MODULE_PATH @CMAKE_INSTALL_PREFIX@/lib/IFEM)
@@ -12,6 +12,7 @@ if(NOT IFEM_FOUND)
set(ISTL_FOUND @ISTL_FOUND@)
set(MPI_FOUND @MPI_FOUND@)
set(HDF5_FOUND @HDF5_FOUND@)
set(CEREAL_FOUND @CEREAL_FOUND@)
set(IFEM_REGTEST_SCRIPT ${IFEM_PATH}/scripts/regtest.sh.in)
set(IFEM_CHECKCOMMITS_SCRIPT ${IFEM_PATH}/CheckCommits.cmake)