comp_tridiagonal.py 739 Bytes
Newer Older
1 2 3 4 5 6 7 8 9
import numpy as np
from eg_tridiagonal import *
import time
import csv
fields = ['n', 'time']
filename = "tridiagonal_times.csv"
with open(filename, 'w') as csvfile:
    csvwriter = csv.writer(csvfile)
    csvwriter.writerow(fields)
10 11
    limit = 500
    for i in range(100, 1000, 50):
12
        exec_time = 0
13
        for r in range(limit):
14 15 16 17 18 19 20 21 22
            start = time.time()
            a = np.zeros(i)
            b = np.ones(i)
            c = np.zeros(i)
            d = np.ones(i)
            start = time.time()
            tridiagonal(a,b,c,d)
            end = time.time()
            exec_time += (end-start)
23 24
        avg_time = exec_time/limit
        print(i, avg_time)
25 26 27 28 29 30
        csvwriter.writerow([i, avg_time])
    csvfile.close()