class Bio::Sim4
The sim4 execution wrapper class.
Attributes
last command-line strings executed by the object
default file name of database(‘seq2’)
options
last result text (String)
name of the program (usually ‘sim4’ in UNIX)
last result. Returns a Bio::Sim4::Report
object.
Public Class Methods
Creates a new sim4 execution wrapper object.
program
-
Program name. Usually ‘sim4’ in UNIX.
database
-
Default file name of database(‘seq2’).
option
-
Options (array of strings).
# File lib/bio/appl/sim4.rb 32 def initialize(program = 'sim4', database = nil, opt = []) 33 @program = program 34 @options = opt 35 @database = database #seq2 36 @command = nil 37 @output = nil 38 @report = nil 39 end
Public Instance Methods
Executes the sim4 program. Perform mRNA-genome alignment between sequences in given files. filename1
and filename2
should be file name strings. If filename2
is not specified, using self.database
.
# File lib/bio/appl/sim4.rb 109 def exec_local(filename1, filename2 = nil) 110 @command = [ @program, filename1, (filename2 or @database), *@options ] 111 @output = nil 112 @report = nil 113 Bio::Command.call_command(@command) do |io| 114 io.close_write 115 @output = io.read 116 @report = Bio::Sim4::Report.new(@output) 117 end 118 @report 119 end
log is deprecated (no replacement) and returns empty string.
# File lib/bio/appl/sim4.rb 65 def log 66 warn "log is deprecated (no replacement) and returns empty string." 67 '' 68 end
option is deprecated. Instead, please use options.
# File lib/bio/appl/sim4.rb 51 def option 52 warn "option is deprecated. Please use options." 53 options 54 end
Executes the sim4 program. seq1
shall be a Bio::Sequence
object. Returns a Bio::Sim4::Report
object.
# File lib/bio/appl/sim4.rb 79 def query(seq1) 80 tf = Tempfile.open('sim4') 81 tf.print seq1.to_fasta('seq1', 70) 82 tf.close(false) 83 r = exec_local(tf.path) 84 tf.close(true) 85 r 86 end
Executes the sim4 program. Perform mRNA-genome alignment between given sequences. seq1
and seq2
should be Bio::Sequence
objects. Returns a Bio::Sim4::Report
object.
# File lib/bio/appl/sim4.rb 92 def query_pairwise(seq1, seq2) 93 tf = Tempfile.open('sim4') 94 tf.print seq1.to_fasta('seq1', 70) 95 tf.close(false) 96 tf2 = Tempfile.open('seq2') 97 tf2.print seq1.to_fasta('seq2', 70) 98 tf2.close(false) 99 r = exec_local(tf.path, tf2.path) 100 tf.close(true) 101 tf2.close(true) 102 r 103 end