Skip to content

Commit

Permalink
update libvori, use MERGE idiom for LOGICAL->INT conversion, use CPAB…
Browse files Browse the repository at this point in the history
…ORT/CPWARN
  • Loading branch information
dev-zero committed Dec 24, 2020
1 parent 82dfb0d commit 8a762a4
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 47 deletions.
60 changes: 15 additions & 45 deletions src/voronoi_interface.F
Original file line number Diff line number Diff line change
Expand Up @@ -408,16 +408,9 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
IF (do_voro /= 0) THEN
ret = libvori_setPrefix_Voronoi()
ret = libvori_setRefinementFactor(reffac)
IF (voro_skip_first) THEN
ret = libvori_setVoronoiSkipFirst(1)
ELSE
ret = libvori_setVoronoiSkipFirst(0)
ENDIF
IF (vori_overwrite) THEN
ret = libvori_setVoriOverwrite(1)
ELSE
ret = libvori_setVoriOverwrite(0)
ENDIF
ret = libvori_setVoronoiSkipFirst(MERGE(1, 0, voro_skip_first))
ret = libvori_setVoriOverwrite(MERGE(1, 0, vori_overwrite))
ret = libvori_setEMPOutput(MERGE(1, 0, outemp))
ELSE
ret = libvori_setPrefix_BQB()
ENDIF
Expand All @@ -439,26 +432,10 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
END SELECT
ret = libvori_setBQBOptimization(bqb_optimize)
ret = libvori_setBQBHistory(bqb_history)
IF (bqb_skip_first) THEN
ret = libvori_setBQBSkipFirst(1)
ELSE
ret = libvori_setBQBSkipFirst(0)
ENDIF
IF (bqb_check) THEN
ret = libvori_setBQBCheck(1)
ELSE
ret = libvori_setBQBCheck(0)
ENDIF
IF (bqb_overwrite) THEN
ret = libvori_setBQBOverwrite(1)
ELSE
ret = libvori_setBQBOverwrite(0)
ENDIF
IF (bqb_store_step) THEN
ret = libvori_setBQBStoreStep(1)
ELSE
ret = libvori_setBQBStoreStep(0)
ENDIF
ret = libvori_setBQBSkipFirst(MERGE(1, 0, bqb_skip_first))
ret = libvori_setBQBCheck(MERGE(1, 0, bqb_check))
ret = libvori_setBQBOverwrite(MERGE(1, 0, bqb_overwrite))
ret = libvori_setBQBStoreStep(MERGE(1, 0, bqb_store_step))
ENDIF

ret = libvori_setgrid( &
Expand Down Expand Up @@ -486,7 +463,7 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
)

IF (ret /= 0) THEN
CALL cp_abort(__LOCATION__, "The library returned an error. Aborting.")
CPABORT("The library returned an error. Aborting.")
ENDIF

ALLOCATE (particles_z(natom))
Expand All @@ -508,7 +485,7 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
ret = libvori_pushatoms(natom, particles_z, particles_c, particles_r(1, :), particles_r(2, :), particles_r(3, :))

IF (ret /= 0) THEN
CALL cp_abort(__LOCATION__, "The library returned an error. Aborting.")
CPABORT("The library returned an error. Aborting.")
ENDIF

ENDIF
Expand Down Expand Up @@ -559,7 +536,7 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
IF (my_rank == dest) THEN
ret = libvori_push_rho_zrow(I1 - L1, I2 - L2, U3 - L3 + 1, buf)
IF (ret /= 0) THEN
CALL cp_abort(__LOCATION__, "The library returned an error. Aborting.")
CPABORT("The library returned an error. Aborting.")
ENDIF
ENDIF

Expand All @@ -580,12 +557,6 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor

IF (do_voro /= 0) THEN

IF (outemp) THEN
ret = libvori_setEMPOutput(1)
ELSE
ret = libvori_setEMPOutput(0)
ENDIF

IF (radius_type == voro_radii_unity) THEN
ret = libvori_setRadii_Unity()
ELSEIF (radius_type == voro_radii_vdw) THEN
Expand All @@ -606,15 +577,15 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
ret = libvori_sanitycheck(sim_step, sim_time)

IF (ret /= 0) THEN
CALL cp_abort(__LOCATION__, "The library returned an error. Aborting.")
CPABORT("The library returned an error. Aborting.")
ENDIF

ENDIF

ret = libvori_step(sim_step, sim_time)

IF (ret /= 0) THEN
CALL cp_abort(__LOCATION__, "The library returned an error. Aborting.")
CPABORT("The library returned an error. Aborting.")
ENDIF

ALLOCATE (voro_radii(natom))
Expand Down Expand Up @@ -706,7 +677,7 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
ret = libvori_processBQBFrame(sim_step, sim_time*femtoseconds)

IF (ret /= 0) THEN
CALL cp_abort(__LOCATION__, "The library returned an error. Aborting.")
CPABORT("The library returned an error. Aborting.")
ENDIF

IF (do_voro /= 0) THEN
Expand Down Expand Up @@ -736,8 +707,8 @@ SUBROUTINE entry_voronoi_or_bqb(do_voro, do_bqb, input_voro, input_bqb, unit_vor
MARK_USED(rspace_pw)

CALL cp_warn(__LOCATION__, &
"Voronoi integration and BQB output require CP2k to be compiled &
&with the -D__LIBVORI preprocessor option.")
"Voronoi integration and BQB output require CP2k to be compiled"// &
" with the -D__LIBVORI preprocessor option.")

#endif

Expand All @@ -753,4 +724,3 @@ SUBROUTINE finalize_libvori()
#endif
END SUBROUTINE
END MODULE voronoi_interface
4 changes: 2 additions & 2 deletions tools/toolchain/scripts/install_libvori.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
[ "${BASH_SOURCE[0]}" ] && SCRIPT_NAME="${BASH_SOURCE[0]}" || SCRIPT_NAME=$0
SCRIPT_DIR="$(cd "$(dirname "$SCRIPT_NAME")" && pwd -P)"

libvori_ver="201223"
libvori_sha256="2307dcb85cbab1d61479b4c3854c1eaab4c19c3b55787a084e070e14388897cd"
libvori_ver="201223b"
libvori_sha256="6b4c896375bca7b9fcdde6f603ba048c7b0423cdc384da5dcca56ebafb806516"

# shellcheck source=/dev/null
source "${SCRIPT_DIR}"/common_vars.sh
Expand Down

0 comments on commit 8a762a4

Please sign in to comment.