Skip to content

Compiling from source

ryoga-hmdlab edited this page Apr 10, 2020 · 2 revisions

Requirements

RaptRanker needs C++ compiler, CMake, and Boost Libraries. We checked under the following versions.

  • OS : CentOS 7.5.1804, macOS Mojave 10.14.5
  • C++ compiler : g++ 5.5.0, clang 10.0.1
  • CMake : 3.13.4, 3.14.2
  • Boost : 1.69.0, 1.71.0

Installation

Download or clone the latest version sources, and build with CMake.

git clone 
https://github.com/hmdlab/RaptRanker.git
cd RaptRanker
mkdir build
cd build
cmake ..
make

Trouble shooting

$ warning: This header is deprecated. Use <boost/integer/integer_log2.hpp> instead. may occur during make. This warning occurs in third-party source code. For now RaptRanker works, so please ignore it.

Confirmation using test data

RaptRanker include small data for confirmation of install. Make sure that the current working directory is /path/to/RaptRanker/bin/ when you test, since the parameter file is written in relative paths.

cd /path/to/RaptRanker/bin/
./RaptRanker ../test/parameterTestData.json

When the test is finished successfully, the log could be as following. You can also confirm the installation by comparing /path/to/RaptRanker/test/sample_result/socre.csv with /path/to/RaptRanker/test/your_result/socre.csv. If you want to re-test, delete all files in /path/to/RaptRanker/test/your_result/. (Please note that the your_result/ directory is needed for the test)

$ ./RaptRanker ../test/parameterTestData.json 
===== Parameter setting =====
file_type : 2
forward_primer : TAATACGACTCACTATAGGGAGCAGGAGAGAGGTCAGATG
reverse_primer : CCTATGCGTGCTAGTGTGA
add_forward_primer : GGGAGCAGGAGAGAGGTCAGATG
add_reverse_primer : CCTATGCGTGCTAGTGTGA
sequence_maximum_length : 35
sequence_minimum_length : 25
wide_length : 10
nucleotide_weight : 0.5
cosine_distance : 0.001
missing_ratio : 1e-05
input_file_nums : 3
input_files : 
    round_id : 0
    round_name : Round0
    file_path : ../test/TestData-0R.fastq

    round_id : 1
    round_name : Round1
    file_path : ../test/TestData-1R.fastq

    round_id : 2
    round_name : Round2
    file_path : ../test/TestData-2R.fastq

experiment_dbfile : ../test/your_result/seqinfo.sqlite3
analysis_output_path : ../test/your_result/
analysis_dbfile : ../test/your_result/result.sqlite3
=============================
===== extra options =====
exKmer : 0
addbinding : 0
bindingfile : 
=============================
Getting ready "../test/your_result/seqinfo.sqlite3"...
	 all_seq table is ready.
	 binding_seq table is ready.
	 seq_secondary_structure table is ready.
	 round_info table is ready.
	 seq score tables and indexes are ready.
"../test/your_result/seqinfo.sqlite3" is ready.
Start importing round_id=0 ("../test/TestData-0R.fastq")...
	 imported successfully.
	 inputted : 9
	 filtered : 5
	 unique : 5
Start importing round_id=1 ("../test/TestData-1R.fastq")...
	 imported successfully.
	 inputted : 10
	 filtered : 10
	 unique : 5
Start importing round_id=2 ("../test/TestData-2R.fastq")...
	 imported successfully.
	 inputted : 20
	 filtered : 20
	 unique : 5
Predicting secondary structures... 
(This process may take a while. Even if it looks like it's freezed, please waiting for a while.)
Finished secondary structure prediction.
Enumerating subsequences...
	 all_subseq Table is ready.
	 subseq_cluster Table is ready.
	 sub_sequence score Tables are ready.
	 cluster score Tables are ready.
	 sequence score Tables are ready.
	 indexes are ready.
Finished subsequences enumeration.
Running SketchSort...
deciding parameters such that the missing edge ratio is no more than 1e-05
decided parameters:
hamming distance threshold: 1
number of blocks: 4
number of chunks: 5

missing edge ratio:2.51892e-06
start reading
end reading
readtime:0.004656
start making input-data centered at 0
end making input-data centered at 0
centering time:5.3e-05
number of data:103
data dimension:100
projected dimension:32
length of strings:160
number of chunks:5
start projection
end projection
projecttime:0.003017
chunk distance:1
the number of blocks:4
start enumeration chunk no 1
start enumeration chunk no 2
start enumeration chunk no 3
start enumeration chunk no 4
start enumeration chunk no 5
msmtime:0.000292
cputime:0.003824
numSort:20
numHamDist:16
numCosDist:4
Clustering with Minimum Spanning Forest...
Finished clustering.
Calculating Frequency and Enrichment...
Finished Frequency and Enrichment calculation.
Calculating subsequence scores...
Finished subsequence scores calculation.
Calculating cluster scores...
Finished cluster scores calculation.
Calculating sequence scores...
Finished sequence scores calculation.
Exporting score csv...
Finished score csv exporting.
======Stopwatch : measurement result ======
Split times are :
	 Split 0	DataInput	67[ms] (0.067[s])
	 Split 1	CapR	224[ms] (0.224[s])
	 Split 2	MakeSubseq	261[ms] (0.261[s])
	 Split 3	SketchSort	274[ms] (0.274[s])
	 Split 4	MakeCluster	280[ms] (0.28[s])
	 Split 5	CalcFreqEnrich	285[ms] (0.285[s])
	 Split 6	CalcSubseqScore	299[ms] (0.299[s])
	 Split 7	CalcClusterScore	321[ms] (0.321[s])
	 Split 8	CalcSeqScore	334[ms] (0.334[s])
	 Split 9	ExportCSV	335[ms] (0.335[s])
	 Finish 335[ms] (0.335[s])
Lap times are :
	 Lap 1(start ~ DataInput)  67[ms] (0.067[s])
	 Lap 2(DataInput ~ CapR)  157[ms] (0.157[s])
	 Lap 3(CapR ~ MakeSubseq)  36[ms] (0.036[s])
	 Lap 4(MakeSubseq ~ SketchSort)  13[ms] (0.013[s])
	 Lap 5(SketchSort ~ MakeCluster)  6[ms] (0.006[s])
	 Lap 6(MakeCluster ~ CalcFreqEnrich)  4[ms] (0.004[s])
	 Lap 7(CalcFreqEnrich ~ CalcSubseqScore)  14[ms] (0.014[s])
	 Lap 8(CalcSubseqScore ~ CalcClusterScore)  21[ms] (0.021[s])
	 Lap 9(CalcClusterScore ~ CalcSeqScore)  12[ms] (0.012[s])
	 Lap 10(CalcSeqScore ~ ExportCSV)  	 FinalLap (ExportCSV ~ Finish)  320[ns] (0.32[µs])
Elapsed time is :
	335[ms] (0.335[s])
===========================================

Installation

Compiling from source

Manual

Basic usage
The parameter file
Result viewer (under construction)

Documents

Parameter File Template

Clone this wiki locally