def lp7(self, reaction_subset):
if self._zl is None:<EOL><INDENT>self._add_maximization_vars()<EOL><DEDENT>positive = set(reaction_subset) - self._flipped<EOL>negative = set(reaction_subset) & self._flipped<EOL>v = self._v.set(positive)<EOL>zl = self._zl.set(positive)<EOL>cs = self._prob.add_linear_constraints(v >= zl)<EOL>self._temp_constr.extend(cs)<EOL>v = self._v.set(negative)<EOL>zl = self._zl.set(negative)<EOL>cs = self._prob.add_linear_constraints(v <= -zl)<EOL>self._temp_constr.extend(cs)<EOL>self._prob.set_objective(self._zl.sum(reaction_subset))<EOL>self._solve()<EOL>
Approximately maximize the number of reaction with flux.

        This is similar to FBA but approximately maximizing the number of
        reactions in subset with flux > epsilon, instead of just maximizing the
        flux of one particular reaction. LP7 prefers "flux splitting" over
        "flux concentrating".