def test_config(): m = ConcreteModel() m.fs = FlowsheetBlock(default={"dynamic": False}) m.fs.properties = PhysicalParameterTestBlock() m.fs.reactions = ReactionParameterTestBlock(default={ "property_package": m.fs.properties}) m.fs.unit = CSTR(default={"property_package": m.fs.properties, "reaction_package": m.fs.reactions}) # Check unit config arguments assert len(m.fs.unit.config) == 14 assert m.fs.unit.config.material_balance_type == \ MaterialBalanceType.useDefault assert m.fs.unit.config.energy_balance_type == \ EnergyBalanceType.useDefault assert m.fs.unit.config.momentum_balance_type == \ MomentumBalanceType.pressureTotal assert not m.fs.unit.config.has_heat_transfer assert not m.fs.unit.config.has_pressure_change assert not m.fs.unit.config.has_equilibrium_reactions assert not m.fs.unit.config.has_phase_equilibrium assert not m.fs.unit.config.has_heat_of_reaction assert m.fs.unit.config.property_package is m.fs.properties assert m.fs.unit.config.reaction_package is m.fs.reactions
def sapon(self): m = ConcreteModel() m.fs = FlowsheetBlock(default={"dynamic": False}) m.fs.properties = SaponificationParameterBlock() m.fs.reactions = SaponificationReactionParameterBlock(default={ "property_package": m.fs.properties}) m.fs.unit = CSTR(default={"property_package": m.fs.properties, "reaction_package": m.fs.reactions, "has_equilibrium_reactions": False, "has_heat_transfer": True, "has_heat_of_reaction": True, "has_pressure_change": True}) m.fs.unit.inlet.flow_vol.fix(1.0e-03) m.fs.unit.inlet.conc_mol_comp[0, "H2O"].fix(55388.0) m.fs.unit.inlet.conc_mol_comp[0, "NaOH"].fix(100.0) m.fs.unit.inlet.conc_mol_comp[0, "EthylAcetate"].fix(100.0) m.fs.unit.inlet.conc_mol_comp[0, "SodiumAcetate"].fix(0.0) m.fs.unit.inlet.conc_mol_comp[0, "Ethanol"].fix(0.0) m.fs.unit.inlet.temperature.fix(303.15) m.fs.unit.inlet.pressure.fix(101325.0) m.fs.unit.volume.fix(1.5e-03) m.fs.unit.heat_duty.fix(0) m.fs.unit.deltaP.fix(0) return m
def sapon(self): m = ConcreteModel() m.fs = FlowsheetBlock(default={"dynamic": False}) m.fs.properties = SaponificationParameterBlock() m.fs.reactions = SaponificationReactionParameterBlock( default={"property_package": m.fs.properties}) m.fs.unit = CSTR( default={ "property_package": m.fs.properties, "reaction_package": m.fs.reactions, "has_equilibrium_reactions": False, "has_heat_transfer": True, "has_heat_of_reaction": True, "has_pressure_change": True }) return m