Skip to content
Merged
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
83 changes: 8 additions & 75 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,84 +1,17 @@
CodeEntropy
==============================
[//]: # (Badges)
[![GitHub Actions Build Status](https://github.com/CCPBioSim/CodeEntropy/workflows/CI/badge.svg)](https://github.com/CCPBioSim/CodeEntropy/actions?query=workflow%3ACI)

[![ci](https://github.com/CCPBioSim/CodeEntropy/actions/workflows/CI.yaml/badge.svg)](https://github.com/CCPBioSim/CodeEntropy/actions/workflows/CI.yaml)
![PyPI - Version](https://img.shields.io/pypi/v/codeentropy?logo=pypi&logoColor=white)
![PyPI - Status](https://img.shields.io/pypi/status/codeentropy?logo=pypi&logoColor=white)
![PyPI - Downloads](https://img.shields.io/pepy/dt/codeentropy?logo=pypi&logoColor=white&color=blue)
[![Coverage Status](https://coveralls.io/repos/github/CCPBioSim/CodeEntropy/badge.svg?branch=main)](https://coveralls.io/github/CCPBioSim/CodeEntropy?branch=main)
[![Docs - Status](https://app.readthedocs.org/projects/codeentropy/badge/?version=latest)](https://codeentropy.readthedocs.io/en/latest/?badge=latest)

CodeEntropy
==============================
CodeEntropy tool with POSEIDON code integrated to form a complete and generally applicable set of tools for calculating entropy

See [CodeEntropy’s documentation](https://codeentropy.readthedocs.io/en/latest/) for more information.

## To run
### Requirements
- Python > 3.9
- gcc
- g++

### Install via
```
pip install CodeEntropy
```

### Input
For supported format (AMBER NETCDF and GROMACS TRR) you will need to output the **coordinates** and **forces** to the **same file**.

See [Format overview — MDAnalysis User Guide documentation](https://userguide.mdanalysis.org/stable/formats/index.html)

### Command-line tool
A quick and easy way to get started is to use the command-line tool which you can run in bash by simply typing `CodeEntropyPoseidon` (Note: this doesn't work on Windows!!!)
#### For help
```
CodeEntropyPoseidon -h
```
#### Arguments
| Arguments | Description | Default | type|
| ------------- | ------------- |----------- |--------------|
| `-f`, `--top_traj_file` | Path to Structure/topology file (AMBER PRMTOP or GROMACS TPR) followed by Trajectory file(s) (AMBER NETCDF or GROMACS TRR). You will need to output the **coordinates** and **forces** to the **same file** | Require at least 2 file: a topology and a trajectory file | list of `str` |
| `-l`, `--selectString` | Selection string for CodeEntropy such as protein or resid, refer to `MDAnalysis.select_atoms` for more information. | `"all"`: select all atom in trajectory for CodeEntropy analysis for trajectory without solvent | `str` |
| `-b`, `--begin` | Start analysing the trajectory from this frame index. | `0`: From begining | `int` |
| `-e`, `--end` | Stop analysing the trajectory at this frame index | `-1`: end of trajectory | `int` |
| `-d`, `--step` | Steps between frame | `1` | `int` |
| `-k`, `--tempra` | Temperature for entropy calculation (K) | `298.0` | `float` |
| `-t`, `--thread` | How many multiprocess to use. | `1`: for single core execution | `int` |
| `-o`, `--out` | Name of the file where the text format output will be written. | `outfile.out` | `str` |
| `-v`, `--csvout` | Name of the file where the total entropy output will be written. | `outfile.csv` | `str` |
| `-r`, `--resout` | Name of the file where the residue entropy output will be written. | `res_outfile.csv` | `str` |
| `-m`, `--mout` | Name of the file where certain matrices will be written. | `None` | `str` |
| `-n`, `--nmd` | Name of the file where VMD compatible NMD format files with mode information will be printed. | `None` | `str` |
| `-a`, `--rotationalaxis` | The 3 atom name in each residue for rotational axis. | `['C', 'CA', 'N']` : for protein | list of `str` |
| `-c`, `--cutShell` | Include cutoff shell analysis, add cutoff distance in angstrom. | `None` : will ust the RAD Algorithm. See Higham, Jonathan, and Richard H Henchman. “Locally adaptive method to define coordination shell.” The Journal of chemical physics vol. 145,8 (2016): 084108. doi:10.1063/1.4961439 | list of `str` |
| `-p`, `--pureAtomNum` | Reference molecule resid for system of pure liquid. | `1` | `int` |
| `-x`, `--excludedResnames` | Exclude a list of molecule names from nearest non-like analysis. | `None` | list of `str` |
| `-w`, `--water` | Resname for water molecules. | `WAT` | list of `str` |
| `-s`, `--solvent` | Include resname of solvent molecules (case-sensitive). | `None` | list of `str` |
| `--wm` | Do entropy calculation at whole molecule level (The whole molecule is treated as one single bead.). | Flag, activate when included | Flag |
| `--res` | Do entropy calculation at residue level (A residue as a whole represents a bead.). | Flag, activate when included | Flag |
| `--uatom` | Do entropy calculation at united atom level (A heavy atom and its covalently bonded H-atoms for an united atom and represent a bead.). | Flag, activate when included | Flag |
| `--topog` | Compute the topographical entropy using <ul><li>1 : pLogP method (will separate between backbone and side chain)</li><li>2: Corr. pLogP method (will separate between backbone and side chain)</li><li>3: Corr. pLogP after adaptive enumeration of states</li></ul> | `0`: no topographical analysis | `int` |
| `--solwm` | Do water entropy calculation at residue level (The whole molecule is treated as one single bead.). | Flag, activate when included | Flag |
| `--solres` | Do water entropy calculation at residue level (A residue as a whole represents a bead. | Flag, activate when included | Flag |
| `--soluatom` | Do solution entropy calculation at united atom level (A heavy atom and its covalently bonded H-atoms for an united atom and represent a bead.). | Flag, activate when included | Flag |
| `--solContact` | Do solute contact calculation. | Flag, activate when included | Flag |
#### Example
You need to clone this repository to download example trajectories.
```
# example 1 DNA
CodeEntropyPoseidon -f "Example/data/md_A4_dna.tpr" "Example/data/md_A4_dna_xf.trr" -a "C5'" "C4'" "C3'" -l "all" -t 8 --wm --res --uatom --topog 3

# example 2 lysozyme in water
CodeEntropyPoseidon -f "Example/data/1AKI_prod_60.tpr" "Example/data/1AKI_prod_60.trr" -l "protein" -b 1 -e 30 -d 2 --wm --res --uatom --topog 1 --solwm --solres --soluatom --solContact
```

## Units
The program assumes the following default unit
| Qunatity | Unit |
| ------------- | ------------- |
| Length | Å |
| time | ps |
| charge | *e* |
| mass | u |
| force | kJ/(mol·Å) |

## Copyright

Copyright (c) 2022, DonaldChung-HK, CCPBioSim
Expand Down