项目作者: HosnaJabbari

项目描述 :
RNA/DNA/PMO Pseudoknotted Secondary Structure Interaction Prediction Using Relaxed Hierarchical Folding
高级语言: C++
项目地址: git://github.com/HosnaJabbari/DinoKnot.git
创建时间: 2017-07-15T18:17:33Z
项目社区:https://github.com/HosnaJabbari/DinoKnot

开源协议:

下载


image

DinoKnot

Description:

This software is still under development

Supported OS:

Linux
macOS

Installation:

Requirements: A compiler that supports C++11 standard (tested with g++ version 4.7.2 or higher) and CMake version 3.1 or greater.

CMake version 3.1 or greater must be installed in a way that HFold can find it.
To test if your Mac or Linux system already has CMake, you can type into a terminal:

  1. cmake --version

If it does not print a cmake version greater than or equal to 3.1, you will have to install CMake depending on your operating system.

Mac:

Easiest way is to install homebrew and use that to install CMake.
To do so, run the following from a terminal to install homebrew:

  1. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

When that finishes, run the following from a terminal to install CMake.

  1. brew install cmake

Linux:

Run from a terminal

  1. wget http://www.cmake.org/files/v3.8/cmake-3.8.2.tar.gz
  2. tar xzf cmake-3.8.2.tar.gz
  3. cd cmake-3.8.2
  4. ./configure
  5. make
  6. make install

Linux instructions source

Steps for installation

  1. Download the repository and extract the files onto your system.
  2. From a command line in the root directory (where this README.md is) run
    1. cmake -H. -Bbuild
    2. cmake --build build
    If you need to specify a specific compiler, such as g++, you can instead run something like
    1. cmake -H. -Bbuild -DCMAKE_CXX_COMPILER=g++
    2. cmake --build build
    This can be useful if you are getting errors about your compiler not having C++11 features.

Help

  1. Usage: DinoKnot [sequence1] [sequence2] [options]

Read RNA and DNA sequences from cmdline; predict minimum\nfree energy and optimum structure

  1. --s1 Specify the first sequence
  2. --r1 Specify the pseuodoknot-free restricted structure for sequence 1 (Will not generate other hotspots)
  3. --s2 Specify the second sequence that the first sequence is interacting with
  4. --r2 Specify the pseuodoknot-free restricted structure for sequence 2 (Will not generate other hotspots)
  5. --t1 Change the type for sequence 1 to 1 (DNA) or 2 (PMO) (default is RNA)
  6. --t2 Change the type for sequence 2 to 1 (DNA) or 2 (PMO) (default is RNA)
  7. -p --pen Specify the penalty for the interactions between the sequences
  8. -n --opt Specify the number of suboptimal structures to output (default is hotspot-num*hotspot-num)
  9. -i --input-file Specify the input file
  10. -o --output-file Specify the path to file to output the results to
  11. -d --dir Specify the directory for which each results will have a file
  12. --hotspot-num Specify the max number of hotspots per sequence (default is 20)
  13. --hotspot-only Specify the path to file to output the hotspots to
  1. Remarks:
  2. Required arguments:
  3. 1. --s1 <sequence1>, --s2 <sequence2>
  4. or
  5. 2. -i </path/to/file>
  6. if -i is provided with just a file name without a path, it is assuming the file is in the diretory where the executable is called
  7. if -o is provided with just a file name without a path, the output file will be generated in the diretory where the executable is called
  8. --pen are mainly used when we try to tune the optimal penalty. It is currently set to 22.96551130344778 for RNA-RNA interactions (homo-dimers), 34.14979695798525 for DNA-DNA interactions (homo-dimers) and 166.0 for hybrid interactions (hetero-dimers). Change this at your own risk.
  9. Sequence requirements:
  10. containing only characters GCAUT

Example:

  1. assume you are in the directory where the DinoKnot executable is located
  2. ./build/DinoKnot -i "file.txt" --t2 1
  3. ./build/DinoKnot -i "file.txt" --t2 2 -o "outputfile.txt"
  4. ./build/DinoKnot -i "inputfile.txt" --t2 1 -o "outputfile.txt"
  5. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --r1 "(____________________________)" --s2 "GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC" --r2 "(__________________________________________________________)"
  6. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --s2 "ACGATTGTGCATCAGCTGA" --t2 2
  7. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --r1 "(____________________________)" --s2 "GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC" --r2 "(__________________________________________________________)" --t2 2 -o "outputfile.txt"
  8. ./build/DinoKnot --s1 GCAACGAUGACAUACAUCGCUAGUCGACGC --r1 (____________________________) --s2 GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC --r2 (__________________________________________________________) -o file.txt
  9. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --s2 "GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC" --hotspot-only file.txt --hotspot-num 7
  10. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --s2 "GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC" --dir /home/username/Desktop/some_folder
  1. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --r1 "(____________________________)" --s2 "GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC" --r2 "(__________________________________________________________)"
  2. Seq: GCAACGAUGACAUACAUCGCUAGUCGACGCXXXXXGCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC
  3. Restricted_0: (____________________________).....(__________________________________________________________)
  4. Result_0: ....(((((.....(((((...(((((([[.....]]..[[[[[.....]]]]]...))))))......))))).....)))))........... (-16.6)
  5. ./build/DinoKnot --s1 "GCAACGAUGACAUACAUCGCUAGUCGACGC" --s2 "GCAACGAUGACAUACAUCGCUAGUCGACGCGCAACGAUGACAUACAUCGCUAGUCGACGC" --hotspot-only file.txt --hotspot-num 7
  6. Seq1_hotspot_0: ____(((((_____)))))___________(-2.32)
  7. Seq1_hotspot_1: ____((((______________))))____(-1.4)
  8. Seq1_hotspot_2: ____((((_______))))___________(-1.11)
  9. Seq1_hotspot_3: _______((((___________))))____(-0.56)
  10. Seq1_hotspot_4: ____(((_________)))___________(-0.32)
  11. ---------------
  12. Seq2_hotspot_0: ______________________((((((________________________))))))__(-5.1)
  13. Seq2_hotspot_1: ______________(((((_______________)))))_____________________(-2.65)
  14. Seq2_hotspot_2: ______________________(((((__________________________)))))__(-2.59)
  15. Seq2_hotspot_3: __________________((((((________________________))))))______(-2.46)
  16. Seq2_hotspot_4: __________________________________(((((_____)))))___________(-2.32)
  17. Seq2_hotspot_5: ____(((((_____)))))_________________________________________(-2.32)
  18. Seq2_hotspot_6: _________________(((________)))_____________________________(-2)

Reporting errors:

For any errors when using DinoKnot, report errors to mateo2@ualberta.ca
Thank you