docs: def Chen_Friedel(m, x, rhol, rhog, mul, mug, sigma, D, roughness=0, L=1):
      r'''Calculates two-phase pressure drop with the Chen modification of the
      Friedel correlation, as given in [1]_ and also shown in [2]_ and [3]_.
  
      .. math::
          \Delta P = \Delta P_{Friedel}\Omega
  
      For Bo < 2.5:
  
      .. math::
          \Omega = \frac{0.0333Re_{lo}^{0.45}}{Re_g^{0.09}(1 + 0.4\exp(-Bo))}
  
      For Bo >= 2.5:
  
      .. math::
          \Omega = \frac{We^{0.2}}{2.5 + 0.06Bo}
  
      Parameters
      ----------
      m : float
          Mass flow rate of fluid, [kg/s]
      x : float
          Quality of fluid, [-]
      rhol : float
          Liquid density, [kg/m^3]
      rhog : float
          Gas density, [kg/m^3]
      mul : float
          Viscosity of liquid, [Pa*s]
      mug : float
          Viscosity of gas, [Pa*s]
      sigma : float
          Surface tension, [N/m]
      D : float
          Diameter of pipe, [m]
      roughness : float, optional
          Roughness of pipe for use in calculating friction factor, [m]
      L : float, optional
          Length of pipe, [m]
  
      Returns
      -------
      dP : float
          Pressure drop of the two-phase flow, [Pa]
  
      Notes
      -----
      Applicable ONLY to mini/microchannels; yields drastically too low
      pressure drops for larger channels. For more details, see the `Friedel`
      correlation.
  
      It is not explicitly stated in [1]_ how to calculate the liquid mixture
      density for use in calculation of Weber number; the homogeneous model is
      assumed as it is used in the Friedel model.
  
      The bond number used here is 1/4 the normal value,  i.e.:
  
      .. math::
          Bo = \frac{g(\rho_l-\rho_g)D^2}{4\sigma}
  
      Examples
      --------
      >>> Chen_Friedel(m=.0005, x=0.9, rhol=950., rhog=1.4, mul=1E-3, mug=1E-5,
      ... sigma=0.02, D=0.003, roughness=0, L=1)
      6249.247540588871
  
      References
      ----------
      .. [1] Chen, Ing Youn, Kai-Shing Yang, Yu-Juei Chang, and Chi-Chung Wang.
         "Two-Phase Pressure Drop of Air–water and R-410A in Small Horizontal
         Tubes." International Journal of Multiphase Flow 27, no. 7 (July 2001):
         1293-99. doi:10.1016/S0301-9322(01)00004-0.
      .. [2] Kim, Sung-Min, and Issam Mudawar. "Universal Approach to Predicting
         Two-Phase Frictional Pressure Drop for Adiabatic and Condensing Mini/
         Micro-Channel Flows." International Journal of Heat and Mass Transfer
         55, no. 11–12 (May 2012): 3246-61.
         doi:10.1016/j.ijheatmasstransfer.2012.02.047.
      .. [3] Choi, Kwang-Il, A. S. Pamitran, Chun-Young Oh, and Jong-Taek Oh.
         "Two-Phase Pressure Drop of R-410A in Horizontal Smooth Minichannels."
         International Journal of Refrigeration 31, no. 1 (January 2008): 119-29.
         doi:10.1016/j.ijrefrig.2007.06.006.
      '''
      # Liquid-only properties, for calculation of E, dP_lo
      v_lo = m/rhol/(pi/4*D**2)
      Re_lo = Reynolds(V=v_lo, rho=rhol, mu=mul, D=D)
      fd_lo = friction_factor(Re=Re_lo, eD=roughness/D)
      dP_lo = fd_lo*L/D*(0.5*rhol*v_lo**2)
  
      # Gas-only properties, for calculation of E
      v_go = m/rhog/(pi/4*D**2)
      Re_go = Reynolds(V=v_go, rho=rhog, mu=mug, D=D)
      fd_go = friction_factor(Re=Re_go, eD=roughness/D)
  
      F = x**0.78*(1-x)**0.224
      H = (rhol/rhog)**0.91*(mug/mul)**0.19*(1 - mug/mul)**0.7
      E = (1-x)**2 + x**2*(rhol*fd_go/(rhog*fd_lo))
  
      # Homogeneous properties, for Froude/Weber numbers
      rho_h = 1./(x/rhog + (1-x)/rhol)
      Q_h = m/rho_h
      v_h = Q_h/(pi/4*D**2)
  
      Fr = Froude(V=v_h, L=D, squared=True) # checked with (m/(pi/4*D**2))**2/g/D/rho_h**2
      We = Weber(V=v_h, L=D, rho=rho_h, sigma=sigma) # checked with (m/(pi/4*D**2))**2*D/sigma/rho_h
  
      phi_lo2 = E + 3.24*F*H/(Fr**0.0454*We**0.035)
  
      dP = phi_lo2*dP_lo
  
      # Chen modification; Weber number is the same as above
      # Weber is same
      Bo = Bond(rhol=rhol, rhog=rhog, sigma=sigma, L=D)/4 # Custom definition
  
      if Bo < 2.5:
          # Actual gas flow, needed for this case only.
          v_g = m*x/rhog/(pi/4*D**2)
          Re_g = Reynolds(V=v_g, rho=rhog, mu=mug, D=D)
          Omega = 0.0333*Re_lo**0.45/(Re_g**0.09*(1 + 0.5*exp(-Bo)))
      else:
          Omega = We**0.2/(2.5 + 0.06*Bo)
      return dP*Omega