Sha256: 261533463256df7f2ec2ba910d8901337b771e64839442a9ab1d1eb10073dc01

Contents?: true

Size: 894 Bytes

Versions: 1

Compression:

Stored size: 894 Bytes

Contents

require_relative 'reactor'

module Eulim
  module Chemical
    module Reactors
      # This class is for cst reactors
      class ContinuousStirredTankReactor < Reactor
        def initialize(args = {})
          super args
        end

        def find_volume
          # accumulation is zero
          compound_formula = @reaction.rate_equation.split(' ').first.split('r').last
          ci = @input[:substance].species[compound_formula]
          co = @output[:substance].species[compound_formula]
          input = @input[:quantity] * ci[:weight_percent] /
                  (100 * ci[:compound].molar_mass)
          output = @output[:quantity] * co[:weight_percent] /
                   (100 * co[:compound].molar_mass)
          x = (input - output) / input
        end

        def self.humanized_name
          'Continuous stirred-tank reactor'
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
eulim-0.0.17 lib/eulim/chemical/reactors/continuous_stirred_tank_reactor.rb