def test_isValid(self): """Rates isValid should check row sums and neg off-diags""" r = Rates([-2,1,1,0,-1,1,0,0,0], self.abc_pairs) assert r.isValid() r = Rates([0,0,0,0,0,0,0,0,0], self.abc_pairs) assert r.isValid() #not valid if negative off-diagonal r = Rates([-2,-1,3,1,-1,0,2,2,-4], self.abc_pairs) assert not r.isValid() #not valid if rows don't all sum to 0 r = Rates([0,0.0001,0,0,0,0,0,0,0], self.abc_pairs) assert not r.isValid()
def test_isValid(self): """Rates isValid should check row sums and neg off-diags""" r = Rates([-2, 1, 1, 0, -1, 1, 0, 0, 0], self.abc_pairs) assert r.isValid() r = Rates([0, 0, 0, 0, 0, 0, 0, 0, 0], self.abc_pairs) assert r.isValid() #not valid if negative off-diagonal r = Rates([-2, -1, 3, 1, -1, 0, 2, 2, -4], self.abc_pairs) assert not r.isValid() #not valid if rows don't all sum to 0 r = Rates([0, 0.0001, 0, 0, 0, 0, 0, 0, 0], self.abc_pairs) assert not r.isValid()
def test_fixNegsConstrainedOpt(self): """Rates fixNegsConstrainedOpt should fix negatives w/ constrained opt""" q = Rates(array([[-0.28936029, 0.14543346, -0.02648614, 0.17041297], [ 0.00949624, -0.31186005, 0.17313171, 0.1292321 ], [ 0.10443209, 0.16134479, -0.30480186, 0.03902498], [ 0.01611264, 0.12999161, 0.15558259, -0.30168684]]), DnaPairs) r = q.fixNegsFmin() assert not q.isValid() assert r.isValid()
def test_fixNegsConstrainedOpt(self): """Rates fixNegsConstrainedOpt should fix negatives w/ constrained opt""" q = Rates( array([[-0.28936029, 0.14543346, -0.02648614, 0.17041297], [0.00949624, -0.31186005, 0.17313171, 0.1292321], [0.10443209, 0.16134479, -0.30480186, 0.03902498], [0.01611264, 0.12999161, 0.15558259, -0.30168684]]), DnaPairs) r = q.fixNegsFmin() assert not q.isValid() assert r.isValid()