Skip to content

Commit

Permalink
Merge branch 'python' into fix-4008
Browse files Browse the repository at this point in the history
  • Loading branch information
jngrad committed Jan 13, 2021
2 parents 440becc + 2c2310c commit 0a1a51d
Show file tree
Hide file tree
Showing 71 changed files with 1,015 additions and 918 deletions.
14 changes: 7 additions & 7 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ variables:
status_pending:
<<: *notification_job_definition
stage: prepare
script: bash maintainer/gh_post_status.sh pending
script: sh maintainer/gh_post_status.sh pending

style:
<<: *global_job_definition
Expand All @@ -42,7 +42,7 @@ style:
before_script:
- git submodule deinit .
script:
- maintainer/CI/fix_style.sh
- sh maintainer/CI/fix_style.sh
tags:
- docker
- linux
Expand Down Expand Up @@ -515,7 +515,7 @@ check_with_odd_no_of_processors:
script:
- cd ${CI_PROJECT_DIR}/build
- cmake -DTEST_NP=3 .
- make -t && make check_python_parallel_odd
- make -t && make check_unit_tests && make check_python_parallel_odd
tags:
- docker
- linux
Expand Down Expand Up @@ -572,27 +572,27 @@ deploy_tutorials:
status_success:
<<: *notification_job_definition
stage: result
script: bash maintainer/gh_post_status.sh success
script: sh maintainer/gh_post_status.sh success
when: on_success

status_failure:
<<: *notification_job_definition
stage: result
script: bash maintainer/gh_post_status.sh failure
script: sh maintainer/gh_post_status.sh failure
when: on_failure

notify_success:
<<: *notification_job_definition
stage: result
script: bash maintainer/gh_close_issue.sh
script: sh maintainer/gh_close_issue.sh
when: on_success
only:
- python

notify_failure:
<<: *notification_job_definition
stage: result
script: bash maintainer/gh_create_issue.sh
script: sh maintainer/gh_create_issue.sh
when: on_failure
only:
- python
6 changes: 4 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ repos:
language: system
always_run: false
files: '.*\.(cpp|hpp|cu|cuh)'
exclude: '^libs/'
args: ["-i", "-style=file"]

- id: autopep8
Expand All @@ -17,15 +18,16 @@ repos:
language: system
always_run: false
files: '.*\.(py|pyx|pxd)'
exclude: '\.pylintrc|.*.\.py\.in'
args: ["--ignore=E266,E701,W291,W293", "--in-place", "--aggressive"]
exclude: '\.pylintrc|.*.\.py\.in|^libs/'
args: ["--ignore=E266,E402,E701,W291,W293", "--in-place", "--aggressive"]

- id: cmake-format
name: cmake-format
entry: sh maintainer/format/cmake-format.sh
language: system
always_run: false
files: 'CMakeLists.txt'
exclude: '^libs/h5xx/|^libs/Random123-1\.09/'
args: ["-i"]

- id: ex-flags
Expand Down
5 changes: 4 additions & 1 deletion AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,14 @@ The following people have contributed to ESPResSo:

Core developers
---------------
Florian Weik
Rudolf Weeber
Kai Szuttor
Jean-Noël Grad
Alexander Reinauer

Former Core Developers
----------------------
Florian Weik
Georg Rempfer
Stefan Kesselheim
Bernward Mann (deceased 2006)
Expand Down Expand Up @@ -57,6 +58,7 @@ Frank Mühlbach
Gizem Inci
Gregoria Illya
Hamid Zaheri
Hao Lu
Henri Menke
Igor Pasichnyk
Ingo Tischler
Expand Down Expand Up @@ -103,6 +105,7 @@ Pedro Ojeda
Pedro Sanchez
Peter Košovan
Pierre de Buyl
Riccardo Frenner
Robert Kaufmann
Robin Bardakcioglu
Sam Foley
Expand Down
33 changes: 4 additions & 29 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -306,29 +306,6 @@ endif(WITH_VALGRIND_INSTRUMENTATION)

find_package(MPI 3.0 REQUIRED)

# CMake < 3.9
if(NOT TARGET MPI::MPI_CXX)
add_library(MPI::MPI_CXX IMPORTED INTERFACE)

# Workaround for https://gitlab.kitware.com/cmake/cmake/issues/18349
foreach(_MPI_FLAG ${MPI_CXX_COMPILE_FLAGS})
set_property(TARGET MPI::MPI_CXX PROPERTY INTERFACE_COMPILE_OPTIONS
${_MPI_FLAG})
endforeach()

set_property(TARGET MPI::MPI_CXX PROPERTY INTERFACE_INCLUDE_DIRECTORIES
"${MPI_CXX_INCLUDE_PATH}")

# Workaround for https://gitlab.kitware.com/cmake/cmake/issues/18349
foreach(_MPI_FLAG ${MPI_CXX_LINK_FLAGS})
set_property(TARGET MPI::MPI_CXX PROPERTY INTERFACE_LINK_LIBRARIES
${_MPI_FLAG})
endforeach()

set_property(TARGET MPI::MPI_CXX PROPERTY INTERFACE_LINK_LIBRARIES
${MPI_CXX_LIBRARIES})
endif()

# ##############################################################################
# Boost
# ##############################################################################
Expand Down Expand Up @@ -473,16 +450,14 @@ endif()

if(WITH_TESTS)
enable_testing()
if(Boost_UNIT_TEST_FRAMEWORK_FOUND)
set(WITH_UNIT_TESTS ON)
endif(Boost_UNIT_TEST_FRAMEWORK_FOUND)
add_custom_target(check)
if(WITH_PYTHON)
add_subdirectory(testsuite)
endif(WITH_PYTHON)
set(CTEST_ARGS ""
CACHE STRING
"Extra arguments to give to ctest calls (separated by semicolons)")
set(TEST_NP "4" CACHE STRING "Maximal number of MPI ranks to use per test")
if(WITH_PYTHON)
add_subdirectory(testsuite)
endif(WITH_PYTHON)
endif(WITH_TESTS)

if(WITH_BENCHMARKS)
Expand Down
1 change: 0 additions & 1 deletion cmake/FindCUDACompilerNVCC.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,6 @@ function(find_gpu_library)
cmake_parse_arguments(LIBRARY "REQUIRED" "NAMES;VARNAME" "" ${ARGN})
list(APPEND LIBRARY_PATHS
${CUDA_TOOLKIT_ROOT_DIR}/lib64 ${CUDA_TOOLKIT_ROOT_DIR}/lib
${CUDA_TOOLKIT_ROOT_DIR}/compat
/usr/local/nvidia/lib /usr/lib/x86_64-linux-gnu)
if(LIBRARY_REQUIRED)
find_library(${LIBRARY_VARNAME} NAMES ${LIBRARY_NAMES} PATHS ${LIBRARY_PATHS} NO_DEFAULT_PATH REQUIRED)
Expand Down
9 changes: 0 additions & 9 deletions cmake/unit_test.cmake
Original file line number Diff line number Diff line change
@@ -1,12 +1,3 @@
if(NOT DEFINED TEST_NP)
include(ProcessorCount)
processorcount(NP)
math(EXPR TEST_NP "${NP}/2 + 1")
if(${TEST_NP} GREATER 4)
set(TEST_NP 4)
endif()
endif()

if(EXISTS ${MPIEXEC})
# OpenMPI 2.0 and higher checks the number of processes against the number of
# CPUs
Expand Down
2 changes: 1 addition & 1 deletion doc/sphinx/advanced_methods.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1894,7 +1894,7 @@ The call of ``add_reaction`` define the insertion :math:`\mathrm{\emptyset \to t
Multiple reactions for the insertions of different types can be added to the same ``WidomInsertion`` instance.
Measuring the excess chemical potential using the insertion method is done via calling ``widom.measure_excess_chemical_potential(0)``.
If another particle insertion is defined, then the excess chemical potential for this insertion can be measured by calling ``widom.measure_excess_chemical_potential(1)``.
Be aware that the implemented method only works for the canonical ensemble. If the numbers of particles fluctuate (i.e. in a semi grand canonical simulation) one has to adapt the formulas from which the excess chemical potential is calculated! This is not implemented. Also in a isobaric-isothermal simulation (NPT) the corresponding formulas for the excess chemical potentials need to be adapted. This is not implemented.
Be aware that the implemented method only works for the canonical ensemble. If the numbers of particles fluctuate (i.e. in a semi grand canonical simulation) one has to adapt the formulas from which the excess chemical potential is calculated! This is not implemented. Also in a isobaric-isothermal simulation (NpT) the corresponding formulas for the excess chemical potentials need to be adapted. This is not implemented.

The implementation can also deal with the simultaneous insertion of multiple particles and can therefore measure the change of excess free energy of multiple particles like e.g.:

Expand Down
4 changes: 2 additions & 2 deletions doc/sphinx/electrostatics.rst
Original file line number Diff line number Diff line change
Expand Up @@ -318,7 +318,7 @@ MMM1D is used with::

where the prefactor :math:`C` is defined in Eqn. :eq:`coulomb_prefactor`.
MMM1D Coulomb method for systems with periodicity (0 0 1). Needs the
nsquared cell system (see section :ref:`Cellsystems`). The first form sets parameters
N-squared cell system (see section :ref:`Cellsystems`). The first form sets parameters
manually. The switch radius determines at which xy-distance the force
calculation switches from the near to the far formula. The Bessel cutoff
does not need to be specified as it is automatically determined from the
Expand All @@ -336,7 +336,7 @@ MMM1D on GPU
:class:`espressomd.electrostatics.MMM1DGPU`

MMM1D is also available in a GPU implementation. Unlike its CPU
counterpart, it does not need the nsquared cell system.
counterpart, it does not need the N-squared cell system.

::

Expand Down
4 changes: 2 additions & 2 deletions doc/sphinx/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -352,9 +352,9 @@ General features
In addition, there are switches that enable additional features in the
integrator or thermostat:
- ``NPT`` Enables an on-the-fly NPT integration scheme.
- ``NPT`` Enables an on-the-fly NpT integration scheme.
.. seealso:: :ref:`Isotropic NPT thermostat`
.. seealso:: :ref:`Isotropic NpT thermostat`
- ``ENGINE``
Expand Down
2 changes: 1 addition & 1 deletion doc/sphinx/introduction.rst
Original file line number Diff line number Diff line change
Expand Up @@ -448,7 +448,7 @@ report so to the developers using the instructions in :ref:`Contributing`.
+--------------------------------+------------------------+------------------+------------+
| Langevin Thermostat | Core | Core | Yes |
+--------------------------------+------------------------+------------------+------------+
| Isotropic NPT | Experimental | None | Yes |
| Isotropic NpT | Experimental | None | Yes |
+--------------------------------+------------------------+------------------+------------+
| Quaternion Integrator | Core | Good | Yes |
+--------------------------------+------------------------+------------------+------------+
Expand Down
Loading

0 comments on commit 0a1a51d

Please sign in to comment.