Class EnzymeTreatment
java.lang.Object
neqsim.util.NamedBaseClass
neqsim.process.SimulationBaseClass
neqsim.process.equipment.ProcessEquipmentBaseClass
neqsim.process.equipment.TwoPortEquipment
neqsim.process.equipment.reactor.StirredTankReactor
neqsim.process.equipment.reactor.EnzymeTreatment
- All Implemented Interfaces:
Serializable, Runnable, ProcessEquipmentInterface, TwoPortInterface, ProcessElementInterface, SimulationInterface, NamedInterface
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 Summary
FieldsModifier and TypeFieldDescriptionprivate doubleEnzyme cost in $/kg.private doubleEnzyme half-life at operating conditions in hours.private doubleEnzyme loading in mg enzyme per g substrate.private StringType/name of enzyme used.private doubleOptimal pH for the enzyme.private doubleOptimal temperature for the enzyme in Kelvin.private static final longSerialization version UID.private doubleTemperature sensitivity: relative activity reduction per degree from optimal.Fields inherited from class TwoPortEquipment
inStream, outStreamFields inherited from class ProcessEquipmentBaseClass
conditionAnalysisMessage, energyStream, hasController, isSolved, properties, reportFields inherited from class SimulationBaseClass
calcIdentifier, calculateSteadyState, timeFields inherited from class NamedBaseClass
name -
Constructor Summary
ConstructorsConstructorDescriptionEnzymeTreatment(String name) Constructor for EnzymeTreatment.EnzymeTreatment(String name, StreamInterface inletStream) Constructor for EnzymeTreatment with inlet stream. -
Method Summary
Modifier and TypeMethodDescriptiondoubleEstimate enzyme consumption in kg/hr based on loading and feed rate.doubleEstimate hourly enzyme cost.doubleGet the enzyme cost.doubleGet the enzyme half-life.doubleGet the enzyme loading.Get the enzyme type.doubleGet the optimal pH.doubleGet the optimal temperature.doubleCalculate the relative enzyme activity based on operating temperature deviation from optimal.voidsetEnzymeCostPerKg(double costPerKg) Set the enzyme cost.voidsetEnzymeHalfLife(double hours) Set the enzyme half-life at operating conditions.voidsetEnzymeLoading(double loading) Set the enzyme loading.voidsetEnzymeType(String type) Set the enzyme type/name.voidsetOptimalPH(double pH) Set the optimal pH for the enzyme.voidsetOptimalTemperature(double temperatureK) Set the optimal temperature for the enzyme.Methods inherited from class StirredTankReactor
addReaction, clearReactions, getAgitatorPower, getAgitatorPowerPerVolume, getHeatDuty, getHeatDuty, getPressureDrop, getReactions, getReactorPressure, getReactorTemperature, getResidenceTime, getVesselVolume, isIsothermal, run, setAgitatorPowerPerVolume, setIsothermal, setPressureDrop, setReactorPressure, setReactorTemperature, setReactorTemperature, setResidenceTime, setVesselVolume, toJsonMethods inherited from class TwoPortEquipment
getInletPressure, getInletStream, getInletStreams, getInletTemperature, getMassBalance, getOutletPressure, getOutletStream, getOutletStreams, getOutletTemperature, setInletPressure, setInletStream, setInletTemperature, setOutletPressure, setOutletPressure, setOutletStream, setOutletTemperature, setOutletTemperature, toJson, validateSetupMethods inherited from class ProcessEquipmentBaseClass
addCapacityConstraint, addController, copy, displayResult, equals, getAvailableMargin, getAvailableMarginPercent, getBottleneckConstraint, getCapacityConstraints, getConditionAnalysisMessage, getConstraintEvaluationReport, getController, getController, getControllers, getEffectiveCapacityFactor, getEnergyStream, getEntropyProduction, getExergyChange, getFailureMode, getMassBalance, getMaxUtilization, getMaxUtilizationPercent, getMechanicalDesign, getMinimumFlow, getPressure, getPressure, getProperty, getReferenceDesignation, getReport_json, getResultTable, getSpecification, getTemperature, getTemperature, getThermoSystem, getUtilizationSummary, hashCode, initElectricalDesign, initializeDefaultConstraints, initInstrumentDesign, initMechanicalDesign, isActive, isActive, isCapacityAnalysisEnabled, isCapacityExceeded, isFailed, isHardLimitExceeded, isNearCapacityLimit, isSetEnergyStream, reportResults, restoreFromFailure, run_step, runConditionAnalysis, setCapacityAnalysisEnabled, setController, setEnergyStream, setEnergyStream, setFailureMode, setFlowValveController, setMinimumFlow, setPressure, setReferenceDesignation, setRegulatorOutSignal, setSpecification, setTemperature, simulateDegradedOperation, simulateTrip, solvedMethods inherited from class SimulationBaseClass
getCalculateSteadyState, getCalculationIdentifier, getTime, increaseTime, isRunInSteps, setCalculateSteadyState, setCalculationIdentifier, setRunInSteps, setTimeMethods inherited from class NamedBaseClass
getName, getTagNumber, setName, setTagNumberMethods inherited from class Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface NamedInterface
getName, getTagName, getTagNumber, setName, setTagName, setTagNumberMethods inherited from interface ProcessEquipmentInterface
getCapacityDuty, getCapacityMax, getElectricalDesign, getEquipmentState, getExergyChange, getExergyDestruction, getExergyDestruction, getFluid, getInstrumentDesign, getOperatingEnvelopeViolation, getOutletFlowRate, getOutletPressure, getOutletTemperature, getReferenceDesignationString, getRestCapacity, getSimulationValidationErrors, isSimulationValid, isWithinOperatingEnvelope, needRecalculationMethods inherited from interface SimulationInterface
getCalculateSteadyState, getCalculationIdentifier, getTime, increaseTime, isRunInSteps, run, run_step, runTransient, runTransient, setCalculateSteadyState, setCalculationIdentifier, setRunInSteps, setTimeMethods inherited from interface TwoPortInterface
getInStream, getOutStream, setOutPressure, setOutPressure, setOutTemperature, setOutTemperature
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerialization version UID.- See Also:
-
enzymeLoading
private double enzymeLoadingEnzyme loading in mg enzyme per g substrate. -
enzymeType
Type/name of enzyme used. -
optimalPH
private double optimalPHOptimal pH for the enzyme. -
optimalTemperatureK
private double optimalTemperatureKOptimal temperature for the enzyme in Kelvin. -
temperatureSensitivity
private double temperatureSensitivityTemperature sensitivity: relative activity reduction per degree from optimal. -
enzymeHalfLife
private double enzymeHalfLifeEnzyme half-life at operating conditions in hours. -
enzymeCostPerKg
private double enzymeCostPerKgEnzyme cost in $/kg.
-
-
Constructor Details
-
EnzymeTreatment
Constructor for EnzymeTreatment.- Parameters:
name- name of the enzyme treatment unit
-
EnzymeTreatment
Constructor for EnzymeTreatment with inlet stream.- Parameters:
name- name of the enzyme treatment unitinletStream- 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
Set the enzyme type/name.- Parameters:
type- enzyme name or type (e.g., "cellulase", "amylase", "protease")
-
getEnzymeType
-
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
-