Class EnzymeTreatment

All Implemented Interfaces:
Serializable, Runnable, ProcessEquipmentInterface, TwoPortInterface, ProcessElementInterface, SimulationInterface, NamedInterface

public class EnzymeTreatment extends StirredTankReactor
Enzyme treatment reactor for bio-processing.

Models an enzymatic hydrolysis or treatment process. This is a specialized StirredTankReactor optimized for enzyme-catalyzed reactions, typically operating at mild temperatures (30-60°C), near-neutral pH, and atmospheric pressure.

Common applications:

  • Cellulose hydrolysis (cellulase enzymes)
  • Starch saccharification (amylase, glucoamylase)
  • Protein hydrolysis (protease enzymes)
  • Fat splitting (lipase enzymes)
  • Lactose hydrolysis (lactase)

Usage example:

EnzymeTreatment hydrolysis = new EnzymeTreatment("Saccharification", feedStream);
hydrolysis.setReactorTemperature(273.15 + 50.0); // 50 C, typical for cellulase
hydrolysis.setResidenceTime(72.0, "hr");
hydrolysis.setEnzymeLoading(20.0); // mg enzyme per g substrate
hydrolysis.setEnzymeType("cellulase");

// Define the hydrolysis reaction
StoichiometricReaction celluloseHydrolysis = new StoichiometricReaction("CelluloseHydrolysis");
celluloseHydrolysis.addReactant("cellulose", 1.0);
celluloseHydrolysis.addProduct("glucose", 1.0);
celluloseHydrolysis.addProduct("water", -1.0);
celluloseHydrolysis.setLimitingReactant("cellulose");
celluloseHydrolysis.setConversion(0.80);

hydrolysis.addReaction(celluloseHydrolysis);
hydrolysis.run();
Version:
1.0
Author:
NeqSim team
See Also:
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      Serialization version UID.
      See Also:
    • enzymeLoading

      private double enzymeLoading
      Enzyme loading in mg enzyme per g substrate.
    • enzymeType

      private String enzymeType
      Type/name of enzyme used.
    • optimalPH

      private double optimalPH
      Optimal pH for the enzyme.
    • optimalTemperatureK

      private double optimalTemperatureK
      Optimal temperature for the enzyme in Kelvin.
    • temperatureSensitivity

      private double temperatureSensitivity
      Temperature sensitivity: relative activity reduction per degree from optimal.
    • enzymeHalfLife

      private double enzymeHalfLife
      Enzyme half-life at operating conditions in hours.
    • enzymeCostPerKg

      private double enzymeCostPerKg
      Enzyme cost in $/kg.
  • Constructor Details

    • EnzymeTreatment

      public EnzymeTreatment(String name)
      Constructor for EnzymeTreatment.
      Parameters:
      name - name of the enzyme treatment unit
    • EnzymeTreatment

      public EnzymeTreatment(String name, StreamInterface inletStream)
      Constructor for EnzymeTreatment with inlet stream.
      Parameters:
      name - name of the enzyme treatment unit
      inletStream - the feed stream
  • Method Details

    • setEnzymeLoading

      public void setEnzymeLoading(double loading)
      Set the enzyme loading.
      Parameters:
      loading - enzyme loading in mg enzyme per g substrate
    • getEnzymeLoading

      public double getEnzymeLoading()
      Get the enzyme loading.
      Returns:
      enzyme loading in mg/g
    • setEnzymeType

      public void setEnzymeType(String type)
      Set the enzyme type/name.
      Parameters:
      type - enzyme name or type (e.g., "cellulase", "amylase", "protease")
    • getEnzymeType

      public String getEnzymeType()
      Get the enzyme type.
      Returns:
      enzyme type
    • setOptimalPH

      public void setOptimalPH(double pH)
      Set the optimal pH for the enzyme.
      Parameters:
      pH - optimal pH
    • getOptimalPH

      public double getOptimalPH()
      Get the optimal pH.
      Returns:
      optimal pH
    • setOptimalTemperature

      public void setOptimalTemperature(double temperatureK)
      Set the optimal temperature for the enzyme.
      Parameters:
      temperatureK - optimal temperature in Kelvin
    • getOptimalTemperature

      public double getOptimalTemperature()
      Get the optimal temperature.
      Returns:
      optimal temperature in Kelvin
    • setEnzymeHalfLife

      public void setEnzymeHalfLife(double hours)
      Set the enzyme half-life at operating conditions.
      Parameters:
      hours - half-life in hours
    • getEnzymeHalfLife

      public double getEnzymeHalfLife()
      Get the enzyme half-life.
      Returns:
      half-life in hours
    • setEnzymeCostPerKg

      public void setEnzymeCostPerKg(double costPerKg)
      Set the enzyme cost.
      Parameters:
      costPerKg - cost in $/kg enzyme
    • getEnzymeCostPerKg

      public double getEnzymeCostPerKg()
      Get the enzyme cost.
      Returns:
      cost in $/kg
    • getRelativeActivity

      public double getRelativeActivity()
      Calculate the relative enzyme activity based on operating temperature deviation from optimal.
      Returns:
      relative activity (0-1), where 1.0 is at optimal temperature
    • getEnzymeConsumption

      public double getEnzymeConsumption()
      Estimate enzyme consumption in kg/hr based on loading and feed rate.
      Returns:
      enzyme consumption in kg/hr
    • getEnzymeCostPerHour

      public double getEnzymeCostPerHour()
      Estimate hourly enzyme cost.
      Returns:
      enzyme cost in $/hr