def get_yield(self, efm_id, in_m_id, out_m_id): r_is = [self.r_id2i[r_id] for r_id in self.r_ids] return get_yield(self.N[:, r_is], self.V[r_is, self.efm_id2i[efm_id]], self.m_id2i[out_m_id], self.m_id2i[in_m_id])
def test_yield_no_out_metabolite(self): N = model2stoichiometric_matrix(self.model, self.s_id2i, self.r_id2i) V = get_efm_matrix([{'r1': 10, 'r2': 10, 'r3': 10}, {'r1': 10, 'r3': 10, 'r4': 10, 'r6': 10}], self.r_id2i) y = get_yield(N, V[:, 0], out_m_index=self.s_id2i['m3_b'], in_m_index=self.s_id2i['m1_b']) self.assertEqual(0, y, 'Yield of m3_b with respect to m1_b in EFM 0 was supposed to be 0, got %g instead.' % y)