def uch_psri(x, dp, d_pipe, gs, rhog, rhos, ut):
    """
    Choking velocity from PSRI 2016 notebook. Uses MKS units for input
    parameters but returns Uch in ft/s. Function requires SciPy fsolve to solve
    for Uch.

    Parameters
    ----------
    x : float
        Solve for Uch with SciPy fsolve
    dp : float
        Particle size [m]
    d_pipe : float
        Pipe diameter [m]
    gs : float
        Solids mass flux [kg/(s m^2)]
    rhog : float
        Density of gas [kg/m^3]
    rhos : float
        Density of particle [kg/m^3]
    ut : float
        Terminal velocity [m/s]

    Returns
    -------
    uch : float
        Choking velocity [ft/s]

    References
    ----------
    Notebook from PSRI 2016 workshop, pages J-20 and J-72.
    """
    uch = x                     # define variable to solve for
    g = 32.2                    # gravitational constant, ft/s^2
    dp = dp * 3.28084           # convert from m to ft
    d_pipe = d_pipe * 3.28084   # convert from m to ft
    gs = gs * 0.204817303       # convert from kg/(s m^2) to lb/(s ft^2)
    rhog = rhog * 0.062428      # convert from kg/m^3 to lb/ft^3
    rhos = rhos * 0.062428      # convert from kg/m^3 to lb/ft^3
    ut = ut * 3.28084           # convert from m/s to ft/s
    f1 = (uch - ut) / ((g * dp)**0.5) - ((gs / (uch * rhog))**0.35 * (d_pipe / dp)**0.35 * (rhos / rhog)**0.1)
    return f1