a1be7bf2f0926707e25b02570c17ba373878f768,pymanopt/manifolds/psd.py,PositiveDefinite,exp,#PositiveDefinite#,110

Before Change


        else:
            c = la.cholesky(x)
            c_inv = la.inv(c)
            e = multiexp(multiprod(multiprod(c_inv, u), multitransp(c_inv)),
                         sym=True)
            return multiprod(multiprod(c, e), multitransp(c))

    def log(self, x, y):
        c = la.cholesky(x)
        c_inv = la.inv(c)

After Change


                e[i] = sp.linalg.expm(x_inv_u[i])
        else:
            e = sp.linalg.expm(x_inv_u)
        return multiprod(x, e)
        // This alternative implementation is sometimes faster though less
        // stable. It can return a matrix with small negative determinant.
        //    c = la.cholesky(x)
        //    c_inv = la.inv(c)
Italian Trulli
In pattern: SUPERPATTERN

Frequency: 3

Non-data size: 3

Instances


Project Name: pymanopt/pymanopt
Commit Name: a1be7bf2f0926707e25b02570c17ba373878f768
Time: 2016-03-14
Author: jamiehntownsend@gmail.com
File Name: pymanopt/manifolds/psd.py
Class Name: PositiveDefinite
Method Name: exp


Project Name: pymanopt/pymanopt
Commit Name: 4346ff930104b0d9b6735090a1ce4c485d40b981
Time: 2016-02-25
Author: jamiehntownsend@gmail.com
File Name: pymanopt/manifolds/grassmann.py
Class Name: Grassmann
Method Name: dist


Project Name: pymanopt/pymanopt
Commit Name: d85ecc37deb225b960b3c010b892f9ca3f7b889e
Time: 2016-02-15
Author: jamiehntownsend@gmail.com
File Name: pymanopt/manifolds/stiefel.py
Class Name: Stiefel
Method Name: proj