def test_serial_inversion(self):

        import numpy
        N = 10
        d = 4
        jac = numpy.zeros((d,d,N))
        for i in range(d):
            jac[i,i,:] = 1

        from dolo.numeric.serial_operations import serial_inversion
        from time import time
        t = time()
        ijac = serial_inversion(jac)
        u = time()
        print('elapsed : {}'.format(u-t))
    def test_serial_inversion(self):

        import numpy
        N = 10
        d = 4
        jac = numpy.zeros((d, d, N))
        for i in range(d):
            jac[i, i, :] = 1

        from dolo.numeric.serial_operations import serial_inversion
        from time import time
        t = time()
        ijac = serial_inversion(jac)
        u = time()
        print('elapsed : {}'.format(u - t))
Esempio n. 3
0
    p = 5
    N = 500


    import numpy.random
    V = numpy.random.multivariate_normal([0]*p,numpy.eye(p),size=p)
    print V

    M = numpy.zeros((p,p,N))
    for i in range(N):
        M[:,:,i] = V

    from dolo.numeric.serial_operations import serial_multiplication as stm


    MM = numpy.zeros( (p,N) )



    import time
    t = time.time()
    for i in range(100):
        T = serial_inversion(M)
    s = time.time()
    print('Elapsed :' + str(s-t))


    tt = stm(M,T)
    for i in range(10):
        print tt[:,:,i]
n_exp = 10
t = time.time()
for i in range(n_exp):
    CCC = smult_cython(A, B)
s = time.time()
print('S.T.M. (cython) ' + str(s - t))

print abs(CC - C).max()
print abs(CCC - C).max()

exit()

t = time.time()
for i in range(n_exp):
    CCC = serial_inversion(A)
s = time.time()
print('S.I. (python) ' + str(s - t))

t = time.time()
for i in range(n_exp):
    CCC = serial_inversion_cython(A)
s = time.time()
print('S.I. (python) ' + str(s - t))

exit()

exit()
t = time.time()
for i in range(n_exp):
    CC = another_multiplication(A, B)
t = time.time()
for i in range(n_exp):
    CCC = smult_cython(A,B)
s = time.time()
print('S.T.M. (cython) ' + str(s-t))

print abs(CC - C).max()
print abs(CCC - C).max()


exit()


t = time.time()
for i in range(n_exp):
    CCC = serial_inversion(A)
s = time.time()
print('S.I. (python) ' + str(s-t))

t = time.time()
for i in range(n_exp):
    CCC = serial_inversion_cython(A)
s = time.time()
print('S.I. (python) ' + str(s-t))

exit()

exit()
t = time.time()
for i in range(n_exp):
    CC = another_multiplication(A,B)