Skip to content

Commit 7bbe130

Browse files
committed
updated readme and bumped to v1.1
1 parent 3ae1fe3 commit 7bbe130

3 files changed

Lines changed: 40 additions & 26 deletions

File tree

ReadMe.md

Lines changed: 38 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,31 @@
1-
## MemSurfer, Version 1.0.1
2-
#### Released: July 22, 2021
1+
## MemSurfer, Version 1.1
2+
#### Released: April 19, 2022
33

44
##### Author: Harsh Bhatia (hbhatia@llnl.gov) and Peer-Timo Bremer
55

6-
MemSurfer is an efficient and versatile tool to compute and analyze membrane surfaces found in a wide
7-
variety of large-scale molecular simulations. MemSurfer works independent of the
8-
type of simulation, directly on the 3D point coordinates, and can handle a variety of membranes as well as
9-
atomic simulations. MemSurfer provides many in-built analysis
10-
tasks, such as computing the membrane curvature, density and normals of lipids,
11-
and area per lipid. More importantly, MemSurfer provides a simple-to-use
12-
Python API that may be easily used/extended to perform other types of analysis.
6+
MemSurfer is an efficient and versatile tool to compute and analyze membrane
7+
surfaces found in a wide variety of large-scale molecular simulations.
8+
MemSurfer works independent of the type of simulation, directly on the 3D point
9+
coordinates, and can handle a variety of membranes as well as atomic
10+
simulations. MemSurfer provides many in-built analysis tasks, such as computing
11+
the membrane curvature, density and normals of lipids, and area per lipid. More
12+
importantly, MemSurfer provides a simple-to-use Python API that may be easily
13+
used/extended to perform other types of analysis.
1314

1415
### Dependencies
1516

16-
The interface to MemSurfer is provided via `python 3`, whereas the core functionality is written in `C++ 11` with the following dependencies.
17+
The interface to MemSurfer is provided via `python 3`, whereas the core
18+
functionality is written in `C++ 11` with the following dependencies.
1719
1. [The Computational Geometry Algorithms Library (CGAL)](https://www.cgal.org/ "CGAL"): `v 4.13.0`
1820
2. [boost](https://www.boost.org/): `v 1.66`
1921
3. [Eigen](http://eigen.tuxfamily.org/index.php): `v 3.3.9`
2022

2123
Installing MemSurfer and its dependencies additionally require the following software.
2224

23-
- `C++` compiler that supports `C++ 11` and [OpenMP](https://www.openmp.org/) (tested with `GNU gcc 7.3.0` and `GNU gcc 7.5.0`)
25+
- `C++` compiler that supports `C++ 11` and [OpenMP](https://www.openmp.org/)
26+
(tested with `GNU gcc 7.3.0` and `GNU gcc 7.5.0`)
2427
- **Please use `gcc@7`. See known issues below.**
25-
- `Python 3` interpreter (tested with `3.7.2` and `3.7.11`)
28+
- `Python 3` interpreter (tested with `3.9.12`, `3.7.11`, and `3.7.2`)
2629
- [Cython](https://cython.org/) (tested with `0.29.10` and `0.29.24`)
2730
- [Swig](http://www.swig.org/) (tested with `3.0.12` and `4.0.2`)
2831
- [CMake](https://cmake.org/) (tested with `3.13` and `3.20`)
@@ -40,12 +43,13 @@ the installation of these major dependencies.
4043

4144
### Installation via Spack
4245

43-
MemSurfer is available via [spack](https://spack.io) -- a package manager for HPC. Please
46+
Currently outdated and broken. To be fixed soon.
47+
<!-- MemSurfer is available via [spack](https://spack.io) -- a package manager for HPC. Please
4448
download spack (see instructions provded by `spack`). Once installed,
4549
please do the following
4650
```
4751
$ spack install memsurfer@1.0.1 ^python@3.7.3 %gcc@7.3.0
48-
```
52+
``` -->
4953

5054

5155
### Installation from source
@@ -63,14 +67,13 @@ whereas the rest of the dependencies are assumed to be standard and available.
6367

6468

6569
##### 1a. Eigen, Boost, and CGAL (on mac)
66-
On `macosx`, the simplest way to install these is using [`macports`](macports.org). As of Jan 2019, `macports` installs the correct versions.
70+
On `macosx`, the simplest way to install these is using [`macports`](macports.org).
71+
As of Jan 2019, `macports` installs the correct versions.
6772
```
68-
$ port install vtk+python
6973
$ port install cgal # also installs boost and eigen
7074
```
7175

72-
##### 1b. Eigen, Boost, CGAL, and VTK (from source)
73-
76+
##### 1b. Eigen, Boost, and CGAL (from source)
7477

7578
A helper script `$MEM_HOME/install_deps.sh` is provided to install these dependencies.
7679
In order to use this script, you need to specify a `C++` compiler that supports `OpenMP`.
@@ -83,12 +86,12 @@ $ sh install_deps.sh
8386

8487
This script installs all these dependencies in a folder called `$MEM_HOME/external`.
8588
Note that you may not need to install all four of these dependencies. Please
86-
edit the script (lines 6--9) to select which ones to install.
89+
edit the script (lines 6--8) to select which ones to install.
8790

8891
Once installed successfully, please add the following to your shell profile to
8992
access these dependencies.
9093
```
91-
$ export PYTHONPATH=$MEM_HOME/external/lib/python3.7/site-packages:$PYTHONPATH
94+
$ export PYTHONPATH=$MEM_HOME/external/lib/python3.x/site-packages:$PYTHONPATH
9295
9396
# LD_LIBRARY_PATH for linux
9497
$ export LD_LIBRARY_PATH=$MEM_HOME/external/lib:$MEM_HOME/external/lib64:$LD_LIBRARY_PATH
@@ -104,7 +107,6 @@ using `distutils`. However, you need to explicitly supply the path of the extern
104107
dependencies.
105108
```
106109
$ export BOOST_ROOT=<path_to_boost> # boost headers are contained in $BOOST_ROOT/include/boost
107-
$ export VTK_ROOT=<path_to_vtk> # vtk headers are contained in $VTK_ROOT/include/vtk-8.1
108110
$ export CGAL_ROOT=<path_to_cgal> # cgal headers are contained in $CGAL_ROOT/include/CGAL
109111
$ export EIGEN_ROOT=<path_to_eigen> # eigen headers are contained in $EIGEN_ROOT/include/eigen3
110112
```
@@ -131,7 +133,10 @@ Cloning into '<your-path>/MemSurfer/pypoisson'...
131133
git@github.com: Permission denied (publickey).
132134
fatal: Could not read from remote repository.
133135
```
134-
This error means that your ssh keys are not registered with github. Please see [here](https://help.github.com/en/articles/connecting-to-github-with-ssh) and [here](https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account) to register your ssh key and retry.
136+
This error means that your ssh keys are not registered with github. Please see
137+
[here](https://help.github.com/en/articles/connecting-to-github-with-ssh) and
138+
[here](https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account)
139+
to register your ssh key and retry.
135140

136141

137142
### Examples
@@ -140,10 +145,19 @@ This error means that your ssh keys are not registered with github. Please see [
140145

141146
### Change Log
142147

148+
##### Apr 19, 2022
149+
150+
* Bumped the version.
151+
* Bug fix in Delaunay.
152+
* Added perturbations in projected points for correct Delaunay.
153+
* Added shell analysis.
154+
* Added conversion of mesh properties to pandas (to support writing to csv).
155+
143156
##### Dec 06, 2021
144157

145-
* Removed VTK as a C++ dependency by using it directly in python. Sufficient now to install using `pip install vtk`.
146-
* Updated examples to MDAnalysis 2
158+
* Removed VTK as a C++ dependency by using it directly in python. Sufficient now
159+
to install using `pip install vtk`.
160+
* Updated examples to MDAnalysis 2.
147161

148162
##### Jul 22, 2021
149163

memsurfer/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ def condensed_to_square(k, n):
107107
return i, j
108108

109109
# --------------------------------------------------------------------------
110-
LOGGER.debug(f'Testing for overlapping points ({points.shape}, threshold={dthreshold}, fix={fix}')
110+
LOGGER.debug(f'Testing for overlapping points ({points.shape}, threshold={dthreshold}, fix={fix})')
111111

112112
pdist = scipy.spatial.distance.pdist(points)
113113
is_zero = np.where(pdist < dthreshold)[0]

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
# ------------------------------------------------------------------------------
3030
# ------------------------------------------------------------------------------
31-
__version_info__ = ('1', '0', '1')
31+
__version_info__ = ('1', '1', '0')
3232
__version__ = '.'.join(__version_info__)
3333

3434

0 commit comments

Comments
 (0)