This project contains a set of tools for analysis of opsin structures and sequences.
Each tool has an API and a CLI. Keep in mind that the interfaces might change in the future since the project is under active development.
There are python and non-python dependencies: the most straightforward installation is via conda which takes care of both.
Use the provided environment definition: conda env create -n opsintools -f env.yaml
and then conda activate opsintools
.
opsintools
and its python dependencies can be installed with pip install git+https://github.com/BejaLab/opsintools
. Non-python dependencies should then be installed separately. As of now these include:
Opsin homology based on protein structures. The input is an opsin structure in PDB format and a suitable reference dataset (can be dowloaded from opsintools-build), the output is the mapping between positions in the query and the positions in the reference in the transmembrane regions. Both the CLI and the API generate output files located in the specified directory:
aln_to_ref.txt
- alignment of the query to the referencetrimmed.pdb
- trimmed query structuret_coffee.aln
- structural alignmentt_coffee.aln.score_ascii
- alignment scorest_coffee.aln.log
- structural alignment logopsinmap.json
- json file with the position mapping
The API function opsinmap3d
returns the dictionary mapping reference positions to the query positions as its output.
See opsinmap3d -h
or from opsintools import opsinmap3d; help(opsinmap3d)
for more details.
A user-friendly wrapper for running t-coffee
on a set of PDB files and parsing the results. The output is an object of the custom class Tcoffee
. The output directory will contain:
t_coffee.aln
- structural alignmentt_coffee.log
- structural alignment log
See opsinalign3d -h
or from opsintools import opsinalign3d; help(opsinalign3d)
for more details.