111
This commit is contained in:
2
227-3.py
2
227-3.py
@@ -63,7 +63,7 @@ def prettyPrintMatrix(matrix):
|
|||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
# A = np.array(A, dtype=float)
|
# A = np.array(A, dtype=float)
|
||||||
# b = np.array(b, dtype=float)
|
# b = np.array(b, dtype=float)
|
||||||
|
#把矩阵A和b改成题干要求的#####################################
|
||||||
A = [
|
A = [
|
||||||
[0, 3, 4],
|
[0, 3, 4],
|
||||||
[1, -1, 1],
|
[1, -1, 1],
|
||||||
|
|||||||
4
227-4.py
4
227-4.py
@@ -22,7 +22,7 @@ def SqrtSolve(A,b):
|
|||||||
for k in range(j):
|
for k in range(j):
|
||||||
L[getIndexFromDownMatrix(i,j)] -= L[getIndexFromDownMatrix(i,k)]*L[getIndexFromDownMatrix(j,k)]
|
L[getIndexFromDownMatrix(i,j)] -= L[getIndexFromDownMatrix(i,k)]*L[getIndexFromDownMatrix(j,k)]
|
||||||
L[getIndexFromDownMatrix(i,j)] /= L[getIndexFromDownMatrix(j,j)]
|
L[getIndexFromDownMatrix(i,j)] /= L[getIndexFromDownMatrix(j,j)]
|
||||||
|
print(L)
|
||||||
for i in range(n):
|
for i in range(n):
|
||||||
for k in range(i):
|
for k in range(i):
|
||||||
b[i] -= L[getIndexFromDownMatrix(i,k)]*b[k]
|
b[i] -= L[getIndexFromDownMatrix(i,k)]*b[k]
|
||||||
@@ -34,7 +34,7 @@ def SqrtSolve(A,b):
|
|||||||
b[i] /= L[getIndexFromDownMatrix(i,i)]
|
b[i] /= L[getIndexFromDownMatrix(i,i)]
|
||||||
return b
|
return b
|
||||||
|
|
||||||
|
#把A,b换成题干的数值###########################################
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
# 储存下三角矩阵 a11, a21, a22, a31, a32, a33 ...
|
# 储存下三角矩阵 a11, a21, a22, a31, a32, a33 ...
|
||||||
A = [4,2,2,-2,-3,14]
|
A = [4,2,2,-2,-3,14]
|
||||||
|
|||||||
8
227-7.py
8
227-7.py
@@ -8,19 +8,21 @@ def ZGsolve(A,b):
|
|||||||
beta[i] = A[i][2] / A[i][1]
|
beta[i] = A[i][2] / A[i][1]
|
||||||
else:
|
else:
|
||||||
beta[i] = A[i][2] / (A[i][1] - A[i][0]*beta[i-1])
|
beta[i] = A[i][2] / (A[i][1] - A[i][0]*beta[i-1])
|
||||||
|
print("beta:")
|
||||||
|
print(beta[:-1])
|
||||||
for i in range(n):
|
for i in range(n):
|
||||||
if i == 0:
|
if i == 0:
|
||||||
b[i] = b[i] / A[i][1]
|
b[i] = b[i] / A[i][1]
|
||||||
else:
|
else:
|
||||||
b[i] = (b[i] - A[i][0]*b[i-1]) / (A[i][1] - A[i][0]*beta[i-1])
|
b[i] = (b[i] - A[i][0]*b[i-1]) / (A[i][1] - A[i][0]*beta[i-1])
|
||||||
|
print("y:")
|
||||||
|
print(b)
|
||||||
for i in range(n-2,-1,-1):
|
for i in range(n-2,-1,-1):
|
||||||
b[i] = b[i] - beta[i]*b[i+1]
|
b[i] = b[i] - beta[i]*b[i+1]
|
||||||
|
|
||||||
return b
|
return b
|
||||||
|
|
||||||
|
#把A,b换成题干的数值###########################################
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
# 储存追赶法A矩阵
|
# 储存追赶法A矩阵
|
||||||
A = [
|
A = [
|
||||||
|
|||||||
Reference in New Issue
Block a user