Open daniellivingston opened 3 years ago
The Voronoi code fundamentally relies on PETSc data structures to compute. Because PETSc is such a heavy dependency, it's proposed that we use compiler directives to allow compiling with Voronoi/PETSc to be optional. For example:
subroutine voronoi(args)
#ifndef HAS_PETSC
write(*,*) "petsc required to use this subroutine; returning"
#else
c [do voronoi stuff]
#endif
end subroutine voronoi
While fixing cmake to build with Exodus, look into similar scripts for Petsc option. Stable but old code for Voronoi is at https://github.com/lanl/voronoi Is there something newer? See https://github.com/lanl/voronoi/issues/15
Find most recent version of Voronoi working with Petsc. From Daniel's note above: The Voronoi + LaGriT codebase already exists, but is about 1.5 years out of date and not completely production ready.
From Daniel note:
PETSc integration:
find_package(PETSc v3.3.3 REQUIRED)
PETSc_FOUND
PETSc_INCLUDE_DIRS
PETSc_LIBRARIES
if (PETSc_FOUND)
# add voronoi source
set(TPL_LIBRARIES "${PETSc_LIBRARIES}")
set(TPL_INCLUDE_DIRS "${PETSC_INCLUDE_DIRS} ..."")
endif()
Interface the Voronoi codebase with LaGriT to supersede the
dump/stor
anddump/pflotran
commands. The Voronoi + LaGriT codebase already exists, but is about 1.5 years out of date and not completely production ready. We’d need to: update the LaGriT Makefile, add test suite cases, merge/clean up the two codebases, and add those compiler directives.