classrooms ========== gen_closeL ---------- >>> from classrooms import gen_closeL >>> gradesD = { ... 107: ['JBB', 0.0], ... 155: ['GWV', 5.5], ... 227: ['JJJ', 6.5], ... 275: ['AWV', 7.5], ... 321: ['MMPg', 5.5], ... 325: ['BWV', 2.5], ... 423: ['SCC', 7.5], ... 490: ['BWV', 9.0], ... 555: ['FCCg', 5.0], ... 727: ['ABC', 0.0], ... 811: ['GMM', 8.0], ... 923: ['MRP', 10.0], ... } >>> cl51 = [ ... [227, 423, 811, 107, 490], ... [155, 275, 325], ... [923, 727, 321, 555], ... ] >>> corrL = [ ... [('JJJ', 1, 'SCC', 1.0), ('SCC', 2, 'GMM', 0.5)], ... [], ... [('MMPg', 3, 'FCCg', 0.5)], ... ] >>> corrL == gen_closeL(gradesD, cl51, 1.0) # doctesttag: +TAG=1_gen_closeL True >>> corrL = [ ... [('SCC', 2, 'GMM', 0.5)], ... [], ... [('MMPg', 3, 'FCCg', 0.5)], ... ] >>> corrL == gen_closeL(gradesD, cl51, 0.5) # doctesttag: +TAG=1_gen_closeL True >>> corrL = [ ... [], ... [], ... [], ... ] >>> corrL == gen_closeL(gradesD, cl51, 0.2) # doctesttag: +TAG=1_gen_closeL True >>> cl52 = [ ... [227, 107, 423, 923, 325], ... [811, 727, 321, 555], ... ] >>> corrL = [ ... [], ... [('MMPg', 3, 'FCCg', 0.5)], ... ] >>> corrL == gen_closeL(gradesD, cl52, 1.0) # doctesttag: +TAG=1_gen_closeL True transit ======= gen_transitD ------------ >>> from transit import gen_transitD >>> trajD = { ... 'H11':[1, 5, 7, 9, 6, 2, 6, 9], ... 'M22':[3, 1, 5, 7, 9, 6], ... 'H23':[5, 7, 9, 6, 2, 9, 6], ... } >>> corrD = { ... (1, 5): 2, ... (5, 7): 3, ... (7, 9): 3, ... (6, 9): 5, ... (2, 6): 3, ... (1, 3): 1, ... (2, 9): 1 ... } >>> corrD == gen_transitD(trajD) # doctesttag: +TAG=2_transit-1_gen_transitD True --fi-res >>> trajD = { ... 'H55':[1, 3, 5, 9, 5, 1], ... 'M22':[5, 1, 5, 9, 9], ... 'H13':[5, 7, 9, 6, 2] ... } >>> corrD = {(1, 3): 1, (3, 5): 1, (5, 9): 3, (1, 5): 3, (9, 9): 1, (5, 7): 1, (7, 9): 1, (6, 9): 1, (2, 6): 1} >>> corrD == gen_transitD(trajD) # doctesttag: +TAG=2_transit-1_gen_transitD True >>> trajD = {'H1':[2, 3, 4, 1, 5, 6], 'M1':[5, 6, 7, 9, 4],'H3':[5, 7, 9, 1, 2]} >>> corrD = {(2, 3): 1, (3, 4): 1, (1, 4): 1, (1, 5): 1, (5, 6): 2, (6, 7): 1, (7, 9): 2, (4, 9): 1, (5, 7): 1, (1, 9): 1, (1, 2): 1} >>> corrD == gen_transitD(trajD) # doctesttag: +TAG=2_transit-1_gen_transitD True gen_high_transitL ----------------- >>> from transit import gen_high_transitL >>> transitD = { ... (1, 5): 2, ... (5, 7): 3, ... (7, 9): 3, ... (6, 9): 5, ... (2, 6): 3, ... (1, 3): 1, ... (2, 9): 1, ... } >>> high_transitL = gen_high_transitL(transitD, 2) >>> high_transitL == [(6, 9), (2, 6), (5, 7), (7, 9)] # doctesttag: +TAG=2_transit-2_gen_high_transitL True >>> corrL = [(6, 9), (2, 6), (5, 7), (7, 9), (1, 5), (1, 3), (2, 9)] >>> corrL == gen_high_transitL(transitD, 0) # doctesttag: +TAG=2_transit-2_gen_high_transitL True >>> transitD = {(1, 3): 1, (3, 5): 1, (5, 9): 3, (1, 5): 3, (9, 9): 1, (5, 7): 1, (7, 9): 1, (6, 9): 1, (2, 6): 1} >>> corrL = [(1, 5), (5, 9)] >>> corrL == gen_high_transitL(transitD, 2) # doctesttag: +TAG=2_transit-2_gen_high_transitL True >>> transitD = {(2, 3): 1, (3, 4): 1, (1, 4): 1, (1, 5): 1, (5, 6): 2, (6, 7): 1, (7, 9): 2, (4, 9): 1, (5, 7): 1, (1, 9): 1, (1, 2): 1} >>> corrL = [(5, 6), (7, 9), (1, 2), (1, 4), (1, 5), (1, 9), (2, 3), (3, 4), (4, 9), (5, 7), (6, 7)] >>> corrL == gen_high_transitL(transitD, 0) # doctesttag: +TAG=2_transit-2_gen_high_transitL True fever ===== fever_merge ----------- >>> from fever import fever_merge >>> n = fever_merge('fev1.csv', 'fev2.csv', 'fevout.csv') >>> with open('fevout.csv', 'r') as fref, open('fev1+2.csv', 'r') as f: ... l = f.readline() ... lref = fref.readline() ... while l != '' and lref == l: ... l = f.readline() ... lref = fref.readline() ... oeq = lref == l == '' >>> n == 10 and oeq # doctesttag: +TAG=3_fever-1_fever_merge True >>> n = fever_merge('fev3.csv', 'fev4.csv', 'fevout.csv') >>> with open('fevout.csv', 'r') as fref, open('fev3+4.csv', 'r') as f: ... l = f.readline() ... lref = fref.readline() ... while l != '' and lref == l: ... l = f.readline() ... lref = fref.readline() ... oeq = lref == l == '' >>> n == 8 and oeq # doctesttag: +TAG=3_fever-1_fever_merge True fever_merge_sort ---------------- >>> from fever import fever_merge_sort >>> n = fever_merge_sort('fev1.csv', 'fev2.csv', 'fevout.csv') >>> with open('fevout.csv', 'r') as fref, open('fev1+2ord.csv', 'r') as f: ... l = f.readline() ... lref = fref.readline() ... while l != '' and lref == l: ... l = f.readline() ... lref = fref.readline() ... oeq = lref == l == '' >>> n == 10 and oeq # doctesttag: +TAG=3_fever-2_fever_merge_sort True >>> n = fever_merge_sort('fev3.csv', 'fev4.csv', 'fevout.csv') >>> with open('fevout.csv', 'r') as fref, open('fev3+4ord.csv', 'r') as f: ... l = f.readline() ... lref = fref.readline() ... while l != '' and lref == l: ... l = f.readline() ... lref = fref.readline() ... oeq = lref == l == '' >>> n == 8 and oeq # doctesttag: +TAG=3_fever-2_fever_merge_sort True bisection ========= >>> from bisection import bisection_solve >>> z = bisection_solve(1, 2, 1e-2) >>> round(z, 4) # doctesttag: +TAG=4_bisection 1.2227 >>> z = bisection_solve(0.5, 1.5, 1e-6) >>> round(z, 4) # doctesttag: +TAG=4_bisection 1.2204 >>> z = bisection_solve(0.0, 0.5, 1e-6) >>> round(z, 4) # doctesttag: +TAG=4_bisection 0.3558 >>> z = bisection_solve(0.0, 0.0, 1e-6) >>> round(z, 4) # doctesttag: +TAG=4_bisection 0.0 >>> z = bisection_solve(-1.5, 0.5, 1e-6) >>> round(z, 4) # doctesttag: +TAG=4_bisection 0.3558 >>> z = bisection_solve(-10, 0.0, 1e-6) >>> round(z, 4) # doctesttag: +TAG=4_bisection -1.5873