return B
def combine(self,B,layer):
"""A long with method Peel."""
for i in range(self.row-layer):
for j in range(self.col-layer):
A.body[i + layer][j + layer] = B.body[i][j]
def GaussJordanCol_col(A):
Max = 0 # initialize the variable
position = 0 # the row number of the maximum value
for i in range(min(A.row,A.mainCol)):
for j in A.CheckedRow: # getting the max and position by a flow
if abs(Max) <= abs(A.body[j][i]):
Max = A.body[j][i]
position = j
A.CheckedRow.remove(position) # this row should not be checked again
A.matrixTransform(position, 1 / Max)
for j in range(A.row):
if j != position:
A.matrixTransform(j,position,-1 * A.body[j][i])
Max = 0 # reinitialize the variables
position = 0
begin = 0
for j in range(A.mainCol):
for i in range(A.row):
if A.body[i][j] == 1:
A.matrixTransform(begin,i,'exchange')
begin += 1
return A
"""-------------------------my Main Function-------------------------"""
A = Matrix(3,6,3)
A.body[0] = [1,2,3,1,0,0]
A.body[1] = [2,4,5,0,1,0]
A.body[2] = [3,5,6,0,0,1]
print('The original matrix is shown below:\n')
for i in range(A.row):
for j in range(A.col):
print(int(A.body[i][j]),'\t',end='')
print('')