Exemple #1
0
def transform_to_identity(a):
    a = ge.transform_to_row_echleon(a)
    n = a.shape[0]
    for i in xrange(1, n):
        print i
        for j in xrange(0, i):
            factor = a[j][i] / a[i][i]
            for k in xrange(0, n + 1):
                a[j][k] -= factor * a[i][k]
    a = ge.row_scaling(a, False)
    return a
def transform_to_identity(a):
	a = ge.transform_to_row_echleon(a)
	n = a.shape[0]
	for i in xrange(1,n):
		print i
		for j in xrange(0,i):
			factor = a[j][i]/a[i][i]
			for k in xrange(0,n+1):
				a[j][k] -= factor*a[i][k]
	a = ge.row_scaling(a, False)
	return a
def solve(a,b):
	(l,u) = ge.transform_to_row_echleon(a, True)
	print 'Lower triangular matrix:\n', l
	print 'Upper triangular matrix:\n', u
	y = forward_substitution(l,b)
	print 'On forward substitution:\n', y
	s = ge.backward_substitution(mo.augmented_matrix(u,y))
	print 'On backward substitution:\n', s

# test
# A = array([[4,1],[1,3]], dtype='float')
# B = mo.transpose(array([1,2]))
# solve(A,B)
# A = array([[2,3,-1],[4,4,-3],[-2,1,-1]])
# B = mo.transpose(array([5,3,-3]))
# solve(A,B)
Exemple #4
0
def solve(a, b):
    (l, u) = ge.transform_to_row_echleon(a, True)
    print 'Lower triangular matrix:\n', l
    print 'Upper triangular matrix:\n', u
    y = forward_substitution(l, b)
    print 'On forward substitution:\n', y
    s = ge.backward_substitution(mo.augmented_matrix(u, y))
    print 'On backward substitution:\n', s


# test
# A = array([[4,1],[1,3]], dtype='float')
# B = mo.transpose(array([1,2]))
# solve(A,B)
# A = array([[2,3,-1],[4,4,-3],[-2,1,-1]])
# B = mo.transpose(array([5,3,-3]))
# solve(A,B)