EntDetect 1.2.0__tar.gz → 1.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- entdetect-1.2.1/EntDetect.egg-info/PKG-INFO +188 -0
- entdetect-1.2.1/PKG-INFO +188 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/setup.py +11 -1
- entdetect-1.2.0/EntDetect.egg-info/PKG-INFO +0 -26
- entdetect-1.2.0/PKG-INFO +0 -26
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/Jwalk/GridTools.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/Jwalk/PDBTools.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/Jwalk/SASDTools.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/Jwalk/SurfaceTools.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/Jwalk/__init__.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/Jwalk/naccess.config.txt +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/__init__.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/_logging.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/change_resolution.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/clustering.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/compare_sim2exp.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/entanglement_features.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/gaussian_entanglement.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/order_params.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/__init__.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/__pycache__/__init__.cpython-311.pyc +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/calc_K.pl +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/calc_Q.pl +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/pulchra +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/__init__.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/bt_contact_potential.dat +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/karanicolas_dihe_parm.dat +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/kgs_contact_potential.dat +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/mj_contact_potential.dat +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/stride +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/statistics.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/utilities.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect.egg-info/SOURCES.txt +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect.egg-info/dependency_links.txt +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect.egg-info/entry_points.txt +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect.egg-info/requires.txt +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/EntDetect.egg-info/top_level.txt +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/LICENSE +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/MANIFEST.in +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/README.md +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/pyproject.toml +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/__init__.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/convert_cor_psf_to_pdb.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_Foldingpathway.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_MSM.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_OP_on_simulation_traj.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_change_resolution.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_compare_sim2exp.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_montecarlo.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_nativeNCLE.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_nonnative_entanglement_clustering.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_population_modeling.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/scripts/run_workflow4_nativeNCLE_batch.py +0 -0
- {entdetect-1.2.0 → entdetect-1.2.1}/setup.cfg +0 -0
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: EntDetect
|
|
3
|
+
Version: 1.2.1
|
|
4
|
+
Summary: Entanglement Detection in Protein Structures
|
|
5
|
+
Home-page: https://github.com/obrien-lab-psu/EntDetect
|
|
6
|
+
Project-URL: Source, https://github.com/obrien-lab-psu/EntDetect
|
|
7
|
+
Project-URL: Bug Tracker, https://github.com/obrien-lab-psu/EntDetect/issues
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Requires-Dist: biopython
|
|
11
|
+
Requires-Dist: numpy
|
|
12
|
+
Requires-Dist: scipy
|
|
13
|
+
Requires-Dist: pandas
|
|
14
|
+
Requires-Dist: MDAnalysis
|
|
15
|
+
Requires-Dist: mdtraj
|
|
16
|
+
Requires-Dist: parmed
|
|
17
|
+
Requires-Dist: numba
|
|
18
|
+
Requires-Dist: topoly
|
|
19
|
+
Requires-Dist: geom_median
|
|
20
|
+
Requires-Dist: matplotlib
|
|
21
|
+
Requires-Dist: seaborn
|
|
22
|
+
Requires-Dist: scikit-learn
|
|
23
|
+
Requires-Dist: networkx
|
|
24
|
+
Requires-Dist: pyyaml
|
|
25
|
+
Requires-Dist: tqdm
|
|
26
|
+
Requires-Dist: requests
|
|
27
|
+
Requires-Dist: statsmodels
|
|
28
|
+
Dynamic: description
|
|
29
|
+
Dynamic: description-content-type
|
|
30
|
+
Dynamic: home-page
|
|
31
|
+
Dynamic: license-file
|
|
32
|
+
Dynamic: project-url
|
|
33
|
+
Dynamic: requires-dist
|
|
34
|
+
Dynamic: summary
|
|
35
|
+
|
|
36
|
+
# EntDetect
|
|
37
|
+
|
|
38
|
+
A comprehensive Python package for studying non-covalent lasso entanglements in protein folding through molecular dynamics simulations and experimental data analysis.
|
|
39
|
+
|
|
40
|
+
## Overview
|
|
41
|
+
|
|
42
|
+
EntDetect provides a complete toolkit for analyzing protein entanglements across multiple scales - from individual structures to large-scale proteomic datasets. The package enables researchers to:
|
|
43
|
+
|
|
44
|
+
- **Identify and characterize** native entanglements in protein structures
|
|
45
|
+
- **Calculate order parameters** for simulation trajectories (Q, G, K, SASA, Jwalk, XP)
|
|
46
|
+
- **Build Markov State Models** from coarse-grained simulation ensembles
|
|
47
|
+
- **Compare simulations to experiments** using LiP-MS and XL-MS data
|
|
48
|
+
- **Perform population-level analysis** across heterogeneous protein datasets
|
|
49
|
+
- **Coarse-grain and back-map** between atomic resolutions
|
|
50
|
+
|
|
51
|
+
## Key Features
|
|
52
|
+
|
|
53
|
+
- **Multi-scale Analysis**: From single proteins to proteome-wide studies
|
|
54
|
+
- **Experimental Integration**: Direct comparison with mass spectrometry data
|
|
55
|
+
- **Advanced Clustering**: Non-native entanglement clustering and MSM construction
|
|
56
|
+
- **Statistical Methods**: Monte Carlo simulations and logistic regression modeling
|
|
57
|
+
- **Flexible Resolution**: Seamless conversion between all-atom and coarse-grained representations
|
|
58
|
+
|
|
59
|
+
## Installation
|
|
60
|
+
|
|
61
|
+
Create a new conda environment and install EntDetect (from this repo checkout):
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
conda env create -f environment.yml
|
|
65
|
+
conda activate entdetect
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Notes:
|
|
69
|
+
- The provided conda environment targets Python 3.11 for best compatibility with the scientific stack.
|
|
70
|
+
- Run `conda env create` from the EntDetect repo root (the environment file uses `pip -e .`).
|
|
71
|
+
- If you prefer installing into an existing env, use `pip install -e .` from the repo root.
|
|
72
|
+
|
|
73
|
+
macOS (Miniconda) notes:
|
|
74
|
+
- The default `environment.yml` is intended to work on both Linux and macOS via conda-forge.
|
|
75
|
+
- If you hit solver/build issues on macOS, try:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
conda env create -f environment-mac.yml
|
|
79
|
+
conda activate entdetect
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
- On Apple Silicon, if a dependency is missing for `osx-arm64`, a common workaround is:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
CONDA_SUBDIR=osx-64 conda env create -f environment-mac.yml
|
|
86
|
+
conda activate entdetect
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Tutorials
|
|
90
|
+
|
|
91
|
+
Step-by-step, runnable tutorials covering all four analysis workflows are in `Documentation/`. Start here:
|
|
92
|
+
|
|
93
|
+
- [Documentation/index.md](Documentation/index.md) — master index with environment setup, path variables, and links to all workflows
|
|
94
|
+
|
|
95
|
+
For quick CLI reference, every script supports `--help`:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
python scripts/run_nativeNCLE.py --help
|
|
99
|
+
python scripts/run_OP_on_simulation_traj.py --help
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Package Structure
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
EntDetect/
|
|
106
|
+
├── EntDetect/ # Main package
|
|
107
|
+
│ ├── __init__.py
|
|
108
|
+
│ ├── gaussian_entanglement.py # Core entanglement calculations
|
|
109
|
+
│ ├── clustering.py # Entanglement clustering methods
|
|
110
|
+
│ ├── order_params.py # Order parameter calculations
|
|
111
|
+
│ ├── compare_sim2exp.py # Simulation-experiment comparison
|
|
112
|
+
│ ├── statistics.py # Statistical analysis methods
|
|
113
|
+
│ ├── entanglement_features.py # Feature generation
|
|
114
|
+
│ ├── change_resolution.py # Resolution conversion
|
|
115
|
+
│ └── utilities.py # Helper functions
|
|
116
|
+
├── scripts/ # Example workflow scripts
|
|
117
|
+
├── Documentation/ # Detailed module documentation
|
|
118
|
+
└── TestingGrounds/ # Test data and examples
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Core Modules
|
|
122
|
+
|
|
123
|
+
- **`gaussian_entanglement`**: Calculate Gaussian linking numbers and identify entanglements
|
|
124
|
+
- **`clustering`**: Cluster native and non-native entanglements, build MSMs
|
|
125
|
+
- **`order_params`**: Compute Q, G, K, SASA, Jwalk, and cross-linking propensity
|
|
126
|
+
- **`compare_sim2exp`**: Integrate LiP-MS and XL-MS experimental data
|
|
127
|
+
- **`statistics`**: Population modeling and Monte Carlo analysis
|
|
128
|
+
- **`entanglement_features`**: Generate structural features for entanglements
|
|
129
|
+
- **`change_resolution`**: Convert between all-atom and coarse-grained representations
|
|
130
|
+
|
|
131
|
+
## Documentation
|
|
132
|
+
|
|
133
|
+
Detailed documentation for each module:
|
|
134
|
+
|
|
135
|
+
- [Tutorial index](Documentation/index.md)
|
|
136
|
+
- [Workflow 1: Native NCLE detection](Documentation/workflow1_native_ncle.md)
|
|
137
|
+
- [Workflow 2: Trajectory analysis](Documentation/workflow2_trajectory_analysis.md)
|
|
138
|
+
- [Workflow 3: Sim-to-experiment comparison](Documentation/workflow3_sim2exp.md)
|
|
139
|
+
- [Workflow 4: Population-level analysis](Documentation/workflow4_population.md)
|
|
140
|
+
- [Gaussian Entanglement](Documentation/gaussian_entanglement.md)
|
|
141
|
+
- [Clustering](Documentation/clustering.md)
|
|
142
|
+
- [Order Parameters](Documentation/order_params.md)
|
|
143
|
+
- [Simulation-Experiment Comparison](Documentation/compare_sim2exp.md)
|
|
144
|
+
- [Statistical Analysis](Documentation/statistics.md)
|
|
145
|
+
- [Entanglement Features](Documentation/entanglement_features.md)
|
|
146
|
+
- [Resolution Conversion](Documentation/change_resolution.md)
|
|
147
|
+
- [Utilities](Documentation/utilities.md)
|
|
148
|
+
|
|
149
|
+
## Requirements
|
|
150
|
+
|
|
151
|
+
- Python 3.8+
|
|
152
|
+
- NumPy
|
|
153
|
+
- Pandas
|
|
154
|
+
- SciPy
|
|
155
|
+
- MDAnalysis
|
|
156
|
+
- OpenMM (for force field operations)
|
|
157
|
+
- Matplotlib (for visualization)
|
|
158
|
+
- See `environment.yml` for complete dependencies
|
|
159
|
+
|
|
160
|
+
## Citation
|
|
161
|
+
|
|
162
|
+
If you use EntDetect in your research, please cite:
|
|
163
|
+
|
|
164
|
+
```bibtex
|
|
165
|
+
@software{entdetect2024,
|
|
166
|
+
title={EntDetect: A Python Package for Protein Entanglement Analysis},
|
|
167
|
+
author={Ian Sitarik},
|
|
168
|
+
author={Yang Jiang},
|
|
169
|
+
author={Hyebin Song},
|
|
170
|
+
author={Edward O'Brien},
|
|
171
|
+
year={2026},
|
|
172
|
+
url={https://github.com/obrien-lab-psu/EntDetect}
|
|
173
|
+
}
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Contributing
|
|
177
|
+
|
|
178
|
+
Contributions are welcome! Please see our contributing guidelines and submit pull requests for any improvements.
|
|
179
|
+
|
|
180
|
+
## License
|
|
181
|
+
|
|
182
|
+
This project is licensed under the MIT License - see the LICENSE file for details.
|
|
183
|
+
|
|
184
|
+
## Support
|
|
185
|
+
|
|
186
|
+
For questions and support, please open an issue on GitHub or contact the developers.
|
|
187
|
+
|
|
188
|
+
|
entdetect-1.2.1/PKG-INFO
ADDED
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: EntDetect
|
|
3
|
+
Version: 1.2.1
|
|
4
|
+
Summary: Entanglement Detection in Protein Structures
|
|
5
|
+
Home-page: https://github.com/obrien-lab-psu/EntDetect
|
|
6
|
+
Project-URL: Source, https://github.com/obrien-lab-psu/EntDetect
|
|
7
|
+
Project-URL: Bug Tracker, https://github.com/obrien-lab-psu/EntDetect/issues
|
|
8
|
+
Description-Content-Type: text/markdown
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Requires-Dist: biopython
|
|
11
|
+
Requires-Dist: numpy
|
|
12
|
+
Requires-Dist: scipy
|
|
13
|
+
Requires-Dist: pandas
|
|
14
|
+
Requires-Dist: MDAnalysis
|
|
15
|
+
Requires-Dist: mdtraj
|
|
16
|
+
Requires-Dist: parmed
|
|
17
|
+
Requires-Dist: numba
|
|
18
|
+
Requires-Dist: topoly
|
|
19
|
+
Requires-Dist: geom_median
|
|
20
|
+
Requires-Dist: matplotlib
|
|
21
|
+
Requires-Dist: seaborn
|
|
22
|
+
Requires-Dist: scikit-learn
|
|
23
|
+
Requires-Dist: networkx
|
|
24
|
+
Requires-Dist: pyyaml
|
|
25
|
+
Requires-Dist: tqdm
|
|
26
|
+
Requires-Dist: requests
|
|
27
|
+
Requires-Dist: statsmodels
|
|
28
|
+
Dynamic: description
|
|
29
|
+
Dynamic: description-content-type
|
|
30
|
+
Dynamic: home-page
|
|
31
|
+
Dynamic: license-file
|
|
32
|
+
Dynamic: project-url
|
|
33
|
+
Dynamic: requires-dist
|
|
34
|
+
Dynamic: summary
|
|
35
|
+
|
|
36
|
+
# EntDetect
|
|
37
|
+
|
|
38
|
+
A comprehensive Python package for studying non-covalent lasso entanglements in protein folding through molecular dynamics simulations and experimental data analysis.
|
|
39
|
+
|
|
40
|
+
## Overview
|
|
41
|
+
|
|
42
|
+
EntDetect provides a complete toolkit for analyzing protein entanglements across multiple scales - from individual structures to large-scale proteomic datasets. The package enables researchers to:
|
|
43
|
+
|
|
44
|
+
- **Identify and characterize** native entanglements in protein structures
|
|
45
|
+
- **Calculate order parameters** for simulation trajectories (Q, G, K, SASA, Jwalk, XP)
|
|
46
|
+
- **Build Markov State Models** from coarse-grained simulation ensembles
|
|
47
|
+
- **Compare simulations to experiments** using LiP-MS and XL-MS data
|
|
48
|
+
- **Perform population-level analysis** across heterogeneous protein datasets
|
|
49
|
+
- **Coarse-grain and back-map** between atomic resolutions
|
|
50
|
+
|
|
51
|
+
## Key Features
|
|
52
|
+
|
|
53
|
+
- **Multi-scale Analysis**: From single proteins to proteome-wide studies
|
|
54
|
+
- **Experimental Integration**: Direct comparison with mass spectrometry data
|
|
55
|
+
- **Advanced Clustering**: Non-native entanglement clustering and MSM construction
|
|
56
|
+
- **Statistical Methods**: Monte Carlo simulations and logistic regression modeling
|
|
57
|
+
- **Flexible Resolution**: Seamless conversion between all-atom and coarse-grained representations
|
|
58
|
+
|
|
59
|
+
## Installation
|
|
60
|
+
|
|
61
|
+
Create a new conda environment and install EntDetect (from this repo checkout):
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
conda env create -f environment.yml
|
|
65
|
+
conda activate entdetect
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Notes:
|
|
69
|
+
- The provided conda environment targets Python 3.11 for best compatibility with the scientific stack.
|
|
70
|
+
- Run `conda env create` from the EntDetect repo root (the environment file uses `pip -e .`).
|
|
71
|
+
- If you prefer installing into an existing env, use `pip install -e .` from the repo root.
|
|
72
|
+
|
|
73
|
+
macOS (Miniconda) notes:
|
|
74
|
+
- The default `environment.yml` is intended to work on both Linux and macOS via conda-forge.
|
|
75
|
+
- If you hit solver/build issues on macOS, try:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
conda env create -f environment-mac.yml
|
|
79
|
+
conda activate entdetect
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
- On Apple Silicon, if a dependency is missing for `osx-arm64`, a common workaround is:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
CONDA_SUBDIR=osx-64 conda env create -f environment-mac.yml
|
|
86
|
+
conda activate entdetect
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Tutorials
|
|
90
|
+
|
|
91
|
+
Step-by-step, runnable tutorials covering all four analysis workflows are in `Documentation/`. Start here:
|
|
92
|
+
|
|
93
|
+
- [Documentation/index.md](Documentation/index.md) — master index with environment setup, path variables, and links to all workflows
|
|
94
|
+
|
|
95
|
+
For quick CLI reference, every script supports `--help`:
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
python scripts/run_nativeNCLE.py --help
|
|
99
|
+
python scripts/run_OP_on_simulation_traj.py --help
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Package Structure
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
EntDetect/
|
|
106
|
+
├── EntDetect/ # Main package
|
|
107
|
+
│ ├── __init__.py
|
|
108
|
+
│ ├── gaussian_entanglement.py # Core entanglement calculations
|
|
109
|
+
│ ├── clustering.py # Entanglement clustering methods
|
|
110
|
+
│ ├── order_params.py # Order parameter calculations
|
|
111
|
+
│ ├── compare_sim2exp.py # Simulation-experiment comparison
|
|
112
|
+
│ ├── statistics.py # Statistical analysis methods
|
|
113
|
+
│ ├── entanglement_features.py # Feature generation
|
|
114
|
+
│ ├── change_resolution.py # Resolution conversion
|
|
115
|
+
│ └── utilities.py # Helper functions
|
|
116
|
+
├── scripts/ # Example workflow scripts
|
|
117
|
+
├── Documentation/ # Detailed module documentation
|
|
118
|
+
└── TestingGrounds/ # Test data and examples
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Core Modules
|
|
122
|
+
|
|
123
|
+
- **`gaussian_entanglement`**: Calculate Gaussian linking numbers and identify entanglements
|
|
124
|
+
- **`clustering`**: Cluster native and non-native entanglements, build MSMs
|
|
125
|
+
- **`order_params`**: Compute Q, G, K, SASA, Jwalk, and cross-linking propensity
|
|
126
|
+
- **`compare_sim2exp`**: Integrate LiP-MS and XL-MS experimental data
|
|
127
|
+
- **`statistics`**: Population modeling and Monte Carlo analysis
|
|
128
|
+
- **`entanglement_features`**: Generate structural features for entanglements
|
|
129
|
+
- **`change_resolution`**: Convert between all-atom and coarse-grained representations
|
|
130
|
+
|
|
131
|
+
## Documentation
|
|
132
|
+
|
|
133
|
+
Detailed documentation for each module:
|
|
134
|
+
|
|
135
|
+
- [Tutorial index](Documentation/index.md)
|
|
136
|
+
- [Workflow 1: Native NCLE detection](Documentation/workflow1_native_ncle.md)
|
|
137
|
+
- [Workflow 2: Trajectory analysis](Documentation/workflow2_trajectory_analysis.md)
|
|
138
|
+
- [Workflow 3: Sim-to-experiment comparison](Documentation/workflow3_sim2exp.md)
|
|
139
|
+
- [Workflow 4: Population-level analysis](Documentation/workflow4_population.md)
|
|
140
|
+
- [Gaussian Entanglement](Documentation/gaussian_entanglement.md)
|
|
141
|
+
- [Clustering](Documentation/clustering.md)
|
|
142
|
+
- [Order Parameters](Documentation/order_params.md)
|
|
143
|
+
- [Simulation-Experiment Comparison](Documentation/compare_sim2exp.md)
|
|
144
|
+
- [Statistical Analysis](Documentation/statistics.md)
|
|
145
|
+
- [Entanglement Features](Documentation/entanglement_features.md)
|
|
146
|
+
- [Resolution Conversion](Documentation/change_resolution.md)
|
|
147
|
+
- [Utilities](Documentation/utilities.md)
|
|
148
|
+
|
|
149
|
+
## Requirements
|
|
150
|
+
|
|
151
|
+
- Python 3.8+
|
|
152
|
+
- NumPy
|
|
153
|
+
- Pandas
|
|
154
|
+
- SciPy
|
|
155
|
+
- MDAnalysis
|
|
156
|
+
- OpenMM (for force field operations)
|
|
157
|
+
- Matplotlib (for visualization)
|
|
158
|
+
- See `environment.yml` for complete dependencies
|
|
159
|
+
|
|
160
|
+
## Citation
|
|
161
|
+
|
|
162
|
+
If you use EntDetect in your research, please cite:
|
|
163
|
+
|
|
164
|
+
```bibtex
|
|
165
|
+
@software{entdetect2024,
|
|
166
|
+
title={EntDetect: A Python Package for Protein Entanglement Analysis},
|
|
167
|
+
author={Ian Sitarik},
|
|
168
|
+
author={Yang Jiang},
|
|
169
|
+
author={Hyebin Song},
|
|
170
|
+
author={Edward O'Brien},
|
|
171
|
+
year={2026},
|
|
172
|
+
url={https://github.com/obrien-lab-psu/EntDetect}
|
|
173
|
+
}
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## Contributing
|
|
177
|
+
|
|
178
|
+
Contributions are welcome! Please see our contributing guidelines and submit pull requests for any improvements.
|
|
179
|
+
|
|
180
|
+
## License
|
|
181
|
+
|
|
182
|
+
This project is licensed under the MIT License - see the LICENSE file for details.
|
|
183
|
+
|
|
184
|
+
## Support
|
|
185
|
+
|
|
186
|
+
For questions and support, please open an issue on GitHub or contact the developers.
|
|
187
|
+
|
|
188
|
+
|
|
@@ -1,9 +1,19 @@
|
|
|
1
1
|
from setuptools import setup, find_packages
|
|
2
2
|
|
|
3
|
+
with open('README.md', 'r', encoding='utf-8') as f:
|
|
4
|
+
long_description = f.read()
|
|
5
|
+
|
|
3
6
|
setup(
|
|
4
7
|
name='EntDetect',
|
|
5
|
-
version='1.2.
|
|
8
|
+
version='1.2.1',
|
|
6
9
|
description='Entanglement Detection in Protein Structures',
|
|
10
|
+
long_description=long_description,
|
|
11
|
+
long_description_content_type='text/markdown',
|
|
12
|
+
url='https://github.com/obrien-lab-psu/EntDetect',
|
|
13
|
+
project_urls={
|
|
14
|
+
'Source': 'https://github.com/obrien-lab-psu/EntDetect',
|
|
15
|
+
'Bug Tracker': 'https://github.com/obrien-lab-psu/EntDetect/issues',
|
|
16
|
+
},
|
|
7
17
|
packages=find_packages(),
|
|
8
18
|
include_package_data=True,
|
|
9
19
|
package_data={
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: EntDetect
|
|
3
|
-
Version: 1.2.0
|
|
4
|
-
Summary: Entanglement Detection in Protein Structures
|
|
5
|
-
License-File: LICENSE
|
|
6
|
-
Requires-Dist: biopython
|
|
7
|
-
Requires-Dist: numpy
|
|
8
|
-
Requires-Dist: scipy
|
|
9
|
-
Requires-Dist: pandas
|
|
10
|
-
Requires-Dist: MDAnalysis
|
|
11
|
-
Requires-Dist: mdtraj
|
|
12
|
-
Requires-Dist: parmed
|
|
13
|
-
Requires-Dist: numba
|
|
14
|
-
Requires-Dist: topoly
|
|
15
|
-
Requires-Dist: geom_median
|
|
16
|
-
Requires-Dist: matplotlib
|
|
17
|
-
Requires-Dist: seaborn
|
|
18
|
-
Requires-Dist: scikit-learn
|
|
19
|
-
Requires-Dist: networkx
|
|
20
|
-
Requires-Dist: pyyaml
|
|
21
|
-
Requires-Dist: tqdm
|
|
22
|
-
Requires-Dist: requests
|
|
23
|
-
Requires-Dist: statsmodels
|
|
24
|
-
Dynamic: license-file
|
|
25
|
-
Dynamic: requires-dist
|
|
26
|
-
Dynamic: summary
|
entdetect-1.2.0/PKG-INFO
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: EntDetect
|
|
3
|
-
Version: 1.2.0
|
|
4
|
-
Summary: Entanglement Detection in Protein Structures
|
|
5
|
-
License-File: LICENSE
|
|
6
|
-
Requires-Dist: biopython
|
|
7
|
-
Requires-Dist: numpy
|
|
8
|
-
Requires-Dist: scipy
|
|
9
|
-
Requires-Dist: pandas
|
|
10
|
-
Requires-Dist: MDAnalysis
|
|
11
|
-
Requires-Dist: mdtraj
|
|
12
|
-
Requires-Dist: parmed
|
|
13
|
-
Requires-Dist: numba
|
|
14
|
-
Requires-Dist: topoly
|
|
15
|
-
Requires-Dist: geom_median
|
|
16
|
-
Requires-Dist: matplotlib
|
|
17
|
-
Requires-Dist: seaborn
|
|
18
|
-
Requires-Dist: scikit-learn
|
|
19
|
-
Requires-Dist: networkx
|
|
20
|
-
Requires-Dist: pyyaml
|
|
21
|
-
Requires-Dist: tqdm
|
|
22
|
-
Requires-Dist: requests
|
|
23
|
-
Requires-Dist: statsmodels
|
|
24
|
-
Dynamic: license-file
|
|
25
|
-
Dynamic: requires-dist
|
|
26
|
-
Dynamic: summary
|
|
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
|
{entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/__pycache__/__init__.cpython-311.pyc
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/bt_contact_potential.dat
RENAMED
|
File without changes
|
{entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/karanicolas_dihe_parm.dat
RENAMED
|
File without changes
|
{entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/kgs_contact_potential.dat
RENAMED
|
File without changes
|
{entdetect-1.2.0 → entdetect-1.2.1}/EntDetect/resources/shared_files/mj_contact_potential.dat
RENAMED
|
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
|