Skip to content
Snippets Groups Projects
Commit 08225362 authored by Studer Gabriel's avatar Studer Gabriel
Browse files

Merge branch 'master' into develop

parents 8351ac28 2c1284a8
Branches
Tags
No related merge requests found
...@@ -34,8 +34,8 @@ endif() ...@@ -34,8 +34,8 @@ endif()
project(OpenStructure CXX C) project(OpenStructure CXX C)
set (CMAKE_EXPORT_COMPILE_COMMANDS 1) set (CMAKE_EXPORT_COMPILE_COMMANDS 1)
set (OST_VERSION_MAJOR 2) set (OST_VERSION_MAJOR 2)
set (OST_VERSION_MINOR 9) set (OST_VERSION_MINOR 10)
set (OST_VERSION_PATCH 3) set (OST_VERSION_PATCH 0)
set (OST_VERSION_STRING ${OST_VERSION_MAJOR}.${OST_VERSION_MINOR}.${OST_VERSION_PATCH} ) set (OST_VERSION_STRING ${OST_VERSION_MAJOR}.${OST_VERSION_MINOR}.${OST_VERSION_PATCH} )
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake_support) set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake_support)
include(OST) include(OST)
......
...@@ -21,20 +21,59 @@ making deployment easier. Deploying a docker image just needs a ...@@ -21,20 +21,59 @@ making deployment easier. Deploying a docker image just needs a
docker pull which typically finishes in about a minute depending docker pull which typically finishes in about a minute depending
on your local hardware and internet connection. Singularity on your local hardware and internet connection. Singularity
containers bootstrap from the docker container but must be built containers bootstrap from the docker container but must be built
by the user. Detailed instructions can be found here: by the user.
* Docker: [OpenStructure Docker Instructions](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/docker) ### Docker
* Singularity: [OpenStructure Singularity Instructions](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/singularity)
For complete documentation on using Docker with OpenStructure,
[click here](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/docker).
This section provides a quick-start guide to help you get OpenStructure up and running using Docker.
Most docker installations require you to add `sudo` in front of the docker commands.
Get the latest Docker image from the OpenStructure registry:
```
docker pull registry.scicore.unibas.ch/schwede/openstructure:latest
```
And run a test script:
```
echo print\(\"Hello OST\"\) > test.py
docker run --rm -v $(pwd):/home registry.scicore.unibas.ch/schwede/openstructure:latest test.py
```
### Singularity
For complete documentation on using Singularity with OpenStructure,
[click here](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/singularity).
This section provides a quick-start guide to help you get OpenStructure up and running using Singularity.
Building the singularity container requires root permissions:
```
wget https://git.scicore.unibas.ch/schwede/openstructure/-/raw/master/singularity/Singularity
sudo singularity build ost.img Singularity
```
And run a test script:
```
echo print\(\"Hello OST\"\) > test.py
singularity run --app OST ost.img test.py
```
### Build from source
OpenStructure is developed and tested across various Linux distributions. OpenStructure is developed and tested across various Linux distributions.
You can find detailed build instructions and a list of required dependencies here: You can find [detailed build instructions and a list of required dependencies
https://openstructure.org/docs/install/ in the online documentation](https://openstructure.org/docs/install/).
## Getting started ## Getting started
The installation and container instructions will help you set up Once you have OpenStructure installed, check out the [online
OpenStructure for scripting. Additionally, here are some advanced documentation](https://openstructure.org/docs/).
use cases worth highlighting.
Additionally, here are some advanced use cases worth highlighting.
### Benchmarking and Scoring ### Benchmarking and Scoring
......
...@@ -2,7 +2,7 @@ FROM ubuntu:22.04 ...@@ -2,7 +2,7 @@ FROM ubuntu:22.04
# ARGUMENTS # ARGUMENTS
########### ###########
ARG OPENSTRUCTURE_VERSION="2.9.2" ARG OPENSTRUCTURE_VERSION="2.10.0"
ARG SRC_FOLDER="/usr/local/src" ARG SRC_FOLDER="/usr/local/src"
ARG CPUS_FOR_MAKE=2 ARG CPUS_FOR_MAKE=2
......
...@@ -8,21 +8,32 @@ OpenStructure provides "actions" for general benchmarking use cases. ...@@ -8,21 +8,32 @@ OpenStructure provides "actions" for general benchmarking use cases.
* **compare-ligand-structures**: Focuses on comparisons of interactions between * **compare-ligand-structures**: Focuses on comparisons of interactions between
polymer entities and non-polymer entities, i.e. small molecule ligands polymer entities and non-polymer entities, i.e. small molecule ligands
# Before doing any scoring
Pull example data from the repository:
```
wget https://git.scicore.unibas.ch/schwede/openstructure/-/archive/master/openstructure-master.zip?path=examples/scoring -O example.zip
unzip -j example.zip
```
# Run the examples
The example commands here assume an OpenStructure installation The example commands here assume an OpenStructure installation
(compile instructions: https://openstructure.org/docs/install/). ([compile instructions](https://openstructure.org/docs/install/)).
Running the computations in containers provide a considerably easier setup than Running the computations in containers provide a considerably easier setup than
compiling OpenStructure from source. Instructions for setup and running compiling OpenStructure from source. Instructions for setup and running
equivalent computations are available for equivalent computations are available below for
* [Docker](#docker) * [Docker](#docker)
* [Singularity](#singularity) * [Singularity](#singularity)
A detailed list of options can be found in the A detailed list of options can be found in the
[action documentation](https://openstructure.org/docs/actions/). [action documentation](https://openstructure.org/docs/actions/).
Alternatively, the command Alternatively, the commands
``` ```
ost <ACTION> -h ost compare-structures -h
ost compare-ligand-structures -h
``` ```
will list all available options of the respective action. Both actions compute will list all available options of the respective action. Both actions compute
...@@ -34,9 +45,11 @@ default output (out.json): ...@@ -34,9 +45,11 @@ default output (out.json):
ost compare-structures -m model.pdb -r reference.cif.gz --lddt --local-lddt --qs-score ost compare-structures -m model.pdb -r reference.cif.gz --lddt --local-lddt --qs-score
``` ```
Results should be computed within seconds and example output can be found Results should be computed within seconds and saved in the `out.json` file
[here](compare-structures_example_out.json). We refer to the action ([see example output](compare-structures_example_out.json)). We refer to the
documentation for in-depth description of the provided data items. [action documentation](https://openstructure.org/docs/actions/) for in-depth
description of the provided data items and description of optional flags that
compute additional scores.
By default, model-reference chains are aligned using Needleman-Wunsch. By default, model-reference chains are aligned using Needleman-Wunsch.
Many benchmarking efforts such as CASP and CAMEO assume residue numbers Many benchmarking efforts such as CASP and CAMEO assume residue numbers
...@@ -55,9 +68,10 @@ We can compute LDDT-PLI and BiSyRMSD with: ...@@ -55,9 +68,10 @@ We can compute LDDT-PLI and BiSyRMSD with:
ost compare-ligand-structures -m model.pdb -r reference.cif.gz -ml *.sdf --rmsd --lddt-pli ost compare-ligand-structures -m model.pdb -r reference.cif.gz -ml *.sdf --rmsd --lddt-pli
``` ```
Results should be computed within seconds and example output can be found Results should be computed within seconds and saved in the `out.json` file
[here](compare-ligand-structures_example_out.json). We refer to the action ([See example output ](compare-ligand-structures_example_out.json)). We refer
documentation for in-depth description of the provided data items. to the action documentation for in-depth description of the provided data
items.
Again, it is advised to use the `-rna` flag if applicable. In this example, Again, it is advised to use the `-rna` flag if applicable. In this example,
reference ligands are directly extracted from the provided mmCIF file based on reference ligands are directly extracted from the provided mmCIF file based on
...@@ -66,8 +80,9 @@ This only works in case of mmCIF input AND if the respective ligand is in the ...@@ -66,8 +80,9 @@ This only works in case of mmCIF input AND if the respective ligand is in the
PDB component dictionary which defines connectivity (matching based on compound PDB component dictionary which defines connectivity (matching based on compound
name). name).
Container solutions come with such a dictionary which has been created at build Container solutions come with such a dictionary which has been created at build
time. Check the Docker/Singularity instructions linked above on how to set the time. Check the detailed
latest dictionary, i.e. "Compound Library". [Docker](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/docker)/[Singularity](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/singularity)
instructions on how to set the latest dictionary, i.e. "Compound Library".
You can override automatic extraction by providing SDF files with ligand You can override automatic extraction by providing SDF files with ligand
coordinates and connectivity information. If the receptor is provided in coordinates and connectivity information. If the receptor is provided in
PDB format, ligands must be provided in SDF format. PDB format, ligands must be provided in SDF format.
...@@ -77,18 +92,17 @@ PDB format, ligands must be provided in SDF format. ...@@ -77,18 +92,17 @@ PDB format, ligands must be provided in SDF format.
For complete documentation on using Docker with OpenStructure, For complete documentation on using Docker with OpenStructure,
[click here](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/docker). [click here](https://git.scicore.unibas.ch/schwede/openstructure/tree/master/docker).
This section provides a quick-start guide to help you get up and running with scoring using Docker. This section provides a quick-start guide to help you get up and running with scoring using Docker.
Most docker installations require you to add `sudo` in front of the following commands.
Get the latest Docker image from the OpenStructure registry: Get the latest Docker image from the OpenStructure registry:
``` ```
docker pull registry.scicore.unibas.ch/schwede/openstructure:latest sudo docker pull registry.scicore.unibas.ch/schwede/openstructure:latest
``` ```
run one of the scoring examples, other examples need to be adapted accordingly: run one of the scoring examples, other examples need to be adapted accordingly:
``` ```
docker run --rm -v $(pwd):/home registry.scicore.unibas.ch/schwede/openstructure:latest compare-structures -m model.pdb -r reference.cif.gz --lddt --local-lddt --qs-score sudo docker run --rm -v $(pwd):/home registry.scicore.unibas.ch/schwede/openstructure:latest compare-structures -m model.pdb -r reference.cif.gz --lddt --local-lddt --qs-score
``` ```
# Singularity # Singularity
...@@ -100,7 +114,7 @@ This section provides a quick-start guide to help you get up and running with sc ...@@ -100,7 +114,7 @@ This section provides a quick-start guide to help you get up and running with sc
Building the singularity container requires root permissions: Building the singularity container requires root permissions:
``` ```
cd <OST_ROOT>/singularity wget https://git.scicore.unibas.ch/schwede/openstructure/-/raw/master/singularity/Singularity
sudo singularity build ost.img Singularity sudo singularity build ost.img Singularity
``` ```
...@@ -109,5 +123,3 @@ run one of the scoring examples, other examples need to be adapted accordingly: ...@@ -109,5 +123,3 @@ run one of the scoring examples, other examples need to be adapted accordingly:
``` ```
singularity run --app OST ost.img compare-structures -m model.pdb -r reference.cif.gz --lddt --local-lddt --qs-score singularity run --app OST ost.img compare-structures -m model.pdb -r reference.cif.gz --lddt --local-lddt --qs-score
``` ```
BootStrap: docker BootStrap: docker
From: registry.scicore.unibas.ch/schwede/openstructure:2.9.2 From: registry.scicore.unibas.ch/schwede/openstructure:2.10.0
%post %post
############################################################################## ##############################################################################
# POST # POST
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment