Exemple #1
0
def step(context):
  from dcprogs.likelihood import inv, svd
  from numpy import abs, all, dot, identity
  for matrix, idealg in zip(context.qmatrices, context.idealgs):
    occupancies = idealg.final_occupancies
    kernel = dot( dot(inv(matrix.ff), matrix.fa), dot(inv(matrix.aa), matrix.af) )
    kernel = identity(kernel.shape[0]) - kernel
    U, singvals, V = svd(kernel)

    try:
      assert sum(abs(singvals) < context.tolerance) == 1
      assert all(dot(occupancies, kernel) < context.tolerance)
    except:
      print(matrix)
      print("Equilibrium: {0}".format(occupancies))
      print("Kernel Application: {0}".format(dot(occupancies, kernel)))
      raise
Exemple #2
0
def step(context):
    from dcprogs.likelihood import inv, svd
    from numpy import abs, all, dot, identity
    for matrix, idealg in zip(context.qmatrices, context.idealgs):
        occupancies = idealg.final_occupancies
        kernel = dot(dot(inv(matrix.ff), matrix.fa),
                     dot(inv(matrix.aa), matrix.af))
        kernel = identity(kernel.shape[0]) - kernel
        U, singvals, V = svd(kernel)

        try:
            assert sum(abs(singvals) < context.tolerance) == 1
            assert all(dot(occupancies, kernel) < context.tolerance)
        except:
            print(matrix)
            print("Equilibrium: {0}".format(occupancies))
            print("Kernel Application: {0}".format(dot(occupancies, kernel)))
            raise
Exemple #3
0
def step(context):
  from numpy import abs, all, dot, identity
  from dcprogs.likelihood import inv
  for idealg, matrix in zip(context.idealgs, context.qmatrices):
    for scale in context.scales:
      value = dot(inv(scale * identity(matrix.ff.shape[0]) - matrix.ff), matrix.fa)
      try: assert all(abs(idealg.laplace_fa(scale) - value) < context.tolerance)
      except:
        print(matrix)
        raise
Exemple #4
0
def step(context):
    from numpy import abs, all, dot, identity
    from dcprogs.likelihood import inv
    for idealg, matrix in zip(context.idealgs, context.qmatrices):
        for scale in context.scales:
            value = dot(inv(scale * identity(matrix.ff.shape[0]) - matrix.ff),
                        matrix.fa)
            try:
                assert all(
                    abs(idealg.laplace_fa(scale) - value) < context.tolerance)
            except:
                print(matrix)
                raise