code: def _k_value_tapered_reduction(ent_pipe_id, exit_pipe_id, fitting_angle, re, f):
      
  
      k_value_square_reduction = _k_value_square_reduction(ent_pipe_id, exit_pipe_id,
                                                           re, f)
  
      if 45 < fitting_angle <= 180:
          return k_value_square_reduction * np.sqrt(np.sin(fitting_angle / 2))
      elif 0 < fitting_angle <= 45:
          return k_value_square_reduction * 1.6 * np.sin(fitting_angle / 2)
      else:
          raise ValueError('k_value_tapered_reduction: The reducer angle ('
                           + fitting_angle + ') cannot be outside of [0,180].')
docs: Returns the minor loss coefficient for a tapered reducer.
  
      Parameters:
          ent_pipe_id: Entrance pipe's inner diameter.
          exit_pipe_id: Exit pipe's inner diameter.
          fitting_angle: Fitting angle between entrance and exit pipes.
          re: Reynold's number.
          f: Darcy friction factor.