-
Notifications
You must be signed in to change notification settings - Fork 0
/
generate_matrices.py
53 lines (34 loc) · 1.07 KB
/
generate_matrices.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
from numpy import random, matmul, array, reshape
import sys
def main():
a_rows = int(sys.argv[1])
a_columns = int(sys.argv[2])
b_rows = int(sys.argv[3])
b_columns = int(sys.argv[4])
a_ints = random.randint(10000, size=(a_rows*a_columns))
b_ints = random.randint(10000, size=(b_rows*b_columns))
a_floats = random.rand(a_rows*a_columns)
b_floats = random.rand(b_rows*b_columns)
a = []
b = []
for i in range(0, len(a_floats)):
a.append(float(a_ints[i]) + a_floats[i])
for i in range(0, len(b_floats)):
b.append(float(b_ints[i]) + b_floats[i])
print_matrix(a)
print_matrix(b)
mat_a = array(a)
mat_b = array(b)
mat_a = reshape(mat_a, (-1, a_columns))
mat_b = reshape(mat_b, (-1, b_columns))
result = matmul(mat_a, mat_b)
print(result)
def print_matrix(matrix):
print("[", end="")
for i, num in enumerate(matrix):
if i == len(matrix) - 1:
print(str(num) + "]")
else:
print(str(num) + ", ", end="")
if __name__ == "__main__":
main()