Floc Model
- class aguaclara.research.floc_model.Material(name, diameter, density, molecWeight)[source]
A particulate material with a name, diameter, density, and molecular weight.
- class aguaclara.research.floc_model.Chemical(name, diameter, density, molecWeight, Precipitate, AluminumMPM=None)[source]
A chemical with a name, diameter, density, molecular weight, number of aluminum atoms per molecule, and a precipitate.
- __init__(name, diameter, density, molecWeight, Precipitate, AluminumMPM=None)[source]
Initialize a Chemical object.
- Parameters:
name (string) – Name of the material
diameter (length) – Diameter of the material in particulate form
density (mass/length**3) – Density of the material
molecWeight (mass/mole) – Molecular weight of the material
Precipitate (string) – Name of the precipitate
AluminumMPM (int) – aluminum atoms per molecule
This file contains functions which can be used to model the behavior of flocs based on the chemical interactions of clay, coagulant, and humic acid.
- aguaclara.research.floc_model.Clay = <aguaclara.research.floc_model.Material object>
A Material representing clay with a diameter of 7e-6 m and density of 2650 kg/m^3.
- aguaclara.research.floc_model.PACl = <aguaclara.research.floc_model.Chemical object>
A Material representing polyaluminum chloride (PACl) with a diameter of 9e-8m, density of 1138 kg/m^2, and molecular weight of 1.039 kg/mol. It is its own precipitate.
- aguaclara.research.floc_model.Alum = <aguaclara.research.floc_model.Chemical object>
A Material representing alum with a diameter of 7e-8 m, density of 2420 kg/m^3, and molecular weight of 0.59921 kg/mol. It’s precipitate is AlOH3, with the same diameter and density, and a molecular weight of 0.078 kg/mol.
- aguaclara.research.floc_model.HumicAcid = <aguaclara.research.floc_model.Chemical object>
A Material representing humic acid with a diameter of 7.2e-8 m and density of 1780 kg/m^3. It is its own precipitate.
- aguaclara.research.floc_model.DIM_FRACTAL = 2.3
Fractal dimension, based on data from published in Environmental Engineering Science, “Fractal Models for Floc Density, Sedimentation Velocity, and Floc Volume Fraction for High Peclet Number Reactors” by Monroe Weber-Shirk and Leonard Lion (2015).
- aguaclara.research.floc_model.RATIO_HEIGHT_DIAM = 0.1
Ratio of clay platelet height to diameter.
- aguaclara.research.floc_model.RATIO_KOLMOGOROV = 50
Ratio between inner viscous length scale and Kolmogorov length scale.
- aguaclara.research.floc_model.PHI_FLOC = 1.875
Shape factor for drag on flocs used in terminal velocity equation.
- aguaclara.research.floc_model.NUM_AVOGADRO = 6.0221414999999996e+23
The Avogadro constant.
- aguaclara.research.floc_model.MOLEC_WEIGHT_ALUMINUM = <Quantity(0.027, 'kilogram / mole')>
Molecular weight of aluminum in kg/mole.
- aguaclara.research.floc_model.dens_alum_nanocluster(coag)[source]
Return the density of the aluminum in the nanocluster.
This is useful for determining the volume of nanoclusters given a concentration of aluminum.
- aguaclara.research.floc_model.dens_pacl_solution(ConcAluminum, temp)[source]
Return the density of the PACl solution.
From Stock Tank Mixing report Fall 2013: https://confluence.cornell.edu/download/attachments/137953883/20131213_Research_Report.pdf
- aguaclara.research.floc_model.conc_precipitate(ConcAluminum, coag)[source]
Return coagulant precipitate concentration given aluminum dose.
This function assumes complete precipitation of coagulant into Al13.
Note that conc_precipitate returns a value that varies from the equivalent MathCAD function beginning at the third decimal place. The majority of functions below this point in the file ultimately call on conc_precipitate at some point, and will not return the same value as their equivalent function in MathCAD. This is known.
- Parameters:
ConcAluminum (float) – Concentration of aluminum in solution
coag (floc_model.Material) – Type of coagulant in solution, e.g. floc_model.PACl
- Returns:
Concentration of coagulant precipitates
- Return type:
- aguaclara.research.floc_model.conc_floc(ConcAluminum, concClay, coag)[source]
Return floc density given aluminum dose, turbidity, and coagulant
- aguaclara.research.floc_model.moles_aluminum(ConcAluminum)[source]
Return the # of moles aluminum given aluminum concentration.
- aguaclara.research.floc_model.sep_dist_aluminum(ConcAluminum)[source]
Return the separation distance between aluminum molecules.
- aguaclara.research.floc_model.particle_number_concentration(ConcMat, material)[source]
Return the number of particles in suspension.
- Parameters:
ConcMat (float) – Concentration of the material
material (floc_model.Material) – The material in solution
- aguaclara.research.floc_model.sep_dist_clay(ConcClay, material)[source]
Return the separation distance between clay particles.
- aguaclara.research.floc_model.num_nanoclusters(ConcAluminum, coag)[source]
Return the number of Aluminum nanoclusters.
- aguaclara.research.floc_model.frac_vol_floc_initial(ConcAluminum, ConcClay, coag, material)[source]
Return the volume fraction of flocs initially present, accounting for both suspended particles and coagulant precipitates.
- Parameters:
ConcAluminum (float) – Concentration of aluminum in solution
ConcClay (float) – Concentration of particle in suspension
coag (float) – Type of coagulant in solution
material (floc_model.Material) – Type of particles in suspension, e.g. floc_model.Clay
- Returns:
Volume fraction of particles initially present
- Return type:
- aguaclara.research.floc_model.diam_fractal(DIM_FRACTAL, DiamInitial, NumCol)[source]
Return the diameter of a floc given NumCol doubling collisions.
- aguaclara.research.floc_model.num_coll_reqd(DIM_FRACTAL, material, DiamTarget)[source]
Return the number of doubling collisions required.
Calculates the number of doubling collisions required to produce a floc of diameter DiamTarget.
- aguaclara.research.floc_model.sep_dist_floc(ConcAluminum, ConcClay, coag, material, DIM_FRACTAL, DiamTarget)[source]
Return separation distance as a function of floc size.
- aguaclara.research.floc_model.frac_vol_floc(ConcAluminum, ConcClay, coag, DIM_FRACTAL, material, DiamTarget)[source]
Return the floc volume fraction.
- aguaclara.research.floc_model.dens_floc_init(ConcAluminum, ConcClay, coag, material)[source]
Return the density of the initial floc.
Initial floc is made primarily of the primary colloid and nanoglobs.
- aguaclara.research.floc_model.ratio_clay_sphere(RatioHeightDiameter)[source]
Return the surface area to volume ratio for clay.
Normalized by surface area to volume ratio for a sphere.
- aguaclara.research.floc_model.ratio_area_clay_total(ConcClay, material, DiamTube, RatioHeightDiameter)[source]
Return the surface area of clay normalized by total surface area.
Total surface area is a combination of clay and reactor wall surface areas. This function is used to estimate how much coagulant actually goes to the clay.
- Parameters:
ConcClay (float) – Concentration of clay in suspension
material (floc_model.Material) – Type of clay in suspension, e.g. floc_model.Clay
DiamTube (float) – Diameter of flocculator tube (assumes tube flocculator for calculation of reactor surface area)
RatioHeightDiameter (float) – Dimensionless ratio describing ratio of clay height to clay diameter
- Returns:
The ratio of clay surface area to total available surface area (accounting for reactor walls)
- Return type:
- aguaclara.research.floc_model.gamma_coag(ConcClay, ConcAluminum, coag, material, DiamTube, RatioHeightDiameter)[source]
Return the coverage of clay with nanoglobs.
This function accounts for loss to the tube flocculator walls and a poisson distribution on the clay given random hits by the nanoglobs. The poisson distribution results in the coverage only gradually approaching full coverage as coagulant dose increases.
- Parameters:
ConcClay (float) – Concentration of clay in suspension
ConcAluminum (float) – Concentration of aluminum in solution
coag (floc_model.Material) – Type of coagulant in solution, e.g. floc_model.PACl
material (floc_model.Material) – Type of clay in suspension, e.g. floc_model.Clay
DiamTube (float) – Diameter of flocculator tube (assumes tube flocculator for calculation of reactor surface area)
RatioHeightDiameter (float) – Dimensionless ratio of clay height to clay diameter
- Returns:
Fraction of the clay surface area that is coated with coagulant precipitates
- Return type:
- aguaclara.research.floc_model.gamma_humic_acid_to_coag(ConcAl, ConcNatOrgMat, NatOrgMat, coag)[source]
Return the fraction of the coagulant that is coated with humic acid.
- Parameters:
ConcAl (float) – Concentration of alumninum in solution
ConcNatOrgMat (float) – Concentration of natural organic matter in solution
NatOrgMat (floc_model.Material) – type of natural organic matter, e.g. floc_model.HumicAcid
coag (floc_model.Material) – Type of coagulant in solution, e.g. floc_model.PACl
- Returns:
fraction of the coagulant that is coated with humic acid
- Return type:
- aguaclara.research.floc_model.pacl_term(DiamTube, ConcClay, ConcAl, ConcNatOrgMat, NatOrgMat, coag, material, RatioHeightDiameter)[source]
Return the fraction of the surface area that is covered with coagulant that is not covered with humic acid.
- Parameters:
DiamTube – Diameter of the dosing tube
ConcClay (float) – Concentration of clay in solution
ConcAl (float) – Concentration of alumninum in solution
ConcNatOrgMat (float) – Concentration of natural organic matter in solution
NatOrgMat (floc_model.Material) – type of natural organic matter, e.g. floc_model.HumicAcid
coag (floc_model.Material) – Type of coagulant in solution, e.g. floc_model.PACl
material (floc_model.Material) – Type of clay in suspension, e.g. floc_model.Clay
RatioHeightDiameter (float) – Dimensionless ratio of clay height to clay diameter
- Returns:
fraction of the surface area that is covered with coagulant that is not covered with humic acid
- Return type:
- aguaclara.research.floc_model.dens_floc(ConcAl, ConcClay, DIM_FRACTAL, DiamTarget, coag, material, Temp)[source]
Calculate floc density as a function of size.
- aguaclara.research.floc_model.vel_term_floc(ConcAl, ConcClay, coag, material, DIM_FRACTAL, DiamTarget, Temp)[source]
Calculate floc terminal velocity.
- aguaclara.research.floc_model.diam_floc_vel_term(ConcAl, ConcClay, coag, material, DIM_FRACTAL, VelTerm, Temp)[source]
Calculate floc diamter as a function of terminal velocity.
- aguaclara.research.floc_model.time_col_laminar(EnergyDis, Temp, ConcAl, ConcClay, coag, material, DiamTarget, DiamTube, DIM_FRACTAL, RatioHeightDiameter)[source]
Calculate single collision time for laminar flow mediated collisions.
Calculated as a function of floc size.
- aguaclara.research.floc_model.time_col_turbulent(EnergyDis, ConcAl, ConcClay, coag, material, DiamTarget, DIM_FRACTAL)[source]
Calculate single collision time for turbulent flow mediated collisions.
Calculated as a function of floc size.
- aguaclara.research.floc_model.diam_kolmogorov(EnergyDis, Temp, ConcAl, ConcClay, coag, material, DIM_FRACTAL)[source]
Return the size of the floc with separation distances equal to the Kolmogorov length and the inner viscous length scale.
- aguaclara.research.floc_model.diam_floc_max(epsMax)[source]
Deprecated since version 0.1.13: diam_floc_max is deprecated and will be removed after Dec 1 2019. The underlying equation is under suspicion.
Return floc size as a function of energy dissipation rate.
Based on Ian Tse’s work with floc size as a function of energy dissipation rate. This is for the average energy dissipation rate in a tube flocculator. It isn’t clear how to convert this to the turbulent flow case. Maybe the flocs are mostly experiencing viscous shear. But that isn’t clear. Some authors have made the case that floc breakup is due to viscous effects. If that is the case, then the results from the tube flocculator should be applicable to the turbulent case. We will have to account for the temporal and spatial variability in the turbulent energy dissipation rate. The factor of 95 μm is based on the assumption that the ratio of the max to average energy dissipation rate for laminar flow is approximately 2.
- aguaclara.research.floc_model.ener_dis_diam_floc(Diam)[source]
Deprecated since version 0.1.13: ener_dis_diam_floc is deprecated and will be removed after Dec 1 2019. The underlying equation is under suspicion.
Return max energy dissipation rate as a function of max floc diameter.
- aguaclara.research.floc_model.dean_number(PlantFlow, IDTube, RadiusCoil, Temp)[source]
Return the Dean Number.
The Dean Number is a dimensionless parameter that is the unfortunate combination of Reynolds and tube curvature. It would have been better to keep the Reynolds number and define a simple dimensionless geometric parameter.
- aguaclara.research.floc_model.g_coil(FlowPlant, IDTube, RadiusCoil, Temp)[source]
We need a reference for this.
Karen’s thesis likely has this equation and the reference.