code: def find_metabolites_not_produced_with_open_bounds(model):
      
      mets_not_produced = list()
      helpers.open_exchanges(model)
      for met in model.metabolites:
          with model:
              exch = model.add_boundary(
                  met, type="irrex", reaction_id="IRREX", lb=0, ub=1000)
              solution = helpers.run_fba(model, exch.id)
              if np.isnan(solution) or solution < TOLERANCE_THRESHOLD:
                  mets_not_produced.append(met)
      return mets_not_produced
docs: Return metabolites that cannot be produced with open exchange reactions.
  
      A perfect model should be able to produce each and every metabolite when
      all medium components are available.
  
      Parameters
      ----------
      model : cobra.Model
          The metabolic model under investigation.
  
      Returns
      -------
      list
          Those metabolites that could not be produced.