Skip to content

Commit

Permalink
Merge pull request #181 from BackofenLab/dev
Browse files Browse the repository at this point in the history
v3.2.0
  • Loading branch information
martin-raden authored Mar 2, 2020
2 parents cee06fc + 8f61637 commit 0844684
Show file tree
Hide file tree
Showing 24 changed files with 1,827 additions and 494 deletions.
75 changes: 75 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,84 @@
# changes in development version since last release
################################################################################



################################################################################
################################################################################

################################################################################
### version 3.2.0
################################################################################

# IntaRNA
- BUGFIX: accessibility blocking constraints were only applied to seed location
- improved Zall estimate (and depending values) for `--model=X` (default)
- new arguments:
- `qId|tId` : optional id (FASTA prefix) setup for sequence naming
- `acc|accW|accL` : meta accessibility setup for both query and target
- `intLenMax|intLoopMax` : meta interaction and interior loop length setup

# CopomuS
- Compensatory mutation selector to support interaction validation experiments

################################################################################

200302 Martin Raden
* IntaRNA/IndexRange :
* fromString() :
* bugfix: + missing parsing of negative indices
* IntaRNA/InteractionEnergy :
* areComplementary() :
+ check if both positions are accessible (to avoid additional checks in
predictor recursions)
* bin/IntaRNA :
* ambiguous nt warning now in verbose log (was info log)

200217 Martin Raden
* bin/CommandLineParsing :
* NumericParameter :
* CharParameter :
+ isSet() : checks if value and default differ
+ qId|tId : id (prefix) for sequence naming
+ acc|accW|accL : meta for q|t*
+ intLenMax|intLoopMax : meta for q|t*
* resetParamDefault() :
+ overwrite value (since set to default in constructor)
+ validate_region|shape|shapeMethod|shapeConversion : generic checks for q|t
+ validate_seedRange : generic checks for q|t
+ validate_numberArgumentExcludeRange() : generic check excluding a range
+ validate_id() : checks for line breaks in q|tId
* parseSequences() :
* parseSequencesFasta() :
+ idPrefix handling
- obsolete functions
- validate_query|target
- validate_qAccW|L|Constr
- validate_q|tRegion|Shape|ShapeMethod|ShapeConversion
- validate_seedQ|TRange
* constructor() :
+ extended default reset for new arguments
* q|tAcc* arguments now hidden
* validation calls refactored
+ model|acc|intLenMax|intLoopMax now general arguments
* parse() :
+ additional checks for meta arguments with setup of q|t variables
+ usage of .isSet() where appropriate
+ check that outSep is not within id prefix in outMode=C
+ ensure intLenMax >= seedBP

200207 Martin Raden + Fabio Gutmann
+ python/CopomuS.py : Compensatory mutation selector to support interaction
validation experiments
+ python/copomus/* : utility functions of CopomuS
* python/README.md : links to dedicated README.md of subfolders

200131 Martin Raden
* IntaRNA/PredictorMfe2dHeuristicSeedExtension :
* fillHybridE_left() :
+ extended Zall update (additional save cases considered)


################################################################################
### version 3.1.5
################################################################################
Expand Down
49 changes: 26 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ not needed to be installed separately):

The data provided within the github repository
(or within the `Source code` archives provided at the
[IntaRNA release page](https://github.com/BackofenLab/IntaRNA/releases))
[IntaRNA release page](https://github.com/BackofenLab/IntaRNA/releases/latest))
is no complete distribution and
lacks all system specifically generated files. Thus, in order to get started with
a fresh clone of the IntaRNA source code repository you have to run the GNU autotools
Expand All @@ -214,7 +214,7 @@ Afterwards, you can continue as if you would have downloaded an
## IntaRNA package distribution (e.g. `intaRNA-2.0.0.tar.gz`)

When downloading an IntaRNA package distribution (e.g. `intaRNA-2.0.0.tar.gz`) from the
[IntaRNA release page](https://github.com/BackofenLab/IntaRNA/releases), you should
[IntaRNA release page](https://github.com/BackofenLab/IntaRNA/releases/latest), you should
first ensure, that you have all [dependencies](#deps) installed. If so, you can
simply run the following (assuming `bash` shell).
```bash
Expand Down Expand Up @@ -277,10 +277,10 @@ and follow either [install from github](#instgithub) or
### ... using pre-compiled binaries

For some releases, we also provide precompiled binary packages for Microsoft Windows at the
[IntaRNA release page](https://github.com/BackofenLab/IntaRNA/releases)
[IntaRNA release page](https://github.com/BackofenLab/IntaRNA/releases/latest)
that enable 'out-of-the-box' usage. If you
want to use them:
- [download](https://github.com/BackofenLab/IntaRNA/releases) the according ZIP archive and extract
- [download](https://github.com/BackofenLab/IntaRNA/releases/latest) the according ZIP archive and extract
- open a [Windows command prompt](https://www.lifewire.com/how-to-open-command-prompt-2618089)
- [run IntaRNA](#usage)

Expand Down Expand Up @@ -331,7 +331,7 @@ brew install viennarna
brew install doxygen
```

Download and extract the IntaRNA source code package (e.g. `intaRNA-2.0.2.tar.gz`) from the [release page](releases/).
Download and extract the IntaRNA source code package (e.g. `intaRNA-2.0.2.tar.gz`) from the [release page](https://github.com/BackofenLab/IntaRNA/releases/latest).

```[bash]
./configure CC=gcc-6 CXX=g++-6
Expand Down Expand Up @@ -412,9 +412,12 @@ interaction energy = -10.85 kcal/mol

```

or provide (multiple) sequence(s) in [FASTA-format](#https://en.wikipedia.org/wiki/FASTA_format).
It is possible to provide either file input or to read the FASTA input from the
STDIN stream.
In case you need specific RNA names in your output, you can provide ID strings
for each RNA using e.g. `--tId="mRNA with GC"` or `--qId="sRNA-example"`.

Multiple sequences can be provided in [FASTA-format](#https://en.wikipedia.org/wiki/FASTA_format).
It is possible to use either file input or to read the FASTA input from the
`STDIN` stream.

```bash
# running IntaRNA with FASTA files
Expand Down Expand Up @@ -497,10 +500,8 @@ mode = M
# no seed constraint
noSeed = true
# full global accessibility computation
qAccW = 0
qAccL = 0
tAccW = 0
tAccL = 0
accW = 0
accL = 0
```

where you use the long parameter names without the leading `--`.
Expand Down Expand Up @@ -750,7 +751,7 @@ by running IntaRNA when disabling both the seed constraint
as well as the accessibility integration using
```bash
# prediction results similar to TargetScan/RNAhybrid
IntaRNA [..] --noSeed --qAcc=N --tAcc=N
IntaRNA [..] --noSeed --acc=N
```
We *add seed-constraint support to TargetScan/RNAhybrid-like computations* by removing the
`--noSeed` flag from the above call.
Expand All @@ -767,7 +768,7 @@ Finally, RNAup only predicts interactions for subsequences of length 25.
All this can be setup using
```bash
# prediction results similar to 'RNAup -b' (incorporating accessibility of both RNAs)
IntaRNA --mode=M --noSeed --qAccW=0 --qAccL=0 --qIntLenMax=25 --tAccW=0 --tAccL=0 --tIntLenMax=25
IntaRNA --mode=M --noSeed --accW=0 --accL=0 --intLenMax=25
```
We *add seed-constraint support to RNAup-like computations* by removing the
`--noSeed` flag from the above call.
Expand Down Expand Up @@ -1055,10 +1056,10 @@ which results in two shorter ranges. If a range is shorter than `--seedBP`, it
is completely removed.

Finally, it is possible to restrict the overall length an interaction is allowed
to have. This can be done independently for the query and target sequence using
`--qIntLenMax` and `--tIntLenMax`, respectively. By setting both to 0 (default),
to have via `--intLenMax`. This can be done independently for the query and target sequence using
`--qIntLenMax` and `--tIntLenMax`, respectively. By setting to 0 (default),
the smaller of the full sequence length and the maximal accessibility-window
size (`--tAccW`, `--qAccW`) is used.
size is used (see `--accW`, `--tAccW`, or `--qAccW`).



Expand Down Expand Up @@ -1610,8 +1611,8 @@ If no value for `--energyVRNA` is provided, the default model of the underlying
Vienna RNA package is used (see respective documentation).

To increase prediction quality and to reduce the computational complexity, the
number of unpaired bases between intermolecular base pairs is restricted
(similar to internal loop length restrictions in single RNA folding algorithm). The
number of unpaired bases between intermolecular base pairs is restricted via
`--intLoopMax` (similar to internal loop length restrictions in single RNA folding algorithm). The
upper bound can be set independently for the query and target sequence via
`--qIntLoopMax` and `--tIntLoopMax`, respectively, and defaults to 16.

Expand Down Expand Up @@ -1856,10 +1857,11 @@ penalty for a subsequence partaking in an interaction is given by *ED=-RT log(Pu
where *Pu* denotes the unpaired probability of the subsequence. Within the
IntaRNA energy model, *ED* values for both interacting subsequences are considered.

Accessibility incorporation can be disabled for query or target sequences using
To globally turn off accessibility consideration, set `--acc=N`.
Accessibility incorporation can be disabled separately for query or target sequences using
`--qAcc=N` or `--tAcc=N`, respectively.

A setup of `--qAcc=C` or `--tAcc=C` (default) enables accessibility computation
A setup of `--acc=C` (default, as for `--qAcc=C` and `--tAcc=C`) enables accessibility computation
using the selected [energy model](#energy) for query or target sequences, respectively.

Using `--accNoLP` and `--accNoGUend`, the consideration of lonely base pairs
Expand All @@ -1885,7 +1887,8 @@ unpaired probabilities within the window (while only intramolecular base pairs
within the window are considered).

IntaRNA enables both global as well as local unpaired probability computation.
To this end, the sliding window length has to be specified in order to enable/disable
To this end, the sliding window length `--accW` and the maximal base pair span
`--accL` (<= `--accW`) have to be specified in order to enable/disable
local folding.

##### Use case examples global/local unpaired probability computation
Expand All @@ -1899,7 +1902,7 @@ i.e. the maximal number of positions enclosed by a base pair
independently while respecting `AccL <= AccW`.
```bash
# using global accessibilities for target and query
IntaRNA [..] --qAccW=0 --qAccL=0 --tAccW=0 --qAccL=0
IntaRNA [..] --accW=0 --accL=0
# using global accessibilities for query and local ones for target
IntaRNA [..] --qAccW=0 --qAccL=0 --tAccW=150 --qAccL=100
```
Expand Down
5 changes: 3 additions & 2 deletions configure.ac
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@

AC_PREREQ([2.65])
# 5 argument version only available with aclocal >= 2.64
AC_INIT([IntaRNA], [3.1.5], [], [intaRNA], [http://www.bioinf.uni-freiburg.de] )
AC_INIT([IntaRNA], [3.2.0], [], [intaRNA], [http://www.bioinf.uni-freiburg.de] )

# minimal required version of the boost library
BOOST_REQUIRED_VERSION=1.50.0
# minimal required version of the Vienna RNA library
VRNA_REQUIRED_VERSION=2.4.14
# minimal required version of python interpreter
# minimal required version of python interpreter (to install intarnapvalue)
PYTHON_REQUIRED_VERSION=3.6


Expand Down Expand Up @@ -436,6 +436,7 @@ AC_CONFIG_FILES([R/Makefile])
AC_CONFIG_FILES([python/Makefile])
AC_CONFIG_FILES([python/bin/Makefile])
AC_CONFIG_FILES([python/intarnapvalue/Makefile])
AC_CONFIG_FILES([python/copomus/Makefile])
AC_CONFIG_FILES([tests/Makefile])
AC_CONFIG_FILES([tests/data/Makefile])
AC_CONFIG_FILES([doc/Makefile])
Expand Down
Loading

0 comments on commit 0844684

Please sign in to comment.