Exemplo n.º 1
0
def vel_term_floc(ConcAl, ConcClay, coag, material, DIM_FRACTAL, DiamTarget,
                  Temp):
    """Calculate floc terminal velocity."""
    WaterDensity = pc.density_water(Temp).magnitude
    return (((pc.gravity.magnitude * material.Diameter**2) /
             (18 * PHI_FLOC * pc.viscosity_kinematic(Temp).magnitude)) *
            ((dens_floc_init(ConcAl, ConcClay, coag, material).magnitude -
              WaterDensity) / WaterDensity) *
            (DiamTarget / material.Diameter)**(DIM_FRACTAL - 1))
Exemplo n.º 2
0
def diam_floc_vel_term(ConcAl, ConcClay, coag, material, DIM_FRACTAL, VelTerm,
                       Temp):
    """Calculate floc diamter as a function of terminal velocity."""
    WaterDensity = pc.density_water(Temp).magnitude
    return (material.Diameter * (
        ((18 * VelTerm * PHI_FLOC * pc.viscosity_kinematic(Temp).magnitude) /
         (pc.gravity.magnitude * material.Diameter**2)) *
        (WaterDensity /
         (dens_floc_init(ConcAl, ConcClay, coag, material).magnitude -
          WaterDensity)))**(1 / (DIM_FRACTAL - 1)))
Exemplo n.º 3
0
def pc_viscous(EnergyDis, Temp, Time, DiamTube, ConcClay, ConcAl,
               ConcNatOrgMat, NatOrgMat, coag, material, FittingParam,
               RatioHeightDiameter):
    """"""
    return ((3 / 2) * np.log10(
        (2 / 3) * np.pi * FittingParam * Time *
        np.sqrt(EnergyDis / (pc.viscosity_kinematic(Temp).magnitude)) *
        alpha(DiamTube, ConcClay, ConcAl, ConcNatOrgMat, NatOrgMat, coag,
              material, RatioHeightDiameter) * (np.pi / 6)**(2 / 3) *
        (material.Diameter / sep_dist_clay(ConcClay, material).magnitude)**2 +
        1))
Exemplo n.º 4
0
def viscosity_kinematic_pacl(conc_pacl, temp):
    """Return the dynamic viscosity of water at a given temperature.

    If given units, the function will automatically convert to Kelvin.
    If not given units, the function will assume Kelvin.
    This function assumes that the temperature dependence can be explained
    based on the effect on water and that there is no confounding effect from
    the coagulant.
    """
    nu = (1 + (2.383 * 10**-5) *
          conc_pacl**1.893) * pc.viscosity_kinematic(temp).magnitude
    return nu
Exemplo n.º 5
0
def viscosity_kinematic_chem(conc_chem, temp, en_chem):
    """Return the dynamic viscosity of water at a given temperature.

    If given units, the function will automatically convert to Kelvin.
    If not given units, the function will assume Kelvin.
    """
    if en_chem == 0:
        nu = viscosity_kinematic_alum(conc_chem, temp).magnitude
    if en_chem == 1:
        nu = viscosity_kinematic_pacl(conc_chem, temp).magnitude
    if en_chem not in [0, 1]:
        nu = pc.viscosity_kinematic(temp).magnitude
    return nu
Exemplo n.º 6
0
def time_col_laminar(EnergyDis, Temp, ConcAl, ConcClay, coag, material,
                     DiamTarget, DiamTube, DIM_FRACTAL, RatioHeightDiameter):
    """Calculate single collision time for laminar flow mediated collisions.

    Calculated as a function of floc size.
    """
    return ((
        (1 / 6) * ((6 / np.pi)**(1 / 3)) *
        frac_vol_floc_initial(ConcAl, ConcClay, coag, material)**(-2 / 3) *
        (pc.viscosity_kinematic(Temp).magnitude / EnergyDis)**(1 / 2) *
        (DiamTarget / material.Diameter)**(2 * DIM_FRACTAL / 3 - 2)
    )  # End of the numerator
            / (gamma_coag(ConcClay, ConcAl, coag, material, DiamTube,
                          RatioHeightDiameter))  # End of the denominator
            )
Exemplo n.º 7
0
def reynolds_rapid_mix(PlantFlow, IDTube, Temp):
    return (4 * PlantFlow /
            (np.pi * IDTube * pc.viscosity_kinematic(Temp).magnitude))
Exemplo n.º 8
0
def eta_kolmogorov(EnergyDis, Temp):
    return ((pc.viscosity_kinematic(Temp).magnitude**3) / EnergyDis)**(1 / 4)