Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ language: python
dist: trusty

matrix:
allow_failures:
- env: OPTIONAL=true
include:
# Extra includes for OSX since python language is not available by default on OSX
- os: osx
Expand All @@ -12,13 +14,20 @@ matrix:
- os: osx
language: generic
env: PYTHON_VER=3.6
- os: osx
language: generic
env: PYTHON_VER=3.7

- os: linux
python: 3.5
env: PYTHON_VER=3.5
- os: linux
python: 3.6
env: PYTHON_VER=3.6
- os: linux
python: 3.7
env: PYTHON_VER=3.7
env: OPTIONAL=true

before_install:
# Additional info about the build
Expand Down
8 changes: 6 additions & 2 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
environment:

matrix:
- PYTHON: "C:\\Miniconda35-x64"
- PYTHON: "C:\\Miniconda36-x64"
PYTHON_VERSION: "3.5"
PYTHON_ARCH: "64"

- PYTHON: "C:\\Miniconda36-x64"
PYTHON_VERSION: "3.6"
PYTHON_ARCH: "64"


- PYTHON: "C:\\Miniconda36-x64"
PYTHON_VERSION: "3.7"
PYTHON_ARCH: "64"


install:
- "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"
Expand Down
3 changes: 2 additions & 1 deletion pairing/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@
from __future__ import absolute_import

# Add imports here
from .pairing import *
from pairing.pairing import *
from pairing.utils import *

# Handle versioneer
from ._version import get_versions
Expand Down
28 changes: 18 additions & 10 deletions pairing/pairing.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,19 @@
from copy import deepcopy
import itertools

import numpy as np
import mdtraj as md
from pairing.utils.misc import make_comtrj


__all__ = [
'calc_direct',
'calc_indirect',
'calc_reduc',
'check_pairs',
'analyze_clusters'
]


def calc_indirect(direct_array):
"""
Calculate indirect matrices for all frames of trajectory
Expand All @@ -16,6 +24,7 @@ def calc_indirect(direct_array):
indirect_results.append(np.asarray(indirect))
return(indirect_results)


def calc_reduc(indirect_array):
"""
Reduce indirect matrices for all frames of trajectory
Expand All @@ -29,15 +38,15 @@ def calc_reduc(indirect_array):

def check_pairs(trj, cutoff, first_direct):
"""
Checks pairs at various frames against direct correlation matrix
Checks pairs at various frames against direct correlation matrix
from frame zero
"""
trj = make_comtrj(trj)
direct_list = []
for frame in trj:
c = deepcopy(first_direct)
matrix = _check_direct(c, frame, cutoff)
direct_list.append(matrix)
c = deepcopy(first_direct)
matrix = _check_direct(c, frame, cutoff)
direct_list.append(matrix)

return direct_list

Expand All @@ -51,7 +60,7 @@ def calc_direct(trj, cutoff=1.0):
for frame in com_trj:
direct = _generate_direct_correlation(frame, cutoff)
direct_list.append(direct)

return direct_list


Expand Down Expand Up @@ -94,8 +103,7 @@ def _check_direct(direct_corr, frame, cutoff):
for row in range(len(direct_corr[0])):
for col in range(len(direct_corr[0])):
if direct_corr[row][col] == 1:
dist = md.compute_distances(frame,
atom_pairs=[(row, col)])
dist = md.compute_distances(frame, atom_pairs=[(row, col)])
if dist < cutoff:
continue
else:
Expand Down Expand Up @@ -124,9 +132,9 @@ def _generate_indirect_connectivity(direct_corr):
continue
else:
intersect = np.maximum.reduce(
[c[:,ele] for ele in ones])
[c[:, ele] for ele in ones])
for ele in ones:
c[:,ele] = intersect
c[:, ele] = intersect
indirect = c

return indirect
Expand Down
1 change: 0 additions & 1 deletion pairing/tests/test_pairing.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import pytest
import numpy as np
import mdtraj as md

Expand Down