RNApolis 0.3.15__tar.gz → 0.3.16__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {rnapolis-0.3.15/src/RNApolis.egg-info → rnapolis-0.3.16}/PKG-INFO +1 -1
- {rnapolis-0.3.15 → rnapolis-0.3.16}/setup.py +1 -1
- {rnapolis-0.3.15 → rnapolis-0.3.16/src/RNApolis.egg-info}/PKG-INFO +1 -1
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/parser.py +12 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_annotator.py +7 -1
- {rnapolis-0.3.15 → rnapolis-0.3.16}/LICENSE +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/README.md +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/pyproject.toml +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/setup.cfg +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/RNApolis.egg-info/SOURCES.txt +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/RNApolis.egg-info/dependency_links.txt +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/RNApolis.egg-info/entry_points.txt +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/RNApolis.egg-info/requires.txt +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/RNApolis.egg-info/top_level.txt +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/annotator.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/clashfinder.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/common.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/metareader.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/molecule_filter.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/motif_extractor.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/rfam_folder.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/tertiary.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/transformer.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/src/rnapolis/util.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_bugfixes.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_common.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_metareader.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_parser.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_quadruplexes.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_rfam_folder.py +0 -0
- {rnapolis-0.3.15 → rnapolis-0.3.16}/tests/test_tertiary.py +0 -0
@@ -1,3 +1,4 @@
|
|
1
|
+
import logging
|
1
2
|
from typing import IO, Dict, List, Optional, Tuple, Union
|
2
3
|
|
3
4
|
from mmcif.io.IoAdapterPy import IoAdapterPy
|
@@ -5,6 +6,9 @@ from mmcif.io.IoAdapterPy import IoAdapterPy
|
|
5
6
|
from rnapolis.common import ResidueAuth, ResidueLabel
|
6
7
|
from rnapolis.tertiary import BASE_ATOMS, Atom, Residue3D, Structure3D
|
7
8
|
|
9
|
+
logging.basicConfig(level=logging.INFO)
|
10
|
+
logger = logging.getLogger(__name__)
|
11
|
+
|
8
12
|
|
9
13
|
def read_3d_structure(
|
10
14
|
cif_or_pdb: IO[str], model: Optional[int] = None, nucleic_acid_only: bool = False
|
@@ -104,6 +108,14 @@ def parse_cif(
|
|
104
108
|
auth_residue_name,
|
105
109
|
)
|
106
110
|
|
111
|
+
if label is None and auth is None:
|
112
|
+
# this should not happen in a valid mmCIF file
|
113
|
+
# skipping the line
|
114
|
+
logger.debug(
|
115
|
+
f"Cannot parse an atom line without chain name, residue number, and residue name: {row}"
|
116
|
+
)
|
117
|
+
continue
|
118
|
+
|
107
119
|
model = int(row_dict.get("pdbx_PDB_model_num", "1"))
|
108
120
|
atom_name = row_dict["label_atom_id"]
|
109
121
|
x = float(row_dict["Cartn_x"])
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from collections import Counter
|
2
2
|
|
3
|
-
from rnapolis.annotator import extract_base_interactions
|
3
|
+
from rnapolis.annotator import extract_base_interactions, extract_secondary_structure
|
4
4
|
from rnapolis.parser import read_3d_structure
|
5
5
|
|
6
6
|
|
@@ -39,3 +39,9 @@ def test_1ehz():
|
|
39
39
|
assert (
|
40
40
|
False
|
41
41
|
), f"Interaction {element} occurs {count} times among {labels[i]} type: {duplicates}"
|
42
|
+
|
43
|
+
|
44
|
+
def test_8btk():
|
45
|
+
with open("tests/8btk_B7.cif") as f:
|
46
|
+
structure3d = read_3d_structure(f, 1)
|
47
|
+
assert extract_secondary_structure(structure3d, 1) is not None
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|