docs: def gas_liquid_viscosity(x, mul, mug, rhol=None, rhog=None, Method=None, 
                           AvailableMethods=False):
      r'''This function handles the calculation of two-phase liquid-gas viscosity.
      Six calculation methods are available; three of them require only `x`, 
      `mul`, and `mug`; the other three require `rhol` and `rhog` as well. 
      
      The 'McAdams' method will be used if no method is specified.
      The full list of correlation can be obtained with the `AvailableMethods` 
      flag.
      
      **ALL OF THESE METHODS ARE ONLY SUGGESTED DEFINITIONS, POTENTIALLY 
      USEFUL FOR EMPIRICAL WORK ONLY!**
  
      Parameters
      ----------
      x : float
          Quality of fluid, [-]
      mul : float
          Viscosity of liquid, [Pa*s]
      mug : float
          Viscosity of gas, [Pa*s]
      rhol : float, optional
          Liquid density, [kg/m^3]
      rhog : float, optional
          Gas density, [kg/m^3]
  
      Returns
      -------
      mu_lg : float
          Liquid-gas viscosity (**a suggested definition, potentially useful
          for empirical work only!**) [Pa*s]
      methods : list, only returned if AvailableMethods == True
          List of methods which can be used to calculate two-phase liquid-gas
          viscosity with the given inputs.
  
      Other Parameters
      ----------------
      Method : string, optional
          A string of the function name to use, as in the dictionary
          liquid_gas_viscosity_correlations.
      AvailableMethods : bool, optional
          If True, function will consider which methods which can be used to
          calculate two-phase liquid-gas viscosity with the given inputs and 
          return them as a list instead of performing a calculation.
  
      Notes
      -----
      All of these models converge to the liquid or gas viscosity as the quality
      approaches either limits. Other definitions have been proposed, such as
      using only liquid viscosity.
      
      These values cannot just be plugged into single phase correlations!
      
      Examples
      --------
      >>> gas_liquid_viscosity(x=0.4, mul=1E-3, mug=1E-5, rhol=850, rhog=1.2, Method='Duckler')
      1.2092040385066917e-05
      >>> gas_liquid_viscosity(x=0.4, mul=1E-3, mug=1E-5)
      2.4630541871921184e-05
      '''
      def list_methods():
          methods = ['McAdams', 'Cicchitti', 'Lin Kwok']
          if rhol is not None and rhog is not None:
              methods = list(liquid_gas_viscosity_correlations.keys())
          return methods
      if AvailableMethods:
          return list_methods()
      if not Method:
          Method = 'McAdams'
  
      if Method in liquid_gas_viscosity_correlations:
          f, i = liquid_gas_viscosity_correlations[Method]
          if i == 0:
              return f(x, mul, mug)
          elif i == 1:
              return f(x, mul, mug, rhol=rhol, rhog=rhog)
      else:
          raise Exception('Method not recognized; available methods are %s' %list(liquid_gas_viscosity_correlations.keys()))