Class: GeneValidator::LengthClusterValidationOutput
- Inherits:
-
ValidationReport
- Object
- ValidationReport
- GeneValidator::LengthClusterValidationOutput
- Defined in:
- lib/genevalidator/validation_length_cluster.rb
Overview
Class that stores the validation output information
Instance Attribute Summary collapse
-
#limits ⇒ Object
readonly
Returns the value of attribute limits.
-
#query_length ⇒ Object
readonly
Returns the value of attribute query_length.
-
#result ⇒ Object
readonly
Returns the value of attribute result.
Attributes inherited from ValidationReport
#approach, #conclusion, #description, #errors, #expected, #explanation, #header, #message, #plot_files, #run_time, #short_header, #validation_result
Instance Method Summary collapse
- #conclude ⇒ Object
- #explain ⇒ Object
-
#initialize(short_header, header, description, query_length, limits, expected = :yes) ⇒ LengthClusterValidationOutput
constructor
A new instance of LengthClusterValidationOutput.
- #print ⇒ Object
- #validation ⇒ Object
Methods inherited from ValidationReport
Constructor Details
#initialize(short_header, header, description, query_length, limits, expected = :yes) ⇒ LengthClusterValidationOutput
Returns a new instance of LengthClusterValidationOutput.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 16 def initialize(short_header, header, description, query_length, limits, expected = :yes) @short_header, @header, @description = short_header, header, description @limits = limits @query_length = query_length @expected = expected @result = validation @plot_files = [] @approach = 'If the query sequence is well conserved and similar' \ ' sequences (BLAST hits) are correct, we can expect' \ ' query and hit sequences to have similar lengths.' \ ' Here, we cluster the lengths of hit sequences and' \ ' compare the length of our query sequence to the most' \ ' dense cluster of hit lengths. ' @explanation = explain @conclusion = conclude end |
Instance Attribute Details
#limits ⇒ Object (readonly)
Returns the value of attribute limits.
13 14 15 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 13 def limits @limits end |
#query_length ⇒ Object (readonly)
Returns the value of attribute query_length.
12 13 14 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 12 def query_length @query_length end |
#result ⇒ Object (readonly)
Returns the value of attribute result.
14 15 16 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 14 def result @result end |
Instance Method Details
#conclude ⇒ Object
42 43 44 45 46 47 48 49 50 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 42 def conclude if @result == :yes # i.e. if inside the main cluster 'There is no reason to believe there is any problem with the length' \ ' of the query sequence.' else size_diff = (@query_length > @limits[1]) ? 'long' : 'short' "This suggests that the query sequence may be too #{size_diff}." end end |
#explain ⇒ Object
34 35 36 37 38 39 40 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 34 def explain diff = (@result == :yes) ? 'inside' : 'outside' 'The most dense length-cluster of BLAST hits includes' \ " sequences that are from #{@limits[0]} to #{@limits[1]} amino-acids" \ " long. The query sequence is #{@query_length} amino-acids long and" \ " is thus #{diff} the most dense length-cluster of BLAST hits." end |
#print ⇒ Object
52 53 54 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 52 def print "#{@query_length} #{@limits.to_s.gsub(' ', ' ')}" end |
#validation ⇒ Object
56 57 58 59 60 61 62 63 |
# File 'lib/genevalidator/validation_length_cluster.rb', line 56 def validation return if @limits.nil? if @query_length >= @limits[0] && @query_length <= @limits[1] :yes else :no end end |