def Chisholm_voidage(x, rhol, rhog):
    """Calculates void fraction in two-phase flow according to the model of 
    [1]_, as given in [2]_ and [3]_.

    .. math::
        \\alpha = \\left[1 + \\left(\\frac{1-x}{x}\\right)\\left(\\frac{\\rho_g}
        {\\rho_l}\\right)\\sqrt{1 - x\\left(1-\\frac{\\rho_l}{\\rho_g}\\right)}
        \\right]^{-1}
        
    Parameters
    ----------
    x : float
        Quality at the specific tube interval []
    rhol : float
        Density of the liquid [kg/m^3]
    rhog : float
        Density of the gas [kg/m^3]

    Returns
    -------
    alpha : float
        Void fraction (area of gas / total area of channel), [-]

    Notes
    -----
    [1]_ has not been reviewed. However, both [2]_ and [3]_ present it the
    same way.

    Examples
    --------
    >>> Chisholm_voidage(.4, 800, 2.5)
    0.949525900374774

    References
    ----------
    .. [1] Chisholm, D. "Pressure Gradients due to Friction during the Flow of 
       Evaporating Two-Phase Mixtures in Smooth Tubes and Channels." 
       International Journal of Heat and Mass Transfer 16, no. 2 (February 1, 
       1973): 347-58. doi:10.1016/0017-9310(73)90063-X.
    .. [2] Xu, Yu, and Xiande Fang. "Correlations of Void Fraction for Two-
       Phase Refrigerant Flow in Pipes." Applied Thermal Engineering 64, no. 
       1-2 (March 2014): 242–51. doi:10.1016/j.applthermaleng.2013.12.032. 
    .. [3] Dalkilic, A. S., S. Laohalertdecha, and S. Wongwises. "Effect of 
       Void Fraction Models on the Two-Phase Friction Factor of R134a during 
       Condensation in Vertical Downward Flow in a Smooth Tube." International 
       Communications in Heat and Mass Transfer 35, no. 8 (October 2008): 
       921-27. doi:10.1016/j.icheatmasstransfer.2008.04.001.
    """
    S = (1 - x * (1 - rhol / rhog)) ** 0.5
    alpha = (1 + (1 - x) / x * rhog / rhol * S) ** -1
    return alpha
