code: def flow_swamee(Diam, HeadLossFric, Length, Nu, PipeRough):
      
      #Checking input validity
      ut.check_range([Diam, ">0", "Diameter"], [Length, ">0", "Length"],
                     [HeadLossFric, ">0", "Headloss due to friction"],
                     [Nu, ">0", "Nu"], [PipeRough, "0-1", "Pipe roughness"])
      logterm = np.log10(PipeRough / (3.7 * Diam)
                         + 2.51 * Nu * np.sqrt(Length / (2 * gravity.magnitude
                                                           * HeadLossFric
                                                           * Diam**3)
                                                )
                         )
      return ((-np.pi / np.sqrt(2)) * Diam**(5/2) * logterm
              * np.sqrt(gravity.magnitude * HeadLossFric / Length)
              )
docs: Return the flow rate for turbulent flow with only major losses.