Feat: Add tp5

This commit is contained in:
Namu
2025-10-15 15:32:14 +02:00
commit bdeaa7e415
7 changed files with 305 additions and 0 deletions

42
ex1.py Normal file
View File

@@ -0,0 +1,42 @@
import numpy as np
def resolve_up(A: np.array, b: np.array) -> np.array:
x = np.zeros(len(b))
for i in range(len(A) - 1, -1, -1):
right_of_diagonal = 0.0
for k in range(i+1, len(A)):
right_of_diagonal += A[i, k] * x[k]
x[i] = (b[i] - right_of_diagonal) / A[i,i]
return x
def resolve_down(A: np.array, b: np.array) -> np.array:
x = np.zeros(len(b))
for i in range(len(A)):
sum = 0.0
for k in range(i):
sum += A[i,k] * x[k]
x[i] = (b[i] - sum) / A[i, i]
return x
if __name__ == '__main__':
A = np.array([
[2, 4, -6],
[0, -1, 1],
[0, 0, -2],
], dtype=float)
b = np.array([2, 3, -7], dtype=float)
A_down = np.array([
[2, 0, 0],
[4, -1, 0],
[-6, 1, -2],
])
b_down = np.array([2, 3, -7])
print(resolve_up(A, b))
print(resolve_down(A_down, b_down))