docstr: Yield entering edges until none can be found.
docstr_tok: ["Yield","entering","edges","until","none","can","be","found","."]
code: def find_entering_edges(self):
      """Yield entering edges until none can be found."""
      if self.edge_count == 0:
          return
  
      # Entering edges are found by combining Dantzig's rule and Bland's
      # rule. The edges are cyclically grouped into blocks of size B. Within
      # each block, Dantzig's rule is applied to find an entering edge. The
      # blocks to search is determined following Bland's rule.
      B = int(ceil(sqrt(self.edge_count)))  # pivot block size
      M = (
          self.edge_count + B - 1
      ) // B  # number of blocks needed to cover all edges
      m = 0  # number of consecutive blocks without eligible
      # entering edges
      f = 0  # first edge in block
      while m < M:
          # Determine the next block of edges.
          l = f + B
          if l <= self.edge_count:
              edges = range(f, l)
          else:
              l -= self.edge_count
              edges = chain(range(f, self.edge_count), range(l))
          f = l
          # Find the first edge with the lowest reduced cost.
          i = min(edges, key=self.reduced_cost)
          c = self.reduced_cost(i)
          if c >= 0:
              # No entering edge found in the current block.
              m += 1
          else:
              # Entering edge found.
              if self.edge_flow[i] == 0:
                  p = self.edge_sources[i]
                  q = self.edge_targets[i]
              else:
                  p = self.edge_targets[i]
                  q = self.edge_sources[i]
              yield i, p, q
              m = 0
  
imports: from itertools import chain, islice, repeat
  from math import ceil, sqrt
  import networkx
  from networkx.utils import not_implemented_for
label_desc: Use image node_id 13 for calling the _DataEssentialsAndFunctions obj's underlying member method code with example usage: obj.find_entering_edges() without return types