Skip to content

Centrifuge

Solids / liquid centrifuge (disk-stack / decanter / tubular). Splits the inlet between a Heavy (concentrate / cake) outlet and a Light (clarified) outlet with a recovery-to-heavy fraction r_i (0 to 1) per compound. With UserFractions (default) every r_i is a user input. With SigmaTheory the particulate compounds (cells, debris, solids) get r_i from the Sigma theory: Stokes settling velocity v_g(d) = d^2 (rho_p - rho_L) g / (18 mu), grade efficiency G(d) = min(1, v_g(d) Sigma_ef / Q), with Sigma_ef = eta Sigma and the cut size d50 at Q = 2 v_g(d50) Sigma_ef, integrated over a log-normal mass distribution of particle size (Ambler 1952; Svarovsky 2000; Maybury et al. 2000; Harrison et al. 2015). The liquid carried with the solids keeps the user fractions.

DWSIM.UnitOperations.UnitOperations.UnitOp_Centrifuge
Assembly DWSIM.UnitOperations.dll · Object ← BaseClass ← UnitOpBaseClass ← UnitOp_Centrifuge

At a glance

Centrifuge in the example flowsheet

Port Index Connected in the example
Inlet, material 0 Beer
Outlet, material 0 Yeast cream
Outlet, material 1 Clarified beer

Example

This code runs on every build of this site, and the output below is what it printed.

fs = (Flowsheet.Create("CentrifugeExample")
      .WithCompounds("Water", "Ethanol", "Glucose", "Biomass_Yeast_Scerevisiae")
      .WithPropertyPackage(PropertyPackages.NRTL))

beer = (fs.AddMaterialStream("Beer")
        .At(Q.Celsius(30.0), Q.Bar(2.0))
        .SetCompoundMassFlow("Water", 4.45)                     # kg/s
        .SetCompoundMassFlow("Ethanol", 0.45)
        .SetCompoundMassFlow("Glucose", 0.01)
        .SetCompoundMassFlow("Biomass_Yeast_Scerevisiae", 0.09))
cream = fs.AddMaterialStream("Yeast cream")
clarified = fs.AddMaterialStream("Clarified beer")

cf = (fs.AddCentrifuge("CF-1")
      .WithTechnology(CentrifugeType.DiskStack)
      .WithBowlSpeedRpm(6500.0)
      .WithSigmaFactorM2(12000.0)
      .WithDefaultRecoveryToHeavy(0.08)        # share of every liquid that leaves with the cream
      .WithRecoveryToHeavy("Biomass_Yeast_Scerevisiae", 0.98)
      .ConnectFeed(beer, 0)
      .ConnectProduct(cream, 0)                # heavy phase
      .ConnectProduct(clarified, 1))           # light phase

fs.AutoLayout()
fs.Solve()

yeast_in = beer.Object.Phases[0].Compounds["Biomass_Yeast_Scerevisiae"].MassFlow
yeast_cream = cream.Object.Phases[0].Compounds["Biomass_Yeast_Scerevisiae"].MassFlow
etoh_cream = cream.Object.Phases[0].Compounds["Ethanol"].MassFlow
print(f"Cream flow          = {cream.MassFlowKgPerSecond * 3600.0:.0f} kg/h")
print(f"Yeast in cream      = {yeast_cream / cream.MassFlowKgPerSecond * 100.0:.1f} wt %")
print(f"Yeast recovery      = {yeast_cream / yeast_in * 100.0:.1f} %")
print(f"Clarified beer flow = {clarified.MassFlowKgPerSecond * 3600.0:.0f} kg/h")
print(f"Ethanol lost        = {etoh_cream * 3600.0:.1f} kg/h")

Output

Cream flow          = 1732 kg/h
Yeast in cream      = 18.3 wt %
Yeast recovery      = 98.0 %
Clarified beer flow = 16268 kg/h
Ethanol lost        = 129.6 kg/h

DWSIM 10.2.11.0, generated 2026-10-08.

Calculation modes

Set with RecoveryModel (CentrifugeRecoveryModel). The mode decides which properties are inputs; every other one is a result and is overwritten by the calculation.

Mode Value What it does Inputs
UserFractions 0 Every compound goes to the Heavy outlet in the fraction the user gives (RecoveryToHeavy, or DefaultRecoveryToHeavy). Technology, Bowl Speed, Sigma Factor, Default Recovery To Heavy, Recovery Model
SigmaTheory 1 The particulate compounds follow the Sigma theory (Ambler 1952): Stokes settling against the throughput over an effective settling area, integrated over a log-normal particle size distribution. The other compounds keep the user fractions. Technology, Bowl Speed, Sigma Factor, Default Recovery To Heavy, Recovery Model, Reference Bowl Speed, Sigma Efficiency, Number of Discs, Disc Angle, Outer Radius, Inner Radius, Bowl Length

Properties

IDs accepted by GetPropertyValue, SetPropertyValue, the sensitivity analysis, the optimizer, the Adjust block and dynamic events. Units are SI; pass another unit system to GetPropertyValue to get them converted.

ID Name Unit (SI) Input in
Technology - all modes
Bowl Speed rpm all modes
Sigma Factor m2 all modes
Default Recovery To Heavy - all modes
Recovery Model - all modes
Reference Bowl Speed rpm SigmaTheory
Sigma Efficiency - SigmaTheory
Number of Discs - SigmaTheory
Disc Angle deg SigmaTheory
Outer Radius m SigmaTheory
Inner Radius m SigmaTheory
Bowl Length m SigmaTheory
Feed Mass Flow kg/s result
Heavy Mass Flow kg/s result
Light Mass Flow kg/s result
Solids Recovery - result
Sigma at Bowl Speed m2 result
Effective Sigma m2 result
Liquid Volumetric Flow m3/s result
Liquid Density kg/m3 result
Liquid Viscosity Pa.s result
Recovery to Heavy: Water - result
Recovery to Heavy: Ethanol - result
Recovery to Heavy: Glucose - result
Recovery to Heavy: Biomass_Yeast_Scerevisiae - result

Learn more

API members

Public members declared by this class. Inherited members are documented on the base classes.

Constructors

UnitOp_Centrifuge(): Initializes a new default instance of the UnitOp_Centrifuge class.

Initializes a new default instance of the UnitOp_Centrifuge class.

public UnitOp_Centrifuge()
Public Sub New()

UnitOp_Centrifuge(string, string): Initializes a new instance of the UnitOp_Centrifuge class with a name and description.

Initializes a new instance of the UnitOp_Centrifuge class with a name and description.

Parameter Type Description
name String The name of this unit operation.
description String A brief description of this unit operation.
public UnitOp_Centrifuge(string name, string description)
Public Sub New(name As String, description As String)

Properties

BowlLength_m: Gets or sets the length of the cylindrical bowl, in m, for Sigma from the geometry of a tubular or decanter bowl.

Gets or sets the length of the cylindrical bowl, in m, for Sigma from the geometry of a tubular or decanter bowl. Default 0 (no geometry).

public double BowlLength_m { get; set; }
Public Property BowlLength_m As Double

BowlSpeed_rpm: Gets or sets the bowl rotational speed, in rpm.

Gets or sets the bowl rotational speed, in rpm. Default 6000 rpm. Informational with UserFractions. With SigmaTheory Sigma scales with the square of the speed: through the geometry when it is given, or relative to ReferenceBowlSpeed_rpm otherwise. Setting this property directly does not move the reference speed; ChangeBowlSpeed (used by the editors and by SetPropertyValue("Bowl Speed")) does.

public double BowlSpeed_rpm { get; set; }
Public Property BowlSpeed_rpm As Double

ComponentDescription: Gets or sets the display description for this unit operation.

Gets or sets the display description for this unit operation.

public override string ComponentDescription { get; set; }
Public Overrides Property ComponentDescription As String

ComponentName: Gets or sets the display name for this unit operation.

Gets or sets the display name for this unit operation.

public override string ComponentName { get; set; }
Public Overrides Property ComponentName As String

DefaultRecoveryToHeavy: Gets or sets the fraction (0 to 1) of each compound sent to the Heavy outlet when the compound has no entry in...

Gets or sets the fraction (0 to 1) of each compound sent to the Heavy outlet when the compound has no entry in RecoveryToHeavy. Default 0.05.

public double DefaultRecoveryToHeavy { get; set; }
Public Property DefaultRecoveryToHeavy As Double

DiscAngle_deg: Gets or sets the disc half-cone angle, in degrees, measured from the axis of rotation.

Gets or sets the disc half-cone angle, in degrees, measured from the axis of rotation. Default 40 degrees. Used only with the disk-stack geometry.

public double DiscAngle_deg { get; set; }
Public Property DiscAngle_deg As Double

InnerRadius_m: Gets or sets the inner radius, in m: the disc inner radius of a disk stack, or the liquid surface (weir) radius of a...

Gets or sets the inner radius, in m: the disc inner radius of a disk stack, or the liquid surface (weir) radius of a tubular or decanter bowl. Default 0.

public double InnerRadius_m { get; set; }
Public Property InnerRadius_m As Double

IsBio: Gets a value that marks this unit operation as a bioprocess unit.

Gets a value that marks this unit operation as a bioprocess unit. The object palettes read this flag by reflection to list it in the Biochemical group.

public bool IsBio { get; }
Public ReadOnly Property IsBio As Boolean

MobileCompatible: Gets a value indicating whether this unit operation is compatible with mobile interfaces.

Gets a value indicating whether this unit operation is compatible with mobile interfaces. Always False.

public override bool MobileCompatible { get; }
Public Overrides ReadOnly Property MobileCompatible As Boolean

NumberOfDiscs: Gets or sets the number of discs of a disk-stack bowl, for Sigma from the geometry.

Gets or sets the number of discs of a disk-stack bowl, for Sigma from the geometry. Default 0 (Sigma from SigmaFactor_m2).

public int NumberOfDiscs { get; set; }
Public Property NumberOfDiscs As Integer

ObjectClass: Gets or sets the simulation object class category (always Separators).

Gets or sets the simulation object class category (always Separators).

public override SimulationObjectClass ObjectClass { get; set; }
Public Overrides Property ObjectClass As SimulationObjectClass

OuterRadius_m: Gets or sets the outer radius, in m: the disc outer radius of a disk stack, or the bowl wall radius of a tubular or...

Gets or sets the outer radius, in m: the disc outer radius of a disk stack, or the bowl wall radius of a tubular or decanter bowl. Default 0 (no geometry).

public double OuterRadius_m { get; set; }
Public Property OuterRadius_m As Double

ParticleDensity_kgm3: Gets or sets the particle density, in kg/m3, per compound name.

Gets or sets the particle density, in kg/m3, per compound name. A compound with no entry takes the solid density of the compound, or 1100 kg/m3 (a wet cell) when the compound has none.

public Dictionary<string, double> ParticleDensity_kgm3 { get; set; }
Public Property ParticleDensity_kgm3 As Dictionary(Of String, Double)

ParticleMedianDiameter_um: Gets or sets the mass median particle diameter d50, in micrometres, per compound name, for the Sigma theory.

Gets or sets the mass median particle diameter d50, in micrometres, per compound name, for the Sigma theory. A compound with no entry takes the default for its kind (see ParticleDefaults); an entry of 0 marks the compound as not particulate.

public Dictionary<string, double> ParticleMedianDiameter_um { get; set; }
Public Property ParticleMedianDiameter_um As Dictionary(Of String, Double)

ParticleSizeSpread: Gets or sets the geometric standard deviation sigma_g (1 or more) of the log-normal particle size distribution, per...

Gets or sets the geometric standard deviation sigma_g (1 or more) of the log-normal particle size distribution, per compound name. 1 is a monodisperse population. A compound with no entry takes the default for its kind.

public Dictionary<string, double> ParticleSizeSpread { get; set; }
Public Property ParticleSizeSpread As Dictionary(Of String, Double)

RecoveryModel: Gets or sets how the recovery to the Heavy outlet is found: UserFractions (0, default, every fraction is an input)...

Gets or sets how the recovery to the Heavy outlet is found: UserFractions (0, default, every fraction is an input) or SigmaTheory (1, the particulate compounds follow the Sigma theory).

public CentrifugeRecoveryModel RecoveryModel { get; set; }
Public Property RecoveryModel As CentrifugeRecoveryModel

RecoveryToHeavy: Gets or sets the per-compound fraction (0 to 1) of the feed mass sent to the Heavy (concentrate) outlet, keyed by...

Gets or sets the per-compound fraction (0 to 1) of the feed mass sent to the Heavy (concentrate) outlet, keyed by compound name. The remainder goes to the Light (clarified) outlet.

public Dictionary<string, double> RecoveryToHeavy { get; set; }
Public Property RecoveryToHeavy As Dictionary(Of String, Double)

ReferenceBowlSpeed_rpm: Gets or sets the bowl speed, in rpm, at which SigmaFactor_m2 was given.

Gets or sets the bowl speed, in rpm, at which SigmaFactor_m2 was given. Default 0: Sigma applies at the current bowl speed. ChangeBowlSpeed sets it to the old speed the first time the speed changes, so that Sigma then scales with (N / N_ref)^2.

public double ReferenceBowlSpeed_rpm { get; set; }
Public Property ReferenceBowlSpeed_rpm As Double

Result_CutSize_um: Gets or sets the cut size d50 of the grade efficiency curve, in micrometres, per particulate compound (Sigma theory...

Gets or sets the cut size d50 of the grade efficiency curve, in micrometres, per particulate compound (Sigma theory only): the diameter recovered at 50 %, Q = 2 v_g(d50) Sigma_ef. A compound whose particles are not denser than the liquid has no entry (it does not settle, recovery 0).

public Dictionary<string, double> Result_CutSize_um { get; set; }
Public Property Result_CutSize_um As Dictionary(Of String, Double)

Result_FeedMass_kgs: Gets or sets the calculated feed mass flow, in kg/s.

Gets or sets the calculated feed mass flow, in kg/s.

public double Result_FeedMass_kgs { get; set; }
Public Property Result_FeedMass_kgs As Double

Result_HeavyMass_kgs: Gets or sets the calculated Heavy (concentrate) outlet mass flow, in kg/s.

Gets or sets the calculated Heavy (concentrate) outlet mass flow, in kg/s.

public double Result_HeavyMass_kgs { get; set; }
Public Property Result_HeavyMass_kgs As Double

Result_LightMass_kgs: Gets or sets the calculated Light (clarified) outlet mass flow, in kg/s.

Gets or sets the calculated Light (clarified) outlet mass flow, in kg/s.

public double Result_LightMass_kgs { get; set; }
Public Property Result_LightMass_kgs As Double

Result_LiquidDensity_kgm3: Gets or sets the density of the feed liquid phase, in kg/m3 (Sigma theory only).

Gets or sets the density of the feed liquid phase, in kg/m3 (Sigma theory only).

public double Result_LiquidDensity_kgm3 { get; set; }
Public Property Result_LiquidDensity_kgm3 As Double

Result_LiquidFlow_m3s: Gets or sets the volumetric flow of the feed liquid phase, the throughput Q, in m3/s (Sigma theory only).

Gets or sets the volumetric flow of the feed liquid phase, the throughput Q, in m3/s (Sigma theory only).

public double Result_LiquidFlow_m3s { get; set; }
Public Property Result_LiquidFlow_m3s As Double

Result_LiquidViscosity_Pas: Gets or sets the viscosity of the feed liquid phase, in Pa.s (Sigma theory only).

Gets or sets the viscosity of the feed liquid phase, in Pa.s (Sigma theory only).

public double Result_LiquidViscosity_Pas { get; set; }
Public Property Result_LiquidViscosity_Pas As Double

Result_Recovery: Gets or sets the fraction (0 to 1) of each compound sent to the Heavy outlet in the last calculation, keyed by...

Gets or sets the fraction (0 to 1) of each compound sent to the Heavy outlet in the last calculation, keyed by compound name.

public Dictionary<string, double> Result_Recovery { get; set; }
Public Property Result_Recovery As Dictionary(Of String, Double)

Result_Sigma_m2: Gets or sets the Sigma at the bowl speed, in m2, before the efficiency (Sigma theory only).

Gets or sets the Sigma at the bowl speed, in m2, before the efficiency (Sigma theory only).

public double Result_Sigma_m2 { get; set; }
Public Property Result_Sigma_m2 As Double

Result_SigmaEffective_m2: Gets or sets the effective Sigma, eta Sigma, in m2 (Sigma theory only).

Gets or sets the effective Sigma, eta Sigma, in m2 (Sigma theory only).

public double Result_SigmaEffective_m2 { get; set; }
Public Property Result_SigmaEffective_m2 As Double

Result_SigmaEfficiency: Gets or sets the Sigma efficiency eta used in the calculation (Sigma theory only).

Gets or sets the Sigma efficiency eta used in the calculation (Sigma theory only).

public double Result_SigmaEfficiency { get; set; }
Public Property Result_SigmaEfficiency As Double

Result_SigmaFromGeometry: Gets or sets whether the Sigma came from the bowl geometry (Sigma theory only).

Gets or sets whether the Sigma came from the bowl geometry (Sigma theory only).

public bool Result_SigmaFromGeometry { get; set; }
Public Property Result_SigmaFromGeometry As Boolean

Result_SolidsRecovery: Gets or sets the calculated solids recovery (0 to 1).

Gets or sets the calculated solids recovery (0 to 1). With UserFractions: the fraction of the compounds with molecular weight above 10000 g/mol that goes to the Heavy outlet. With SigmaTheory: the fraction of the particulate compounds that goes to the Heavy outlet. Zero when no such compound is present.

public double Result_SolidsRecovery { get; set; }
Public Property Result_SolidsRecovery As Double

SigmaEfficiency: Gets or sets the Sigma efficiency eta (0 to 1) that turns the theoretical Sigma into the effective one, Sigma_ef =...

Gets or sets the Sigma efficiency eta (0 to 1) that turns the theoretical Sigma into the effective one, Sigma_ef = eta Sigma. Default 0: the value for the technology (tubular 0.90, decanter 0.60, disk stack 0.55; Svarovsky 2000).

public double SigmaEfficiency { get; set; }
Public Property SigmaEfficiency As Double

SigmaFactor_m2: Gets or sets the sigma factor (equivalent settling area), in m2, at...

Gets or sets the sigma factor (equivalent settling area), in m2, at ReferenceBowlSpeed_rpm (at the bowl speed when the reference is 0). Default 1000 m2. Informational with UserFractions; not used when the geometry gives Sigma.

public double SigmaFactor_m2 { get; set; }
Public Property SigmaFactor_m2 As Double

SupportsDynamicMode: Gets a value indicating whether this unit operation supports dynamic simulation mode.

Gets a value indicating whether this unit operation supports dynamic simulation mode. Always False.

public override bool SupportsDynamicMode { get; }
Public Overrides ReadOnly Property SupportsDynamicMode As Boolean

Technology: Gets or sets the centrifuge type: DiskStack (0, default), Decanter (1) or Tubular (2).

Gets or sets the centrifuge type: DiskStack (0, default), Decanter (1) or Tubular (2). With UserFractions it is informational. With SigmaTheory it sets the default Sigma efficiency (see SigmaEfficiency) and the geometry formula for Sigma.

public CentrifugeType Technology { get; set; }
Public Property Technology As CentrifugeType

Methods

Calculate(object): Calculates the object.

Calculates the object.

Parameter Type Description
args Object
public override void Calculate(object args = null)
Public Overrides Sub Calculate(args As Object = Nothing)

ChangeBowlSpeed(double): Changes the bowl speed.

Changes the bowl speed. When ReferenceBowlSpeed_rpm is 0 the old speed becomes the reference first, so that SigmaFactor_m2 stays the Sigma at the speed it was given and the Sigma at the new speed scales with (N / N_ref)^2.

Parameter Type Description
rpm Double The new bowl speed, in rpm.
public void ChangeBowlSpeed(double rpm)
Public Sub ChangeBowlSpeed(rpm As Double)

CloneXML(): Creates a deep copy of this object by round-tripping through XML serialization.

Creates a deep copy of this object by round-tripping through XML serialization.

public override object CloneXML()
Public Overrides Function CloneXML() As Object

CloseEditForm(): Closes the editor of this object, if it is open.

Closes the editor of this object, if it is open.

public override void CloseEditForm()
Public Overrides Sub CloseEditForm()

CriticalDiameter_m(double, double, double, double): Returns the smallest particle diameter recovered completely, d_c, in m, from v_g(d_c) Sigma_ef = Q with the Stokes...

Returns the smallest particle diameter recovered completely, d_c, in m, from v_g(d_c) Sigma_ef = Q with the Stokes settling velocity v_g(d) = d^2 delta_rho g / (18 mu): d_c = sqrt(18 mu Q / (delta_rho g Sigma_ef)). The cut size d50 is d_c / sqrt(2).

Parameter Type Description
flow_m3s Double The throughput Q, in m3/s.
viscosity_Pas Double The liquid viscosity, in Pa.s.
densityDifference_kgm3 Double The particle density minus the liquid density, in kg/m3.
effectiveSigma_m2 Double The effective Sigma, in m2.
public static double CriticalDiameter_m(double flow_m3s, double viscosity_Pas, double densityDifference_kgm3, double effectiveSigma_m2)
Public Shared Function CriticalDiameter_m(flow_m3s As Double, viscosity_Pas As Double, densityDifference_kgm3 As Double, effectiveSigma_m2 As Double) As Double

DeCalculate(): Decalculates the object.

Decalculates the object.

public override void DeCalculate()
Public Overrides Sub DeCalculate()

DisplayEditForm(): Opens the editor of this object.

Opens the editor of this object. A host that has no editor for it does nothing.

public override void DisplayEditForm()
Public Overrides Sub DisplayEditForm()

EffectiveSigmaEfficiency(): Returns the Sigma efficiency the calculation uses: SigmaEfficiency when it is positive (at most...

Returns the Sigma efficiency the calculation uses: SigmaEfficiency when it is positive (at most 1), otherwise the value for the Technology.

public double EffectiveSigmaEfficiency()
Public Function EffectiveSigmaEfficiency() As Double

GeometrySigma(): Returns the theoretical Sigma, in m2, from the bowl geometry at the bowl speed, or 0 when the geometry is incomplete.

Returns the theoretical Sigma, in m2, from the bowl geometry at the bowl speed, or 0 when the geometry is incomplete. Disk stack (Ambler 1952): Sigma = 2 pi n omega^2 (r2^3 - r1^3) / (3 g tan(theta)), with n NumberOfDiscs, r2 OuterRadius_m, r1 InnerRadius_m and theta DiscAngle_deg. Tubular and decanter: Sigma = pi L omega^2 (3 r2^2 + r1^2) / (2 g), with L BowlLength_m, r2 the bowl wall radius and r1 the liquid surface radius; for a decanter this is the cylindrical section only (the cone is left out).

public double GeometrySigma()
Public Function GeometrySigma() As Double

GetDisplayDescription(): Returns the description string for this unit operation type.

Returns the description string for this unit operation type.

public override string GetDisplayDescription()
Public Overrides Function GetDisplayDescription() As String

GetDisplayName(): Returns the display name for this unit operation type.

Returns the display name for this unit operation type.

public override string GetDisplayName()
Public Overrides Function GetDisplayName() As String

GetIconBitmapBytes(): Returns the raw bytes of the icon image for this unit operation.

Returns the raw bytes of the icon image for this unit operation.

public override byte[] GetIconBitmapBytes()
Public Overrides Function GetIconBitmapBytes() As Byte()

GetProperties(PropertyType): Get a list of all properties of the object.

Get a list of all properties of the object.

Parameter Type Description
proptype PropertyType Type of the property.
public override string[] GetProperties(PropertyType proptype)
Public Overrides Function GetProperties(proptype As PropertyType) As String()

GetPropertyUnit(string, IUnitsOfMeasure): Gets the units of a property.

Gets the units of a property.

Parameter Type Description
prop String Property identifier.
su IUnitsOfMeasure Units system to use. Null to use the default (SI) system.
public override string GetPropertyUnit(string prop, IUnitsOfMeasure su = null)
Public Overrides Function GetPropertyUnit(prop As String, su As IUnitsOfMeasure = Nothing) As String

GetPropertyValue(string, IUnitsOfMeasure): Returns the value of a named property, converting from SI to the current unit system.

Returns the value of a named property, converting from SI to the current unit system. Falls back to extra properties if the property is not found in the base implementation.

Parameter Type Description
prop String The property identifier string.
su IUnitsOfMeasure Optional units-of-measure system used for conversion; uses the shared SI system when Nothing.
public override object GetPropertyValue(string prop, IUnitsOfMeasure su = null)
Public Overrides Function GetPropertyValue(prop As String, su As IUnitsOfMeasure = Nothing) As Object

GetReport(IUnitsOfMeasure, CultureInfo, string): Generates a plain-text results report for this unit operation.

Generates a plain-text results report for this unit operation.

Parameter Type Description
su IUnitsOfMeasure The unit system used for formatting output values (not used; values are reported in fixed units).
ci CultureInfo The culture info used for number formatting.
numberformat String A .NET numeric format string (e.g. "G6") applied to output values.
public override string GetReport(IUnitsOfMeasure su, CultureInfo ci, string numberformat)
Public Overrides Function GetReport(su As IUnitsOfMeasure, ci As CultureInfo, numberformat As String) As String

LogNormalRecovery(double, double, double): Returns the recovery (0 to 1) of a log-normal particle population under the Sigma grade efficiency G(d) = min(1, (d...

Returns the recovery (0 to 1) of a log-normal particle population under the Sigma grade efficiency G(d) = min(1, (d / d_c)^2). Closed form of the integral of G over the mass distribution, with s = ln(sigma_g): R = (d_m / d_c)^2 exp(2 s^2) Phi((ln(d_c / d_m) - 2 s^2) / s) + 1 - Phi(ln(d_c / d_m) / s). A monodisperse population (sigma_g = 1) gives G(d_m).

Parameter Type Description
medianDiameter Double The mass median diameter d_m of the population.
spread Double The geometric standard deviation sigma_g (1 or more).
criticalDiameter Double The diameter recovered completely, d_c, in the same unit as medianDiameter.
public static double LogNormalRecovery(double medianDiameter, double spread, double criticalDiameter)
Public Shared Function LogNormalRecovery(medianDiameter As Double, spread As Double, criticalDiameter As Double) As Double

ParticleDefaults(ICompoundConstantProperties): Returns the default particle size of a compound for the Sigma theory: the mass median diameter d50 (micrometres)...

Returns the default particle size of a compound for the Sigma theory: the mass median diameter d50 (micrometres), the geometric standard deviation sigma_g and where the values come from. Cell debris (name contains "debris") 1 um, 1.8. Biomass by kind (the compound BiomassType, or its name): yeast 5 um, 1.5; bacteria 1 um, 1.4; mammalian cells 15 um, 1.3; microalgae 5 um, 1.6; activated sludge flocs 50 um, 2.0; other biomass 3 um, 1.6. Compounds flagged as solids 10 um, 2.0. Any other compound gets d50 = 0: it is not particulate and keeps its user fraction.

Parameter Type Description
compound ICompoundConstantProperties The compound.
public static (double Diameter_um, double Spread, string Source) ParticleDefaults(ICompoundConstantProperties compound)
Public Shared Function ParticleDefaults(compound As ICompoundConstantProperties) As (Diameter_um As Double, Spread As Double, Source As String)

ParticleFor(ICompoundConstantProperties): Returns the particle data the Sigma theory uses for a compound: the entries in...

Returns the particle data the Sigma theory uses for a compound: the entries in ParticleMedianDiameter_um, ParticleSizeSpread and ParticleDensity_kgm3, or the defaults (ParticleDefaults; the solid density of the compound, or 1100 kg/m3).

Parameter Type Description
compound ICompoundConstantProperties The compound.
public (double Diameter_um, double Spread, double Density_kgm3) ParticleFor(ICompoundConstantProperties compound)
Public Function ParticleFor(compound As ICompoundConstantProperties) As (Diameter_um As Double, Spread As Double, Density_kgm3 As Double)

RecoveryFor(string): Returns the fraction of a compound sent to the Heavy outlet: its entry in RecoveryToHeavy, or...

Returns the fraction of a compound sent to the Heavy outlet: its entry in RecoveryToHeavy, or DefaultRecoveryToHeavy when it has none, clamped to 0 to 1.

Parameter Type Description
compName String The compound name.
public double RecoveryFor(string compName)
Public Function RecoveryFor(compName As String) As Double

SetPropertyValue(string, object, IUnitsOfMeasure): Sets the value of a property.

Sets the value of a property.

Parameter Type Description
prop String Property identifier.
propval Object Property value to set at the specified units.
su IUnitsOfMeasure Units system to use. Null to use the default (SI) system.
public override bool SetPropertyValue(string prop, object propval, IUnitsOfMeasure su = null)
Public Overrides Function SetPropertyValue(prop As String, propval As Object, su As IUnitsOfMeasure = Nothing) As Boolean

SigmaAtBowlSpeed(): Returns the theoretical Sigma at the bowl speed, in m2: from the geometry when it is complete...

Returns the theoretical Sigma at the bowl speed, in m2: from the geometry when it is complete (GeometrySigma), otherwise SigmaFactor_m2 times (BowlSpeed_rpm / ReferenceBowlSpeed_rpm)^2, with no scaling when the reference speed is 0.

public double SigmaAtBowlSpeed()
Public Function SigmaAtBowlSpeed() As Double

TechnologySigmaEfficiency(CentrifugeType): Returns the Sigma efficiency eta of a centrifuge type (Svarovsky 2000): tubular 0.90, decanter 0.60, disk stack 0.55.

Returns the Sigma efficiency eta of a centrifuge type (Svarovsky 2000): tubular 0.90, decanter 0.60, disk stack 0.55.

Parameter Type Description
type CentrifugeType The centrifuge type.
public static double TechnologySigmaEfficiency(CentrifugeType type)
Public Shared Function TechnologySigmaEfficiency(type As CentrifugeType) As Double

UpdateEditForm(): Redraws the editor of this object with the current values, if it is open.

Redraws the editor of this object with the current values, if it is open.

public override void UpdateEditForm()
Public Overrides Sub UpdateEditForm()

Fields

f: The classic (WinForms) editor window open for this unit operation, if any.

The classic (WinForms) editor window open for this unit operation, if any. Not saved with the flowsheet.

public object f
Public f As Object