docs: def square_edge_grill(alpha, l=None, Dh=None, fd=None):
      r'''Returns the loss coefficient for a square grill or square bar
      screen or perforated plate with squared edges of thickness l, as shown in
      [1]_.
  
      for Dh < l < 50D
  
      .. math::
          K = \frac{0.5(1-\alpha) + (1-\alpha^2)}{\alpha^2}
  
      else:
  
      .. math::
          K = \frac{0.5(1-\alpha) + (1-\alpha^2) + f{l}/D}{\alpha^2}
  
      Parameters
      ----------
      alpha : float
          Fraction of grill open to flow [-]
      l : float, optional
          Thickness of the grill or plate [m]
      Dh : float, optional
          Hydraulic diameter of gap in grill, [m]
      fd : float, optional
          Darcy friction factor [-]
  
      Returns
      -------
      K : float
          Loss coefficient [-]
  
      Notes
      -----
      If l, Dh, or fd is not provided, the first expression is used instead.
      The alteration of the expression to include friction factor is there
      if the grill is long enough to have considerable friction along the
      surface of the grill.
  
      Examples
      --------
      >>> square_edge_grill(.45)
      5.296296296296296
      >>> square_edge_grill(.45, l=.15, Dh=.002, fd=.0185)
      12.148148148148147
  
      References
      ----------
      .. [1] Blevins, Robert D. Applied Fluid Dynamics Handbook. New York, N.Y.:
         Van Nostrand Reinhold Co., 1984.
      '''
      if Dh and l and fd and l > 50*Dh:
          return (0.5*(1-alpha) + (1-alpha**2) + fd*l/Dh)/alpha**2
      else:
          return (0.5*(1-alpha) + (1-alpha**2))/alpha**2