docs: def differential_pressure_meter_C_epsilon(D, D2, m, P1, P2, rho, mu, k, 
                                            meter_type, taps=None):
      r'''Calculates the discharge coefficient and expansibility of a flow
      meter given the mass flow rate, the upstream pressure, the second
      pressure value, and the orifice diameter for a differential
      pressure flow meter based on the geometry of the meter, measured pressures 
      of the meter, and the density, viscosity, and isentropic exponent of the 
      fluid. 
      
      Parameters
      ----------
      D : float
          Upstream internal pipe diameter, [m]
      D2 : float
          Diameter of orifice, or venturi meter orifice, or flow tube orifice,
          or cone meter end diameter, or wedge meter fluid flow height, [m]
      m : float
          Mass flow rate of fluid through the flow meter, [kg/s]
      P1 : float
          Static pressure of fluid upstream of differential pressure meter at the
          cross-section of the pressure tap, [Pa]
      P2 : float
          Static pressure of fluid downstream of differential pressure meter or 
          at the prescribed location (varies by type of meter) [Pa]
      rho : float
          Density of fluid at `P1`, [kg/m^3]
      mu : float
          Viscosity of fluid at `P1`, [Pa*s]
      k : float
          Isentropic exponent of fluid, [-]
      meter_type : str
          One of ('ISO 5167 orifice', 'long radius nozzle', 'ISA 1932 nozzle', 
          'venuri nozzle', 'as cast convergent venturi tube', 
          'machined convergent venturi tube', 
          'rough welded convergent venturi tube', 'cone meter',
          'wedge meter'), [-]
      taps : str, optional
          The orientation of the taps; one of 'corner', 'flange', 'D', or 'D/2';
          applies for orifice meters only, [-]
          
      Returns
      -------
      C : float
          Coefficient of discharge of the specified flow meter type at the
          specified conditions, [-]
      expansibility : float
          Expansibility factor (1 for incompressible fluids, less than 1 for
          real fluids), [-]
  
      Notes
      -----
      This function should be called by an outer loop when solving for a 
      variable.
      
      Examples
      --------
      >>> differential_pressure_meter_C_epsilon(D=0.07366, D2=0.05, P1=200000.0, 
      ... P2=183000.0, rho=999.1, mu=0.0011, k=1.33, m=7.702338035732168,
      ... meter_type='ISO 5167 orifice', taps='D')
      (0.6151252900244296, 0.9711026966676307)
      '''
      if meter_type == ISO_5167_ORIFICE:
          C = C_Reader_Harris_Gallagher(D, D2, rho, mu, m, taps)
          epsilon = orifice_expansibility(D, D2, P1, P2, k)
      elif meter_type == LONG_RADIUS_NOZZLE:
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P2, k=k)
          C = C_long_radius_nozzle(D=D, Do=D2, rho=rho, mu=mu, m=m)
      elif meter_type == ISA_1932_NOZZLE:
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P2, k=k)
          C = C_ISA_1932_nozzle(D=D, Do=D2, rho=rho, mu=mu, m=m)
      elif meter_type == VENTURI_NOZZLE:
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P2, k=k)
          C = C_venturi_nozzle(D=D, Do=D2)     
      
      elif meter_type == AS_CAST_VENTURI_TUBE:
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P2, k=k)
          C = AS_CAST_VENTURI_TUBE_C    
      elif meter_type == MACHINED_CONVERGENT_VENTURI_TUBE:
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P2, k=k)
          C = MACHINED_CONVERGENT_VENTURI_TUBE_C
      elif meter_type == ROUGH_WELDED_CONVERGENT_VENTURI_TUBE:
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P2, k=k)
          C = ROUGH_WELDED_CONVERGENT_VENTURI_TUBE_C
          
      elif meter_type == CONE_METER:
          epsilon = cone_meter_expansibility_Stewart(D=D, Dc=D2, P1=P1, P2=P2, k=k)
          C = CONE_METER_C
      elif meter_type == WEDGE_METER:
          beta = diameter_ratio_wedge_meter(D=D, H=D2)
          epsilon = nozzle_expansibility(D=D, Do=D2, P1=P1, P2=P1, k=k, beta=beta)
          C = C_wedge_meter_ISO_5167_6_2017(D=D, H=D2)
      return C, epsilon