Class: PavementConditionIndex::CdvIteration
- Inherits:
-
Object
- Object
- PavementConditionIndex::CdvIteration
- Defined in:
- lib/pavement_condition_index/cdv_iteration.rb
Instance Attribute Summary collapse
-
#deduct_values ⇒ Object
readonly
Returns the value of attribute deduct_values.
-
#q ⇒ Object
readonly
Returns the value of attribute q.
Instance Method Summary collapse
- #adjusted_deduct_values ⇒ Object
- #corrected_deduct_value ⇒ Object
-
#initialize(deduct_values:, pavement_type:, q:) ⇒ CdvIteration
constructor
A new instance of CdvIteration.
- #total_deduct_value ⇒ Object
Constructor Details
#initialize(deduct_values:, pavement_type:, q:) ⇒ CdvIteration
Returns a new instance of CdvIteration.
6 7 8 9 10 |
# File 'lib/pavement_condition_index/cdv_iteration.rb', line 6 def initialize(deduct_values: ,pavement_type: ,q: ) @deduct_values = deduct_values @q = q @pavement_type = pavement_type end |
Instance Attribute Details
#deduct_values ⇒ Object (readonly)
Returns the value of attribute deduct_values.
4 5 6 |
# File 'lib/pavement_condition_index/cdv_iteration.rb', line 4 def deduct_values @deduct_values end |
#q ⇒ Object (readonly)
Returns the value of attribute q.
4 5 6 |
# File 'lib/pavement_condition_index/cdv_iteration.rb', line 4 def q @q end |
Instance Method Details
#adjusted_deduct_values ⇒ Object
12 13 14 15 16 17 18 19 |
# File 'lib/pavement_condition_index/cdv_iteration.rb', line 12 def adjusted_deduct_values @adjusted_deduct_values ||= begin c = @deduct_values.clone a = c.shift(@q) a += c.map {|dv| [dv,2.0].min } a end end |
#corrected_deduct_value ⇒ Object
25 26 27 |
# File 'lib/pavement_condition_index/cdv_iteration.rb', line 25 def corrected_deduct_value @corrected_deduct_value ||= PavementConditionIndex::Lookups::CorrectedDeductValues.new(pavement_type: @pavement_type, q: @q).call(total_deduct_value) end |
#total_deduct_value ⇒ Object
21 22 23 |
# File 'lib/pavement_condition_index/cdv_iteration.rb', line 21 def total_deduct_value @total_deduct_value ||= adjusted_deduct_values.reduce(:+) end |