From 7a20a35eb054b1aca0b10805bf6acd0d54247666 Mon Sep 17 00:00:00 2001 From: Ananth Ravi Kumar Date: Sun, 17 Apr 2016 18:56:25 -0700 Subject: [PATCH 1/9] started kde --- infoflow/entropy_kde.py | 78 ++++++++ infoflow/multidimkde.py | 27 +++ infoflow/tests/entropykdeinputx.txt | 1 + infoflow/tests/entropykdeinputy.txt | 1 + infoflow/tests/mdkde_input.txt | 200 +++++++++++++++++++++ infoflow/tests/test_entropy_kde.py | 35 ++++ infoflow/tests/test_multidimensionalkde.py | 25 +++ 7 files changed, 367 insertions(+) create mode 100644 infoflow/entropy_kde.py create mode 100644 infoflow/multidimkde.py create mode 100644 infoflow/tests/entropykdeinputx.txt create mode 100644 infoflow/tests/entropykdeinputy.txt create mode 100644 infoflow/tests/mdkde_input.txt create mode 100644 infoflow/tests/test_entropy_kde.py create mode 100644 infoflow/tests/test_multidimensionalkde.py diff --git a/infoflow/entropy_kde.py b/infoflow/entropy_kde.py new file mode 100644 index 0000000..aaad91e --- /dev/null +++ b/infoflow/entropy_kde.py @@ -0,0 +1,78 @@ +import numpy as np +from infoflow import multidimkde as mdkde + +def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): + """ + :param source: source time series + :param target: target time series + :param timelagx: time lag in x from present + :param timelagy: time lag in y from present + :param N: number of equally spaced points along each dimension where probabilities are to be estimated + :param bw_coeff: multiplier that adjusts Gaussian bandwidth + :return: transfer entropy in bits. + """ + + """ All code written here is based on the transfer entropy + toolbox, Copyright 2011 Joon Lee. Use protected under GNU.""" + + # fixing block lengths to 1 + l, k = 1, 1 + + sourcearr = source.flatten() + targetarr = target.flatten() + + # go through the timeseries source and target, and populate source_pat, target_pat and target_t + source_pat = [] + target_pat = [] + target_t = [] + for i in range(max(l+timelagx, k+timelagy), min(len(source), len(target)), 1): + # print(sourcearr[i - l - timelagx:i - timelagx + 1]) + source_pat.append(sourcearr[i - l - timelagx:i - timelagx ][0]) + target_pat.append(targetarr[i - k - timelagy:i - timelagy ][0]) + target_t.append(targetarr[i]) + + # reassigning to numpy arrays + source_pat = np.array(source_pat).reshape(len(source_pat), 1) + target_pat = np.array(target_pat).reshape(len(target_pat), 1) + target_t = np.array(target_t).reshape(len(target_t), 1) + + # computing transfer entropy + #print(source_pat) + source_pat_i = np.linspace(np.amin(source_pat) - 0.1*(np.amax(source_pat) - np.amin(source_pat)), + np.amax(source_pat)+ 0.1*(np.amax(source_pat) - np.amin(source_pat)), n) + + target_pat_i = np.linspace(np.amin(target_pat) - 0.1*(np.amax(target_pat)- np.amin(target_pat)), + np.amax(target_pat) + 0.1*(np.amax(target_pat) - np.amin(target_pat)), n) + + target_t_i = np.linspace(np.amin(target_t)-0.1*(np.amax(target_t)-np.amin(target_t)), + np.amax(target_t)+0.1*(np.amax(target_t)-np.amin(target_t)), n) + + # reshaping the resultant arrays + source_pat_i = np.array(source_pat_i).reshape(len(source_pat_i),1) + target_pat_i = np.array(target_pat_i).reshape(len(target_pat_i),1) + target_t_i = np.array(target_t_i).reshape(len(target_t_i),1) + #initializing the probability density function matrix + pdf = np.zeros(shape=(len(target_t_i), len(source_pat_i), len(target_pat_i))) + + + for i in range(len(source_pat_i)): + for j in range(len(target_pat_i)): + for k in range(len(target_t_i)): + x = np.hstack((source_pat, target_pat, target_t)) + xi = np.hstack((source_pat_i[i], target_pat_i[j], target_t_i[k])) + ans = mdkde.multidimensionalkde(x, xi, bw_coeff) + pdf[i, j, k]=ans[0] + + # normalizing + pdf = pdf/np.sum(pdf) + transferentropy = 0 + for i in range(len(source_pat_i)): + for j in range(len(target_pat_i)): + for k in range(len(target_t_i)): + a = pdf[i, j, k] + b = sum(pdf[:, i, j]) + c = sum(pdf[i, j, :]) + d = sum(sum(pdf[:, j, :])) + transferentropy = transferentropy + a * np.log2((a * d) / (b * c)) + + return transferentropy diff --git a/infoflow/multidimkde.py b/infoflow/multidimkde.py new file mode 100644 index 0000000..91f70a4 --- /dev/null +++ b/infoflow/multidimkde.py @@ -0,0 +1,27 @@ +import numpy as np +from math import pi, exp, sqrt + + +def multidimensionalkde(x, xi, bw_coeff): + """ + :param x: data matrix, rows are observations and columns are dimensions. + :param xi: coordinates at which joint probabilities are to be estimated. + :param bw_coeff: + :return: joint probability at xi + """ + n, d = np.shape(x) + # pick the bandwidth for each dimension + h = np.zeros(shape=(1, d)) + for i in range(d): + h[0, i] = float(bw_coeff * 1.06 * n**(-1/5) *np.std(x[:, i])) + # estimating probability at xi + p = np.zeros(shape=(np.shape(xi)[0], 1)) + for k in range(len(p)): + for i in range(n): + prod = 1 + for j in range(d): + u = float((xi[j] - x[i, j])/h[0][j]) + prod = float(prod * 1/sqrt(2*pi) * exp(-0.5*(u**2)) / h[0][j]) + p[k] += prod + p = p/n + return p diff --git a/infoflow/tests/entropykdeinputx.txt b/infoflow/tests/entropykdeinputx.txt new file mode 100644 index 0000000..0d6492b --- /dev/null +++ b/infoflow/tests/entropykdeinputx.txt @@ -0,0 +1 @@ +10.6318409530124,7.16601373541248,9.25576748036324,10.2700717983761,10.9182918332496,8.64912081788371,11.7974818562207,9.91660957254912,8.90507902945858,9.50954013455702,9.80292787746478,11.0077965140020,7.78384740479797,9.29569101939955,10.4911665330454,10.7470393361356,8.42610269208353,11.5039627801715,8.77612149208006,9.03865323389737,9.68091545268405,11.0911333840371,10.5900661721793,10.0084172275666,11.1230904984542,9.54823462333672,11.2621802007346,10.0927313507475,7.50522945204675,9.07151418107489,9.35160888585939,8.38642323226040,11.1035632323987,8.58798708822100,9.93944534383898,9.70012039319379,8.89499373993739,10.0798552180579,9.17945515234531,11.5273372934512,8.48953736962610,10.1172949198990,9.42862257581620,9.81530992796106,8.28986406556346,10.8073312655338,10.1640024125707,11.0409798461981,10.5054968700604,8.99979256204306,8.50413680626858,8.79586756887326,10.6608531739480,8.89705811183485,9.87275717631401,7.96219161893087,8.89139363569565,10.2834404545806,10.4052029197912,11.3585470973735,10.5236394310852,10.9807613784375,9.04352056619495,7.53352003355299,11.0304652336622,10.4207327823840,10.4631782357450,10.6301244164408,9.27146558515512,11.0676550169045,11.1109368323771,10.0743973712690,9.48155132023921,10.5170751976988,10.3933902037374,11.2192696255008,10.9380646493422,8.13378557894080,10.1094201392102,6.88337000681965,8.32412143571955,9.08591925295544,9.98553435115938,9.64859635778846,9.87786679453986,11.2383654509297,10.0420545609497,10.8810845035783,9.63470571301103,9.11836598440758,8.81997828416820,11.1313155020844,9.84384184840332,10.4090527109720,9.97542506454374,9.32763154329188,10.6170582582681,9.03668624528981,10.9305673168543,11.2912830257876,12.0954515400647,11.0927460027563,10.4691098521836,11.4217041444443,9.05337502671645,9.49828685535290,10.2471294040471,8.79117112768217,9.74476369270488,8.72904930002751,10.0943716601083,10.2881945250038,10.8224796338302,10.8264201060451,10.9914670414982,10.0257529864149,11.1614730376502,10.7684182512993,9.99069745720303,10.1642869226694,10.8635491392323,10.1637443629387,8.75878498325703,9.16152762685959,9.81025250436673,8.86920713720371,11.2462604515410,8.24476260360485,9.83062107947989,10.2091755258666,10.3277566982267,9.62481508972443,8.49656049106619,9.43699447618267,9.02208642437910,10.7060011313182,9.61421208042732,10.3638100194296,10.2207396351287,9.85438744055232,9.45443775170820,9.17084270483441,9.21077721733288,9.09068212109809,9.96134690598100,10.2213991052413,10.4807132914261,11.2914429140481,9.73265175565752,10.9186467593450,10.0005602483217,9.68504769491907,10.8121852569908,9.75559549172969,10.1698170734502,9.58034499096465,9.97923739317213,8.74527791643718,9.97835495447063,10.0047449102532,11.6076664405184,9.93570849728845,10.2949632647001,10.8281700224201,10.0472541343584,10.1514525516622,9.93034569344075,8.20740788620795,11.3900058891989,10.3000657656261,9.61587701671240,9.86951855727651,9.54425769370143,8.46206208472239,9.85618763374089,11.0518054645395,7.93027151432333,8.23902879152523,9.68564520748099,8.42561802248032,9.67775775466944,9.32961204641624,11.0174561357848,9.45238259044696,10.1348419938131,10.8163391452253,10.1848111785943,10.6567619513822,9.39018250338036,7.82249001506302,10.2613209693918,9.66394476011778,10.6756225983909,8.79166327448905,9.97080480539966,8.92076153999065,9.21349706156629,10.0310217174579,12.4727152047698,9.26229677913903,11.7142482353405,10.2298794311077 \ No newline at end of file diff --git a/infoflow/tests/entropykdeinputy.txt b/infoflow/tests/entropykdeinputy.txt new file mode 100644 index 0000000..f21373e --- /dev/null +++ b/infoflow/tests/entropykdeinputy.txt @@ -0,0 +1 @@ +0.0352838833466196,3.25414642630397,127.174125467110,55.9484492997276,97.1842913442583,128.132826851814,134.257001684963,89.6721912051628,153.902153346059,114.359136857583,80.3457188617501,99.8810532509573,93.9612583783169,151.705936507190,67.7399180180822,94.1924973222386,119.891226267253,128.274059220186,77.1952220392693,144.826015620332,91.3734427370813,92.6775445741975,109.569171647130,129.387594467723,129.268989374926,113.952331904389,135.628595660404,100.863637019943,146.714364721742,114.059870938791,75.5333816907051,87.8527414678231,83.9031043530759,87.0245376983282,132.096177966559,86.8003212227529,115.394836160673,108.847572650481,98.8872065010508,114.822386599157,100.529192562675,153.859695935129,78.8995395824050,119.418281612347,100.520527957985,94.0082965516546,76.1251228065192,130.856918640209,116.550956208106,135.797804797369,124.568245079245,95.5387242136329,86.9405592757377,98.5805464369942,128.791201128925,83.7446497471950,104.683801066445,68.5519023722340,92.8810091638652,120.244179527433,135.834142140842,145.194549758999,116.801827825268,121.441145902836,89.9859398849314,74.0810381973525,141.614074518319,125.687822688581,122.414924295213,123.634930648539,101.316341541152,138.991241327505,126.055313568315,104.507351405040,99.2600636370452,108.612478549276,125.238412102596,140.490424338222,135.849077815422,73.9961258769562,125.199483985824,54.5858384995721,78.1975645532311,94.1126875908351,116.209605556189,121.136628319537,112.069006245236,135.844407799633,116.438745813214,137.718560513624,111.443106059229,92.5317300893031,85.8746830589014,141.225900766157,102.149200161146,129.114252279261,111.772247214125,106.689525188197,123.775665472221,95.3173736650583,139.490211757964,147.600909910356,159.305171579385,125.188932334959,136.666197331661,130.416535864242,89.5318094678313,109.738618661830,124.310846308288,88.2065652146817,105.735817104222,81.8732466969638,104.125214259875,116.560307622030,117.639981067020,130.625192128274,134.681976496688,98.2917644864866,133.700757884994,139.205764926517,107.384290280528,116.605855788531,133.687489698630,108.011404476558,96.6050967267261,99.7750257112162,99.5201920892892,90.6495089494644,141.329674128307,67.9651806943752,107.137781417819,113.734291046757,117.607562478339,109.644515164566,81.4939136956194,99.0402077604949,87.4314644688900,126.527002376172,104.664865034223,118.659433090465,110.776274759416,108.239617517187,100.127486408258,83.6182298359949,96.7380553670387,100.471419831291,110.882641204623,122.698866178508,116.109291128145,132.669774054790,113.911342398790,138.621011222762,100.227913225873,103.835519164763,139.803289358530,121.870216685252,116.034793193457,103.352269959100,111.000189572151,92.0058236306331,108.840985654532,110.087422247159,151.059520609764,102.641049537433,106.090822980636,115.069269076996,120.086811623284,119.445110773387,113.681055036038,71.5772057835406,143.754635517773,126.302890439201,102.225045584595,97.0656438195509,93.1197762849286,77.1127545666540,105.005679729001,140.514930654282,81.0346512675447,73.4801323955022,114.098403576681,88.5160970391091,108.316224582343,95.9060904205627,122.985471587905,102.523270682270,114.543079257403,115.668272968867,125.896288845677,117.690763603090,105.603070378097,63.0309572045866,118.095318545262,105.235092785007,128.217442160060,76.3009800785314,138.253621341289,92.8197680422521,97.3968754404170,123.707065753988,174.184386613100,105.156217210789 \ No newline at end of file diff --git a/infoflow/tests/mdkde_input.txt b/infoflow/tests/mdkde_input.txt new file mode 100644 index 0000000..55296a8 --- /dev/null +++ b/infoflow/tests/mdkde_input.txt @@ -0,0 +1,200 @@ +10.4211260079593 -2.36977516364604 105.686492962954 +9.15959175116347 0.526533107139457 80.6654218657734 +8.42791637961942 105.686492962954 76.5339089023960 +9.79937565892561 80.6654218657734 93.3071274138142 +11.0935185821076 76.5339089023960 116.905703081036 +9.73725099429120 93.3071274138142 105.587863905571 +10.2243469322360 116.905703081036 102.950248597120 +9.14123254116025 105.587863905571 90.0425804143035 +9.27978556360681 102.950248597120 84.8326443088244 +10.4625464979946 90.0425804143035 111.144217379212 +11.0532504912095 84.8326443088244 108.716181164378 +8.37120765662389 111.144217379212 81.9328437435660 +8.31299790562039 108.716181164378 69.8612777687300 +11.3632685729923 81.9328437435660 124.681589622447 +10.0351674383055 69.8612777687300 99.6994762402048 +9.78837437910691 124.681589622447 95.7999655294659 +10.3025585944617 99.6994762402048 111.422395933551 +9.97080241324564 95.7999655294659 98.0708494207690 +10.3538933865610 111.422395933551 104.124431345050 +10.6079548361543 98.0708494207690 111.783812268559 +8.94148954012898 104.124431345050 69.5390566812899 +9.47833605650219 111.783812268559 106.851146565039 +9.92537602561508 69.5390566812899 99.5171364197707 +9.50144983292374 106.851146565039 110.025393970471 +10.4229167707908 99.5171364197707 107.226714484100 +8.94229569585545 110.025393970471 74.6324572580568 +10.1630719263382 107.226714484100 105.202009016593 +8.31144638274103 74.6324572580568 84.0321662213681 +8.70392723628035 105.202009016593 87.3116281324972 +10.9626524057649 84.0321662213681 102.719894224737 +10.7513587129864 87.3116281324972 118.630401437498 +10.6985933029311 102.719894224737 111.077856833473 +10.1934766837466 118.630401437498 105.348721905774 +8.55865025366214 111.077856833473 75.5847107261273 +9.77089142787289 105.348721905774 102.348980578141 +11.3586402663943 75.5847107261273 125.332205380214 +7.86245295803992 102.348980578141 60.2740358232517 +10.3451863308292 125.332205380214 108.725999581341 +7.46527397614331 60.2740358232517 55.6556197253784 +9.68710681121817 108.725999581341 96.7928943881868 +10.3649792158121 55.6556197253784 114.903292682931 +8.40812696263984 96.7928943881868 69.4479164974077 +10.8562622100752 114.903292682931 119.299385366449 +9.23978685343992 69.4479164974077 111.623857733580 +10.5440053605012 119.299385366449 120.894184174870 +10.4683979739141 111.623857733580 112.069794429579 +9.73608537929506 120.894184174870 90.7948431348353 +10.5512564821944 112.069794429579 106.536845881143 +10.0484117707993 90.7948431348353 94.8612679344310 +8.04072569129428 106.536845881143 67.9405506218734 +10.6735654913598 94.8612679344310 106.067509155519 +10.1828715200493 67.9405506218734 109.631225409333 +9.96968448112454 106.067509155519 118.133069230690 +10.2489827369610 109.631225409333 102.196811566757 +10.0531253810500 118.133069230690 96.8688307705273 +7.67165861107142 102.196811566757 48.3816814180842 +11.7197788310825 96.8688307705273 137.419592893596 +9.57947501239318 48.3816814180842 83.5815319796415 +9.29625795552166 137.419592893596 85.8064985825488 +11.3998640005889 83.5815319796415 123.701969909375 +10.1373742414350 85.8064985825488 90.3577430918775 +9.01100801303883 123.701969909375 81.8817230864899 +10.9049803732133 90.3577430918775 113.305612650647 +10.1033344160733 81.8817230864899 98.2156209495792 +9.32410854469947 113.305612650647 73.9489808770926 +11.6280330977918 98.2156209495792 135.538959515601 +9.85747779740347 73.9489808770926 92.8673611115571 +9.69796324352113 135.538959515601 82.9466325721818 +8.86402817842106 92.8673611115571 71.9930817298041 +10.1171639601262 82.9466325721818 97.3263603956290 +11.5280148529030 71.9930817298041 128.971387066204 +10.8757601216499 97.3263603956290 118.681674400694 +9.80653805805204 128.971387066204 81.6802567393363 +9.73017365115883 118.681674400694 87.4161557974104 +10.6196452989191 81.6802567393363 107.303611617237 +11.7917319631748 87.4161557974104 136.414232859881 +9.91330802847372 107.303611617237 97.2674013121323 +9.75905627047967 136.414232859881 86.8901083119275 +10.2835667875428 97.2674013121323 103.969588153938 +8.71599998475651 86.8901083119275 80.8318593977582 +10.9803639476732 103.969588153938 116.793969977743 +9.45264445714630 80.8318593977582 95.0578218093878 +9.43835681862873 116.793969977743 92.7571447898413 +7.91040504493523 95.0578218093878 64.4061678723184 +9.04374138942974 92.7571447898413 85.8855349722596 +10.2119536137048 64.4061678723184 105.953231348414 +10.7971784055176 85.8855349722596 127.290929838477 +11.1546396794403 105.953231348414 123.741564766070 +8.70620162412084 127.290929838477 68.1407489787192 +9.66870517734535 123.741564766070 96.8488793387312 +9.87619320128848 68.1407489787192 99.8971958062047 +10.3404378591972 96.8488793387312 113.963153333140 +10.4166902669334 99.8971958062047 103.740746381255 +10.3604459390833 113.963153333140 101.595835531606 +9.52905000082007 103.740746381255 91.2789225064001 +9.78773022225650 101.595835531606 94.1904623846936 +9.19197187636095 91.2789225064001 83.2871418398823 +9.33759915410536 94.1904623846936 90.2281601024673 +11.8571358650712 83.2871418398823 120.645792589086 +8.78386760180735 90.2281601024673 82.1676506299633 +9.74288266411103 120.645792589086 92.4974258972857 +8.80846479929184 82.1676506299633 80.0494865279451 +10.7973171856024 92.4974258972857 115.474931091223 +8.71773764110380 80.0494865279451 78.6551036821793 +8.14439559714581 115.474931091223 72.9633522809673 +8.34305489301146 78.6551036821793 74.5901913176439 +10.6670110210607 72.9633522809673 108.657575212107 +12.4146862141603 74.5901913176439 147.053918689807 +9.61705667616662 108.657575212107 87.1324992687989 +10.9746111393636 147.053918689807 104.380029335810 +11.2613670851036 87.1324992687989 135.468031635267 +11.2255057655008 104.380029335810 126.693227929360 +11.8794812760294 135.468031635267 135.773202525579 +9.66125009841665 126.693227929360 89.3921475052937 +10.9770718448007 135.773202525579 124.665506484925 +9.61885979100899 89.3921475052937 89.1960913386942 +8.20394806363581 124.665506484925 73.5372482471527 +9.75222917260762 89.1960913386942 93.3566596989440 +10.3807775239919 73.5372482471527 108.318430697529 +10.9185911679075 93.3566596989440 143.671006974210 +10.8563781321093 108.318430697529 117.314019026879 +10.2231245103995 143.671006974210 100.534689532971 +11.1730192468860 117.314019026879 119.574786093128 +9.72786807833919 100.534689532971 91.9619948464541 +8.73372705809844 119.574786093128 75.4970824175246 +9.02992561801242 91.9619948464541 86.4161732608009 +8.86095513474243 75.4970824175246 75.1903809104171 +11.1177126097330 86.4161732608009 119.147250363792 +9.82991216438658 75.1903809104171 98.3670627356286 +8.61585951453221 119.147250363792 79.9251300632622 +9.65034485444263 98.3670627356286 97.1157284185969 +10.1196333015828 79.9251300632622 84.1853132345326 +9.67688510208878 97.1157284185969 104.020589274447 +11.6637580508535 84.1853132345326 130.328159688381 +11.5434488090031 104.020589274447 132.023226756905 +9.48286063156920 130.328159688381 84.2873945087663 +10.1694907154755 132.023226756905 93.5076788909130 +10.5045025708633 84.2873945087663 108.188484926375 +10.1803562858932 93.5076788909130 101.118878334659 +9.56685897211484 108.188484926375 90.5845527214834 +10.5537178614578 101.118878334659 123.502236836950 +9.05063141544852 90.5845527214834 80.1779036799238 +12.9054894272364 123.502236836950 159.241245442621 +9.75302003682373 80.1779036799238 93.4827045387028 +10.2941874860983 159.241245442621 107.940062138544 +9.20946963016349 93.4827045387028 83.6553680720919 +8.55666581778405 107.940062138544 78.6445464456530 +11.1430581055165 83.6553680720919 125.143939517355 +10.0936766601589 78.6445464456530 106.377981103864 +10.3670319086311 125.143939517355 105.399154618011 +8.14386564486635 106.377981103864 106.043519011825 +10.4535441133938 105.399154618011 112.481006607937 +11.7223379926330 106.043519011825 138.868457349757 +10.5927084785974 112.481006607937 112.686867198434 +11.2144544492494 138.868457349757 107.360998136955 +11.6879516780366 112.686867198434 128.669956209781 +11.4556534338735 107.360998136955 118.447832945830 +8.65122029311518 128.669956209781 74.3391137837032 +9.47934281204521 118.447832945830 99.4867649047247 +8.40963475436907 74.3391137837032 69.5701021514799 +10.6278446404594 99.4867649047247 112.416506746491 +12.0162482623612 69.5701021514799 139.977795660775 +11.4696135507092 112.416506746491 134.943399908104 +10.8674026057028 139.977795660775 118.553901556061 +8.97336288741732 134.943399908104 82.0336072074735 +8.95834919952158 118.553901556061 85.2956136973012 +9.78664488766869 82.0336072074735 102.697558293726 +9.89131930266141 85.2956136973012 95.9413179851721 +10.7660388327426 102.697558293726 119.878298277848 +12.2657015270320 95.9413179851721 126.329161805249 +9.88205821947244 119.878298277848 100.930872595003 +9.96323461539321 126.329161805249 102.894023236275 +11.2232922459353 100.930872595003 121.720823419962 +11.1769593227852 102.894023236275 108.168760293708 +8.28437478168918 121.720823419962 67.6433474647724 +9.58148155918462 108.168760293708 82.8042354978638 +9.60348889503716 67.6433474647724 83.8273137188427 +8.92353335913221 82.8042354978638 74.8830254955042 +9.29170798438943 83.8273137188427 98.8327465773339 +10.0571438414249 74.8830254955042 103.260483899620 +11.2758327997102 98.8327465773339 127.637979307067 +10.7733479413764 103.260483899620 116.827733545422 +10.8705727179738 127.637979307067 132.782460321963 +9.18109123035243 116.827733545422 82.7005919976379 +10.6157976774387 132.782460321963 109.361274618763 +11.4801845404507 82.7005919976379 133.686197501333 +8.71623561375216 109.361274618763 87.0454651344086 +12.2037500514460 133.686197501333 112.908177673741 +11.3266086901697 87.0454651344086 126.767308661043 +8.79914325310611 112.908177673741 79.3102024605624 +10.4582994211230 126.767308661043 106.267500109259 +9.23599690280768 79.3102024605624 83.6520624807437 +9.55299920735131 106.267500109259 85.3998593920352 +9.30433656337055 83.6520624807437 85.0236154776730 +9.55012430373347 85.3998593920352 90.2076535090795 +9.46276994556222 85.0236154776730 92.5446794529913 +9.37910504539161 90.2076535090795 83.5587570343297 +9.60009122456007 92.5446794529913 88.3248557924699 +10.4950921294591 83.5587570343297 104.927556882141 +11.8306052926597 88.3248557924699 139.612619345466 \ No newline at end of file diff --git a/infoflow/tests/test_entropy_kde.py b/infoflow/tests/test_entropy_kde.py new file mode 100644 index 0000000..7d13af0 --- /dev/null +++ b/infoflow/tests/test_entropy_kde.py @@ -0,0 +1,35 @@ +from infoflow import entropy_kde as kde +from infoflow import multidimkde as multkde +import numpy as np +import os + +path = os.path.dirname(os.path.realpath(__file__)) + +def test_basic(): + x = np.genfromtxt(path + '\entropykdeinputx.txt', delimiter=",") + print(np.shape(x)) + y = np.genfromtxt(path + '\entropykdeinputy.txt', delimiter=',') + print(np.shape(y)) + n = 10 + timelagx = 2 + timelagy = 2 + bw_coeff = 1 + ans = kde.kerneldensityestimation(x,y,timelagx,timelagy,n,bw_coeff) + result = 0.0086 + print(ans) + assert ans == result + + + + + +def test_inputs(): + return 0 + + +def test_outputs(): + return 0 + + +def test_all(): + return 0 diff --git a/infoflow/tests/test_multidimensionalkde.py b/infoflow/tests/test_multidimensionalkde.py new file mode 100644 index 0000000..2480e7e --- /dev/null +++ b/infoflow/tests/test_multidimensionalkde.py @@ -0,0 +1,25 @@ +from infoflow import multidimkde as multkde +import numpy as np +import os + +path = os.path.dirname(os.path.realpath(__file__)) + +def test_basic(): + x = np.genfromtxt(path + '\mdkde_input.txt', delimiter='\t') + xi = np.array([6.921252431034000, -18.53087722427270, 37.295725015630570]) + bw_coeff = 1 + result = 4.67184882019107e-22 + ans = multkde.multidimensionalkde(x, xi, bw_coeff) + assert np.isclose(ans, result).all() + +def test_inputs(): + return 0 + + +def test_outputs(): + return 0 + + +def test_all(): + return 0 + From a2b7ccf7e4b98d5ab722df50d1951230c4ec3b40 Mon Sep 17 00:00:00 2001 From: Ananth Ravi Kumar Date: Mon, 18 Apr 2016 16:00:54 -0700 Subject: [PATCH 2/9] fixing problems with git --- infoFlow/__init__.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 infoFlow/__init__.py diff --git a/infoFlow/__init__.py b/infoFlow/__init__.py deleted file mode 100644 index e69de29..0000000 From 086a89b1571dd342d82762e8e774074c4d4d2f1d Mon Sep 17 00:00:00 2001 From: arkwave Date: Thu, 21 Apr 2016 00:56:36 -0800 Subject: [PATCH 3/9] finished debugging multidimkde --- infoflow/multidimkde.py | 13 +++++++++---- infoflow/tests/test_multidimensionalkde.py | 21 +++++++-------------- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/infoflow/multidimkde.py b/infoflow/multidimkde.py index 91f70a4..b661887 100644 --- a/infoflow/multidimkde.py +++ b/infoflow/multidimkde.py @@ -4,16 +4,21 @@ def multidimensionalkde(x, xi, bw_coeff): """ - :param x: data matrix, rows are observations and columns are dimensions. - :param xi: coordinates at which joint probabilities are to be estimated. - :param bw_coeff: + :param x: np.ndarray, rows are observations and columns are dimensions. + :param xi: np.ndarray, coordinates at which joint probabilities are to be estimated. + :param bw_coeff: scalar multiplier that adjusts the rule of thumb bandwidth :return: joint probability at xi """ + + # assertions to ensure input is in right format. + assert isinstance(x, np.ndarray) + assert isinstance(xi, np.ndarray) + n, d = np.shape(x) # pick the bandwidth for each dimension h = np.zeros(shape=(1, d)) for i in range(d): - h[0, i] = float(bw_coeff * 1.06 * n**(-1/5) *np.std(x[:, i])) + h[0, i] = float(bw_coeff * 1.06 * n**(-1/5) *np.std(x[:, i],ddof=1)) # estimating probability at xi p = np.zeros(shape=(np.shape(xi)[0], 1)) for k in range(len(p)): diff --git a/infoflow/tests/test_multidimensionalkde.py b/infoflow/tests/test_multidimensionalkde.py index 2480e7e..8b3bab3 100644 --- a/infoflow/tests/test_multidimensionalkde.py +++ b/infoflow/tests/test_multidimensionalkde.py @@ -5,21 +5,14 @@ path = os.path.dirname(os.path.realpath(__file__)) def test_basic(): + """ + Note about test: ans[0][0] - result ~ 10^-34. If system is chaotic, could cause errors. Double check + floating point bs. + """ x = np.genfromtxt(path + '\mdkde_input.txt', delimiter='\t') xi = np.array([6.921252431034000, -18.53087722427270, 37.295725015630570]) bw_coeff = 1 - result = 4.67184882019107e-22 - ans = multkde.multidimensionalkde(x, xi, bw_coeff) - assert np.isclose(ans, result).all() - -def test_inputs(): - return 0 - - -def test_outputs(): - return 0 - - -def test_all(): - return 0 + result = 4.67184882019e-22 + ans = multkde.multidimensionalkde(x, xi, bw_coeff).reshape(1,3) + assert np.isclose(ans[0,0], result) From 26b4d83b828b61a3da5866b611c292f2a4afcc49 Mon Sep 17 00:00:00 2001 From: arkwave Date: Thu, 21 Apr 2016 02:26:15 -0800 Subject: [PATCH 4/9] len issue kde --- infoflow/entropy_kde.py | 37 ++++++++++++++++++++++------- infoflow/tests/entropykdeinputx.txt | 2 +- infoflow/tests/entropykdeinputy.txt | 2 +- infoflow/tests/test_entropy_kde.py | 12 +++++----- 4 files changed, 37 insertions(+), 16 deletions(-) diff --git a/infoflow/entropy_kde.py b/infoflow/entropy_kde.py index aaad91e..978fa5c 100644 --- a/infoflow/entropy_kde.py +++ b/infoflow/entropy_kde.py @@ -19,25 +19,32 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): l, k = 1, 1 sourcearr = source.flatten() + #print ("source array = " + str(sourcearr)) targetarr = target.flatten() # go through the timeseries source and target, and populate source_pat, target_pat and target_t + # ERROR FREE source_pat = [] target_pat = [] target_t = [] - for i in range(max(l+timelagx, k+timelagy), min(len(source), len(target)), 1): - # print(sourcearr[i - l - timelagx:i - timelagx + 1]) - source_pat.append(sourcearr[i - l - timelagx:i - timelagx ][0]) - target_pat.append(targetarr[i - k - timelagy:i - timelagy ][0]) + + #todo: fix length discrepancy. matlab len = 200, pythonlen = 199. FUCK + for i in range(max(l+timelagx, k+timelagy), min(len(source), len(target))): + source_pat.append(sourcearr[i - l - timelagx :i - timelagx][0]) + target_pat.append(targetarr[i - k - timelagy :i - timelagy][0]) target_t.append(targetarr[i]) - # reassigning to numpy arrays + print (source_pat) + print (len(target_pat)) + print (len(target_t)) + + # reassigning to numpy arrays [ERROR FREE] source_pat = np.array(source_pat).reshape(len(source_pat), 1) target_pat = np.array(target_pat).reshape(len(target_pat), 1) target_t = np.array(target_t).reshape(len(target_t), 1) - # computing transfer entropy - #print(source_pat) + # computing transfer entropy [ERROR FREE} + #TODO fix computation errors source_pat_i = np.linspace(np.amin(source_pat) - 0.1*(np.amax(source_pat) - np.amin(source_pat)), np.amax(source_pat)+ 0.1*(np.amax(source_pat) - np.amin(source_pat)), n) @@ -51,15 +58,29 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): source_pat_i = np.array(source_pat_i).reshape(len(source_pat_i),1) target_pat_i = np.array(target_pat_i).reshape(len(target_pat_i),1) target_t_i = np.array(target_t_i).reshape(len(target_t_i),1) + + #initializing the probability density function matrix pdf = np.zeros(shape=(len(target_t_i), len(source_pat_i), len(target_pat_i))) + # print(len(source_pat_i)) + # print(len(target_pat_i)) + # print(len(target_t_i)) + #bookkeeping + source_pat = source_pat.transpose() + target_pat = target_pat.transpose() + target_t = target_t.transpose() + x = np.vstack((source_pat, target_pat, target_t)) + print (np.shape(source_pat)) + print (np.shape(target_pat)) + print (np.shape(target_t)) for i in range(len(source_pat_i)): for j in range(len(target_pat_i)): for k in range(len(target_t_i)): - x = np.hstack((source_pat, target_pat, target_t)) + #print(np.shape(x)) xi = np.hstack((source_pat_i[i], target_pat_i[j], target_t_i[k])) + #print(xi) ans = mdkde.multidimensionalkde(x, xi, bw_coeff) pdf[i, j, k]=ans[0] diff --git a/infoflow/tests/entropykdeinputx.txt b/infoflow/tests/entropykdeinputx.txt index 0d6492b..4f80466 100644 --- a/infoflow/tests/entropykdeinputx.txt +++ b/infoflow/tests/entropykdeinputx.txt @@ -1 +1 @@ -10.6318409530124,7.16601373541248,9.25576748036324,10.2700717983761,10.9182918332496,8.64912081788371,11.7974818562207,9.91660957254912,8.90507902945858,9.50954013455702,9.80292787746478,11.0077965140020,7.78384740479797,9.29569101939955,10.4911665330454,10.7470393361356,8.42610269208353,11.5039627801715,8.77612149208006,9.03865323389737,9.68091545268405,11.0911333840371,10.5900661721793,10.0084172275666,11.1230904984542,9.54823462333672,11.2621802007346,10.0927313507475,7.50522945204675,9.07151418107489,9.35160888585939,8.38642323226040,11.1035632323987,8.58798708822100,9.93944534383898,9.70012039319379,8.89499373993739,10.0798552180579,9.17945515234531,11.5273372934512,8.48953736962610,10.1172949198990,9.42862257581620,9.81530992796106,8.28986406556346,10.8073312655338,10.1640024125707,11.0409798461981,10.5054968700604,8.99979256204306,8.50413680626858,8.79586756887326,10.6608531739480,8.89705811183485,9.87275717631401,7.96219161893087,8.89139363569565,10.2834404545806,10.4052029197912,11.3585470973735,10.5236394310852,10.9807613784375,9.04352056619495,7.53352003355299,11.0304652336622,10.4207327823840,10.4631782357450,10.6301244164408,9.27146558515512,11.0676550169045,11.1109368323771,10.0743973712690,9.48155132023921,10.5170751976988,10.3933902037374,11.2192696255008,10.9380646493422,8.13378557894080,10.1094201392102,6.88337000681965,8.32412143571955,9.08591925295544,9.98553435115938,9.64859635778846,9.87786679453986,11.2383654509297,10.0420545609497,10.8810845035783,9.63470571301103,9.11836598440758,8.81997828416820,11.1313155020844,9.84384184840332,10.4090527109720,9.97542506454374,9.32763154329188,10.6170582582681,9.03668624528981,10.9305673168543,11.2912830257876,12.0954515400647,11.0927460027563,10.4691098521836,11.4217041444443,9.05337502671645,9.49828685535290,10.2471294040471,8.79117112768217,9.74476369270488,8.72904930002751,10.0943716601083,10.2881945250038,10.8224796338302,10.8264201060451,10.9914670414982,10.0257529864149,11.1614730376502,10.7684182512993,9.99069745720303,10.1642869226694,10.8635491392323,10.1637443629387,8.75878498325703,9.16152762685959,9.81025250436673,8.86920713720371,11.2462604515410,8.24476260360485,9.83062107947989,10.2091755258666,10.3277566982267,9.62481508972443,8.49656049106619,9.43699447618267,9.02208642437910,10.7060011313182,9.61421208042732,10.3638100194296,10.2207396351287,9.85438744055232,9.45443775170820,9.17084270483441,9.21077721733288,9.09068212109809,9.96134690598100,10.2213991052413,10.4807132914261,11.2914429140481,9.73265175565752,10.9186467593450,10.0005602483217,9.68504769491907,10.8121852569908,9.75559549172969,10.1698170734502,9.58034499096465,9.97923739317213,8.74527791643718,9.97835495447063,10.0047449102532,11.6076664405184,9.93570849728845,10.2949632647001,10.8281700224201,10.0472541343584,10.1514525516622,9.93034569344075,8.20740788620795,11.3900058891989,10.3000657656261,9.61587701671240,9.86951855727651,9.54425769370143,8.46206208472239,9.85618763374089,11.0518054645395,7.93027151432333,8.23902879152523,9.68564520748099,8.42561802248032,9.67775775466944,9.32961204641624,11.0174561357848,9.45238259044696,10.1348419938131,10.8163391452253,10.1848111785943,10.6567619513822,9.39018250338036,7.82249001506302,10.2613209693918,9.66394476011778,10.6756225983909,8.79166327448905,9.97080480539966,8.92076153999065,9.21349706156629,10.0310217174579,12.4727152047698,9.26229677913903,11.7142482353405,10.2298794311077 \ No newline at end of file +10.4211260079593 9.15959175116347 8.42791637961942 9.79937565892561 11.0935185821076 9.73725099429120 10.2243469322360 9.14123254116025 9.27978556360681 10.4625464979946 11.0532504912095 8.37120765662389 8.31299790562039 11.3632685729923 10.0351674383055 9.78837437910691 10.3025585944617 9.97080241324564 10.3538933865610 10.6079548361543 8.94148954012898 9.47833605650219 9.92537602561508 9.50144983292374 10.4229167707908 8.94229569585545 10.1630719263382 8.31144638274103 8.70392723628035 10.9626524057649 10.7513587129864 10.6985933029311 10.1934766837466 8.55865025366214 9.77089142787289 11.3586402663943 7.86245295803992 10.3451863308292 7.46527397614331 9.68710681121817 10.3649792158121 8.40812696263984 10.8562622100752 9.23978685343992 10.5440053605012 10.4683979739141 9.73608537929506 10.5512564821944 10.0484117707993 8.04072569129428 10.6735654913598 10.1828715200493 9.96968448112454 10.2489827369610 10.0531253810500 7.67165861107142 11.7197788310825 9.57947501239318 9.29625795552166 11.3998640005889 10.1373742414350 9.01100801303883 10.9049803732133 10.1033344160733 9.32410854469947 11.6280330977918 9.85747779740347 9.69796324352113 8.86402817842106 10.1171639601262 11.5280148529030 10.8757601216499 9.80653805805204 9.73017365115883 10.6196452989191 11.7917319631748 9.91330802847372 9.75905627047967 10.2835667875428 8.71599998475651 10.9803639476732 9.45264445714630 9.43835681862873 7.91040504493523 9.04374138942974 10.2119536137048 10.7971784055176 11.1546396794403 8.70620162412084 9.66870517734535 9.87619320128848 10.3404378591972 10.4166902669334 10.3604459390833 9.52905000082007 9.78773022225650 9.19197187636095 9.33759915410536 11.8571358650712 8.78386760180735 9.74288266411103 8.80846479929184 10.7973171856024 8.71773764110380 8.14439559714581 8.34305489301146 10.6670110210607 12.4146862141603 9.61705667616662 10.9746111393636 11.2613670851036 11.2255057655008 11.8794812760294 9.66125009841665 10.9770718448007 9.61885979100899 8.20394806363581 9.75222917260762 10.3807775239919 10.9185911679075 10.8563781321093 10.2231245103995 11.1730192468860 9.72786807833919 8.73372705809844 9.02992561801242 8.86095513474243 11.1177126097330 9.82991216438658 8.61585951453221 9.65034485444263 10.1196333015828 9.67688510208878 11.6637580508535 11.5434488090031 9.48286063156920 10.1694907154755 10.5045025708633 10.1803562858932 9.56685897211484 10.5537178614578 9.05063141544852 12.9054894272364 9.75302003682373 10.2941874860983 9.20946963016349 8.55666581778405 11.1430581055165 10.0936766601589 10.3670319086311 8.14386564486635 10.4535441133938 11.7223379926330 10.5927084785974 11.2144544492494 11.6879516780366 11.4556534338735 8.65122029311518 9.47934281204521 8.40963475436907 10.6278446404594 12.0162482623612 11.4696135507092 10.8674026057028 8.97336288741732 8.95834919952158 9.78664488766869 9.89131930266141 10.7660388327426 12.2657015270320 9.88205821947244 9.96323461539321 11.2232922459353 11.1769593227852 8.28437478168918 9.58148155918462 9.60348889503716 8.92353335913221 9.29170798438943 10.0571438414249 11.2758327997102 10.7733479413764 10.8705727179738 9.18109123035243 10.6157976774387 11.4801845404507 8.71623561375216 12.2037500514460 11.3266086901697 8.79914325310611 10.4582994211230 9.23599690280768 9.55299920735131 9.30433656337055 9.55012430373347 9.46276994556222 9.37910504539161 9.60009122456007 10.4950921294591 11.8306052926597 8.41056780343131 9.86289137162470 \ No newline at end of file diff --git a/infoflow/tests/entropykdeinputy.txt b/infoflow/tests/entropykdeinputy.txt index f21373e..3109e5b 100644 --- a/infoflow/tests/entropykdeinputy.txt +++ b/infoflow/tests/entropykdeinputy.txt @@ -1 +1 @@ -0.0352838833466196,3.25414642630397,127.174125467110,55.9484492997276,97.1842913442583,128.132826851814,134.257001684963,89.6721912051628,153.902153346059,114.359136857583,80.3457188617501,99.8810532509573,93.9612583783169,151.705936507190,67.7399180180822,94.1924973222386,119.891226267253,128.274059220186,77.1952220392693,144.826015620332,91.3734427370813,92.6775445741975,109.569171647130,129.387594467723,129.268989374926,113.952331904389,135.628595660404,100.863637019943,146.714364721742,114.059870938791,75.5333816907051,87.8527414678231,83.9031043530759,87.0245376983282,132.096177966559,86.8003212227529,115.394836160673,108.847572650481,98.8872065010508,114.822386599157,100.529192562675,153.859695935129,78.8995395824050,119.418281612347,100.520527957985,94.0082965516546,76.1251228065192,130.856918640209,116.550956208106,135.797804797369,124.568245079245,95.5387242136329,86.9405592757377,98.5805464369942,128.791201128925,83.7446497471950,104.683801066445,68.5519023722340,92.8810091638652,120.244179527433,135.834142140842,145.194549758999,116.801827825268,121.441145902836,89.9859398849314,74.0810381973525,141.614074518319,125.687822688581,122.414924295213,123.634930648539,101.316341541152,138.991241327505,126.055313568315,104.507351405040,99.2600636370452,108.612478549276,125.238412102596,140.490424338222,135.849077815422,73.9961258769562,125.199483985824,54.5858384995721,78.1975645532311,94.1126875908351,116.209605556189,121.136628319537,112.069006245236,135.844407799633,116.438745813214,137.718560513624,111.443106059229,92.5317300893031,85.8746830589014,141.225900766157,102.149200161146,129.114252279261,111.772247214125,106.689525188197,123.775665472221,95.3173736650583,139.490211757964,147.600909910356,159.305171579385,125.188932334959,136.666197331661,130.416535864242,89.5318094678313,109.738618661830,124.310846308288,88.2065652146817,105.735817104222,81.8732466969638,104.125214259875,116.560307622030,117.639981067020,130.625192128274,134.681976496688,98.2917644864866,133.700757884994,139.205764926517,107.384290280528,116.605855788531,133.687489698630,108.011404476558,96.6050967267261,99.7750257112162,99.5201920892892,90.6495089494644,141.329674128307,67.9651806943752,107.137781417819,113.734291046757,117.607562478339,109.644515164566,81.4939136956194,99.0402077604949,87.4314644688900,126.527002376172,104.664865034223,118.659433090465,110.776274759416,108.239617517187,100.127486408258,83.6182298359949,96.7380553670387,100.471419831291,110.882641204623,122.698866178508,116.109291128145,132.669774054790,113.911342398790,138.621011222762,100.227913225873,103.835519164763,139.803289358530,121.870216685252,116.034793193457,103.352269959100,111.000189572151,92.0058236306331,108.840985654532,110.087422247159,151.059520609764,102.641049537433,106.090822980636,115.069269076996,120.086811623284,119.445110773387,113.681055036038,71.5772057835406,143.754635517773,126.302890439201,102.225045584595,97.0656438195509,93.1197762849286,77.1127545666540,105.005679729001,140.514930654282,81.0346512675447,73.4801323955022,114.098403576681,88.5160970391091,108.316224582343,95.9060904205627,122.985471587905,102.523270682270,114.543079257403,115.668272968867,125.896288845677,117.690763603090,105.603070378097,63.0309572045866,118.095318545262,105.235092785007,128.217442160060,76.3009800785314,138.253621341289,92.8197680422521,97.3968754404170,123.707065753988,174.184386613100,105.156217210789 \ No newline at end of file +-2.36977516364604 0.526533107139457 105.686492962954 80.6654218657734 76.5339089023960 93.3071274138142 116.905703081036 105.587863905571 102.950248597120 90.0425804143035 84.8326443088244 111.144217379212 108.716181164378 81.9328437435660 69.8612777687300 124.681589622447 99.6994762402048 95.7999655294659 111.422395933551 98.0708494207690 104.124431345050 111.783812268559 69.5390566812899 106.851146565039 99.5171364197707 110.025393970471 107.226714484100 74.6324572580568 105.202009016593 84.0321662213681 87.3116281324972 102.719894224737 118.630401437498 111.077856833473 105.348721905774 75.5847107261273 102.348980578141 125.332205380214 60.2740358232517 108.725999581341 55.6556197253784 96.7928943881868 114.903292682931 69.4479164974077 119.299385366449 111.623857733580 120.894184174870 112.069794429579 90.7948431348353 106.536845881143 94.8612679344310 67.9405506218734 106.067509155519 109.631225409333 118.133069230690 102.196811566757 96.8688307705273 48.3816814180842 137.419592893596 83.5815319796415 85.8064985825488 123.701969909375 90.3577430918775 81.8817230864899 113.305612650647 98.2156209495792 73.9489808770926 135.538959515601 92.8673611115571 82.9466325721818 71.9930817298041 97.3263603956290 128.971387066204 118.681674400694 81.6802567393363 87.4161557974104 107.303611617237 136.414232859881 97.2674013121323 86.8901083119275 103.969588153938 80.8318593977582 116.793969977743 95.0578218093878 92.7571447898413 64.4061678723184 85.8855349722596 105.953231348414 127.290929838477 123.741564766070 68.1407489787192 96.8488793387312 99.8971958062047 113.963153333140 103.740746381255 101.595835531606 91.2789225064001 94.1904623846936 83.2871418398823 90.2281601024673 120.645792589086 82.1676506299633 92.4974258972857 80.0494865279451 115.474931091223 78.6551036821793 72.9633522809673 74.5901913176439 108.657575212107 147.053918689807 87.1324992687989 104.380029335810 135.468031635267 126.693227929360 135.773202525579 89.3921475052937 124.665506484925 89.1960913386942 73.5372482471527 93.3566596989440 108.318430697529 143.671006974210 117.314019026879 100.534689532971 119.574786093128 91.9619948464541 75.4970824175246 86.4161732608009 75.1903809104171 119.147250363792 98.3670627356286 79.9251300632622 97.1157284185969 84.1853132345326 104.020589274447 130.328159688381 132.023226756905 84.2873945087663 93.5076788909130 108.188484926375 101.118878334659 90.5845527214834 123.502236836950 80.1779036799238 159.241245442621 93.4827045387028 107.940062138544 83.6553680720919 78.6445464456530 125.143939517355 106.377981103864 105.399154618011 106.043519011825 112.481006607937 138.868457349757 112.686867198434 107.360998136955 128.669956209781 118.447832945830 74.3391137837032 99.4867649047247 69.5701021514799 112.416506746491 139.977795660775 134.943399908104 118.553901556061 82.0336072074735 85.2956136973012 102.697558293726 95.9413179851721 119.878298277848 126.329161805249 100.930872595003 102.894023236275 121.720823419962 108.168760293708 67.6433474647724 82.8042354978638 83.8273137188427 74.8830254955042 98.8327465773339 103.260483899620 127.637979307067 116.827733545422 132.782460321963 82.7005919976379 109.361274618763 133.686197501333 87.0454651344086 112.908177673741 126.767308661043 79.3102024605624 106.267500109259 83.6520624807437 85.3998593920352 85.0236154776730 90.2076535090795 92.5446794529913 83.5587570343297 88.3248557924699 104.927556882141 139.612619345466 \ No newline at end of file diff --git a/infoflow/tests/test_entropy_kde.py b/infoflow/tests/test_entropy_kde.py index 7d13af0..4c93d37 100644 --- a/infoflow/tests/test_entropy_kde.py +++ b/infoflow/tests/test_entropy_kde.py @@ -6,17 +6,17 @@ path = os.path.dirname(os.path.realpath(__file__)) def test_basic(): - x = np.genfromtxt(path + '\entropykdeinputx.txt', delimiter=",") - print(np.shape(x)) - y = np.genfromtxt(path + '\entropykdeinputy.txt', delimiter=',') - print(np.shape(y)) + x = np.genfromtxt(path + '\entropykdeinputx.txt', delimiter="\t") + #print(np.shape(x)) + y = np.genfromtxt(path + '\entropykdeinputy.txt', delimiter='\t') + #print(np.shape(y)) n = 10 timelagx = 2 timelagy = 2 bw_coeff = 1 ans = kde.kerneldensityestimation(x,y,timelagx,timelagy,n,bw_coeff) - result = 0.0086 - print(ans) + result = 0.798553577280728 + #print(ans) assert ans == result From 1deb6adb5b58e8a7c84368f5eb369b306a4e6d4b Mon Sep 17 00:00:00 2001 From: arkwave Date: Thu, 21 Apr 2016 18:00:56 -0800 Subject: [PATCH 5/9] todo indexing fix --- infoflow/entropy_kde.py | 49 +++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/infoflow/entropy_kde.py b/infoflow/entropy_kde.py index 978fa5c..f7d7a0e 100644 --- a/infoflow/entropy_kde.py +++ b/infoflow/entropy_kde.py @@ -19,32 +19,32 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): l, k = 1, 1 sourcearr = source.flatten() - #print ("source array = " + str(sourcearr)) targetarr = target.flatten() # go through the timeseries source and target, and populate source_pat, target_pat and target_t - # ERROR FREE source_pat = [] target_pat = [] target_t = [] - #todo: fix length discrepancy. matlab len = 200, pythonlen = 199. FUCK - for i in range(max(l+timelagx, k+timelagy), min(len(source), len(target))): - source_pat.append(sourcearr[i - l - timelagx :i - timelagx][0]) - target_pat.append(targetarr[i - k - timelagy :i - timelagy][0]) + #print (max(l+timelagx, k+timelagy)) + #print (min(len(sourcearr[0]), len(targetarr[0]))) + #print (list((range(max(l+timelagx, k+timelagy), min(len(source) , len(target))+1)))) + + for i in range(max(l+timelagx, k+timelagy)-1, min(len(sourcearr) , len(targetarr))): + source_pat.append(sourcearr[i - l - timelagx+1 :i - timelagx+1][0]) + target_pat.append(targetarr[i - k - timelagy+1 :i - timelagy+1][0]) target_t.append(targetarr[i]) - print (source_pat) - print (len(target_pat)) - print (len(target_t)) + #print (source_pat) + #print (target_pat) + #print (len(target_t)) - # reassigning to numpy arrays [ERROR FREE] + # reassigning to numpy arrays source_pat = np.array(source_pat).reshape(len(source_pat), 1) target_pat = np.array(target_pat).reshape(len(target_pat), 1) target_t = np.array(target_t).reshape(len(target_t), 1) - # computing transfer entropy [ERROR FREE} - #TODO fix computation errors + # computing transfer entropy source_pat_i = np.linspace(np.amin(source_pat) - 0.1*(np.amax(source_pat) - np.amin(source_pat)), np.amax(source_pat)+ 0.1*(np.amax(source_pat) - np.amin(source_pat)), n) @@ -55,9 +55,12 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): np.amax(target_t)+0.1*(np.amax(target_t)-np.amin(target_t)), n) # reshaping the resultant arrays - source_pat_i = np.array(source_pat_i).reshape(len(source_pat_i),1) - target_pat_i = np.array(target_pat_i).reshape(len(target_pat_i),1) - target_t_i = np.array(target_t_i).reshape(len(target_t_i),1) + source_pat_i = np.array(source_pat_i)#.reshape(len(source_pat_i),1) + target_pat_i = np.array(target_pat_i)#.reshape(len(target_pat_i),1) + target_t_i = np.array(target_t_i)#.reshape(len(target_t_i),1) + #print (source_pat_i) + #print (target_pat_i) + #print (target_t_i) #initializing the probability density function matrix @@ -71,21 +74,23 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): target_pat = target_pat.transpose() target_t = target_t.transpose() - x = np.vstack((source_pat, target_pat, target_t)) - print (np.shape(source_pat)) - print (np.shape(target_pat)) - print (np.shape(target_t)) + #todo fix errors + x = np.vstack((source_pat, target_pat, target_t)).transpose() + #print (np.shape(source_pat)) + #print (np.shape(target_pat)) + #print (np.shape(target_t)) + #print(np.shape(x)) for i in range(len(source_pat_i)): for j in range(len(target_pat_i)): for k in range(len(target_t_i)): - #print(np.shape(x)) xi = np.hstack((source_pat_i[i], target_pat_i[j], target_t_i[k])) - #print(xi) ans = mdkde.multidimensionalkde(x, xi, bw_coeff) - pdf[i, j, k]=ans[0] + pdf[k, i, j]=ans[0] + # normalizing pdf = pdf/np.sum(pdf) + print(pdf) transferentropy = 0 for i in range(len(source_pat_i)): for j in range(len(target_pat_i)): From 81bc093de4de4ea84a1dd8a8c096e736c394d819 Mon Sep 17 00:00:00 2001 From: Ananth Ravi Kumar Date: Thu, 21 Apr 2016 22:51:00 -0700 Subject: [PATCH 6/9] done, more testing req --- infoflow/entropy_kde.py | 74 +++++++++++------------------- infoflow/tests/test_entropy_kde.py | 6 +-- 2 files changed, 30 insertions(+), 50 deletions(-) diff --git a/infoflow/entropy_kde.py b/infoflow/entropy_kde.py index f7d7a0e..3e02270 100644 --- a/infoflow/entropy_kde.py +++ b/infoflow/entropy_kde.py @@ -1,13 +1,15 @@ import numpy as np from infoflow import multidimkde as mdkde +from math import log + def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): """ - :param source: source time series - :param target: target time series + :param source: source time series, 1-D vector + :param target: target time series, 1-D vector :param timelagx: time lag in x from present :param timelagy: time lag in y from present - :param N: number of equally spaced points along each dimension where probabilities are to be estimated + :param n: number of equally spaced points along each dimension where probabilities are to be estimated :param bw_coeff: multiplier that adjusts Gaussian bandwidth :return: transfer entropy in bits. """ @@ -21,84 +23,64 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): sourcearr = source.flatten() targetarr = target.flatten() - # go through the timeseries source and target, and populate source_pat, target_pat and target_t + # go through source and target timeseries, and populate source_pat, target_pat and target_t source_pat = [] target_pat = [] target_t = [] - #print (max(l+timelagx, k+timelagy)) - #print (min(len(sourcearr[0]), len(targetarr[0]))) - #print (list((range(max(l+timelagx, k+timelagy), min(len(source) , len(target))+1)))) - - for i in range(max(l+timelagx, k+timelagy)-1, min(len(sourcearr) , len(targetarr))): - source_pat.append(sourcearr[i - l - timelagx+1 :i - timelagx+1][0]) - target_pat.append(targetarr[i - k - timelagy+1 :i - timelagy+1][0]) + for i in range(max(l+timelagx, k+timelagy)-1, min(len(sourcearr), len(targetarr))): + source_pat.append(sourcearr[i - l - timelagx+1: i - timelagx+1][0]) + target_pat.append(targetarr[i - k - timelagy+1: i - timelagy+1][0]) target_t.append(targetarr[i]) - #print (source_pat) - #print (target_pat) - #print (len(target_t)) - # reassigning to numpy arrays source_pat = np.array(source_pat).reshape(len(source_pat), 1) target_pat = np.array(target_pat).reshape(len(target_pat), 1) target_t = np.array(target_t).reshape(len(target_t), 1) - # computing transfer entropy + # establishing values source_pat_i = np.linspace(np.amin(source_pat) - 0.1*(np.amax(source_pat) - np.amin(source_pat)), - np.amax(source_pat)+ 0.1*(np.amax(source_pat) - np.amin(source_pat)), n) + np.amax(source_pat) + 0.1*(np.amax(source_pat) - np.amin(source_pat)), n) - target_pat_i = np.linspace(np.amin(target_pat) - 0.1*(np.amax(target_pat)- np.amin(target_pat)), + target_pat_i = np.linspace(np.amin(target_pat) - 0.1*(np.amax(target_pat) - np.amin(target_pat)), np.amax(target_pat) + 0.1*(np.amax(target_pat) - np.amin(target_pat)), n) target_t_i = np.linspace(np.amin(target_t)-0.1*(np.amax(target_t)-np.amin(target_t)), - np.amax(target_t)+0.1*(np.amax(target_t)-np.amin(target_t)), n) + np.amax(target_t)+0.1*(np.amax(target_t)-np.amin(target_t)), n) # reshaping the resultant arrays - source_pat_i = np.array(source_pat_i)#.reshape(len(source_pat_i),1) - target_pat_i = np.array(target_pat_i)#.reshape(len(target_pat_i),1) - target_t_i = np.array(target_t_i)#.reshape(len(target_t_i),1) - #print (source_pat_i) - #print (target_pat_i) - #print (target_t_i) - + source_pat_i = np.array(source_pat_i) + target_pat_i = np.array(target_pat_i) + target_t_i = np.array(target_t_i) - #initializing the probability density function matrix + # initializing the probability density function matrix pdf = np.zeros(shape=(len(target_t_i), len(source_pat_i), len(target_pat_i))) - # print(len(source_pat_i)) - # print(len(target_pat_i)) - # print(len(target_t_i)) - #bookkeeping + # bookkeeping source_pat = source_pat.transpose() target_pat = target_pat.transpose() target_t = target_t.transpose() - #todo fix errors + # populating the pdf matrix x = np.vstack((source_pat, target_pat, target_t)).transpose() - #print (np.shape(source_pat)) - #print (np.shape(target_pat)) - #print (np.shape(target_t)) - #print(np.shape(x)) for i in range(len(source_pat_i)): for j in range(len(target_pat_i)): for k in range(len(target_t_i)): xi = np.hstack((source_pat_i[i], target_pat_i[j], target_t_i[k])) ans = mdkde.multidimensionalkde(x, xi, bw_coeff) - pdf[k, i, j]=ans[0] + pdf[k, i, j] = ans[0] - - # normalizing + # normalizing probabilities pdf = pdf/np.sum(pdf) - print(pdf) + + # computing transfer entropy transferentropy = 0 for i in range(len(source_pat_i)): for j in range(len(target_pat_i)): for k in range(len(target_t_i)): - a = pdf[i, j, k] - b = sum(pdf[:, i, j]) - c = sum(pdf[i, j, :]) - d = sum(sum(pdf[:, j, :])) - transferentropy = transferentropy + a * np.log2((a * d) / (b * c)) - + a = pdf[k, i, j] + b = np.sum(pdf[:, i, j]) + c = np.sum(pdf[k, :, j]) + d = np.sum(sum(pdf[:, :, j])) + transferentropy += a * log(((a * d) / (b * c)), 2) return transferentropy diff --git a/infoflow/tests/test_entropy_kde.py b/infoflow/tests/test_entropy_kde.py index 4c93d37..68463e5 100644 --- a/infoflow/tests/test_entropy_kde.py +++ b/infoflow/tests/test_entropy_kde.py @@ -7,17 +7,15 @@ def test_basic(): x = np.genfromtxt(path + '\entropykdeinputx.txt', delimiter="\t") - #print(np.shape(x)) y = np.genfromtxt(path + '\entropykdeinputy.txt', delimiter='\t') - #print(np.shape(y)) n = 10 timelagx = 2 timelagy = 2 bw_coeff = 1 ans = kde.kerneldensityestimation(x,y,timelagx,timelagy,n,bw_coeff) result = 0.798553577280728 - #print(ans) - assert ans == result + print(ans) + assert np.isclose(ans, result,rtol=10e-20,atol=10e-15) From 1caddf9742f0460925081c545d125b3183ba36a4 Mon Sep 17 00:00:00 2001 From: arkwave Date: Fri, 22 Apr 2016 16:33:04 -0800 Subject: [PATCH 7/9] finished kde, testing done. --- infoflow/entropy_kde.py | 16 ++++----- infoflow/multidimkde.py | 2 +- .../{ => input files}/entropykdeinputx.txt | 0 .../tests/input files/entropykdeinputx1.txt | 1 + .../tests/input files/entropykdeinputx10.txt | 1 + .../tests/input files/entropykdeinputx11.txt | 1 + .../tests/input files/entropykdeinputx2.txt | 1 + .../tests/input files/entropykdeinputx3.txt | 1 + .../tests/input files/entropykdeinputx4.txt | 1 + .../tests/input files/entropykdeinputx5.txt | 1 + .../tests/input files/entropykdeinputx6.txt | 1 + .../tests/input files/entropykdeinputx7.txt | 1 + .../tests/input files/entropykdeinputx8.txt | 1 + .../tests/input files/entropykdeinputx9.txt | 1 + .../{ => input files}/entropykdeinputy.txt | 0 .../tests/input files/entropykdeinputy1.txt | 1 + .../tests/input files/entropykdeinputy10.txt | 1 + .../tests/input files/entropykdeinputy11.txt | 1 + .../tests/input files/entropykdeinputy2.txt | 1 + .../tests/input files/entropykdeinputy3.txt | 1 + .../tests/input files/entropykdeinputy4.txt | 1 + .../tests/input files/entropykdeinputy5.txt | 1 + .../tests/input files/entropykdeinputy6.txt | 1 + .../tests/input files/entropykdeinputy7.txt | 1 + .../tests/input files/entropykdeinputy8.txt | 1 + .../tests/input files/entropykdeinputy9.txt | 1 + .../tests/{ => input files}/mdkde_input.txt | 0 infoflow/tests/test_entropy_kde.py | 34 +++++++++++-------- infoflow/tests/test_multidimensionalkde.py | 2 +- 29 files changed, 51 insertions(+), 25 deletions(-) rename infoflow/tests/{ => input files}/entropykdeinputx.txt (100%) create mode 100644 infoflow/tests/input files/entropykdeinputx1.txt create mode 100644 infoflow/tests/input files/entropykdeinputx10.txt create mode 100644 infoflow/tests/input files/entropykdeinputx11.txt create mode 100644 infoflow/tests/input files/entropykdeinputx2.txt create mode 100644 infoflow/tests/input files/entropykdeinputx3.txt create mode 100644 infoflow/tests/input files/entropykdeinputx4.txt create mode 100644 infoflow/tests/input files/entropykdeinputx5.txt create mode 100644 infoflow/tests/input files/entropykdeinputx6.txt create mode 100644 infoflow/tests/input files/entropykdeinputx7.txt create mode 100644 infoflow/tests/input files/entropykdeinputx8.txt create mode 100644 infoflow/tests/input files/entropykdeinputx9.txt rename infoflow/tests/{ => input files}/entropykdeinputy.txt (100%) create mode 100644 infoflow/tests/input files/entropykdeinputy1.txt create mode 100644 infoflow/tests/input files/entropykdeinputy10.txt create mode 100644 infoflow/tests/input files/entropykdeinputy11.txt create mode 100644 infoflow/tests/input files/entropykdeinputy2.txt create mode 100644 infoflow/tests/input files/entropykdeinputy3.txt create mode 100644 infoflow/tests/input files/entropykdeinputy4.txt create mode 100644 infoflow/tests/input files/entropykdeinputy5.txt create mode 100644 infoflow/tests/input files/entropykdeinputy6.txt create mode 100644 infoflow/tests/input files/entropykdeinputy7.txt create mode 100644 infoflow/tests/input files/entropykdeinputy8.txt create mode 100644 infoflow/tests/input files/entropykdeinputy9.txt rename infoflow/tests/{ => input files}/mdkde_input.txt (100%) diff --git a/infoflow/entropy_kde.py b/infoflow/entropy_kde.py index 3e02270..e2e286f 100644 --- a/infoflow/entropy_kde.py +++ b/infoflow/entropy_kde.py @@ -5,13 +5,13 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): """ - :param source: source time series, 1-D vector - :param target: target time series, 1-D vector - :param timelagx: time lag in x from present - :param timelagy: time lag in y from present - :param n: number of equally spaced points along each dimension where probabilities are to be estimated - :param bw_coeff: multiplier that adjusts Gaussian bandwidth - :return: transfer entropy in bits. + :param source: source time series, 1-D np.ndarray + :param target: target time series, 1-D np.ndarray + :param timelagx: time lag in x from present. Integer. + :param timelagy: time lag in y from present. Integer. + :param n: number of equally spaced points along each dimension where probabilities are to be estimated. Integer. + :param bw_coeff: multiplier that adjusts Gaussian bandwidth. Integer. + :return: transfer entropy in bits. float. """ """ All code written here is based on the transfer entropy @@ -23,7 +23,7 @@ def kerneldensityestimation(source, target, timelagx, timelagy, n, bw_coeff): sourcearr = source.flatten() targetarr = target.flatten() - # go through source and target timeseries, and populate source_pat, target_pat and target_t + # populating source_pat, target_pat and target_t source_pat = [] target_pat = [] target_t = [] diff --git a/infoflow/multidimkde.py b/infoflow/multidimkde.py index b661887..c61b2e9 100644 --- a/infoflow/multidimkde.py +++ b/infoflow/multidimkde.py @@ -6,7 +6,7 @@ def multidimensionalkde(x, xi, bw_coeff): """ :param x: np.ndarray, rows are observations and columns are dimensions. :param xi: np.ndarray, coordinates at which joint probabilities are to be estimated. - :param bw_coeff: scalar multiplier that adjusts the rule of thumb bandwidth + :param bw_coeff: multiplier that adjusts the rule of thumb bandwidth. Integer. :return: joint probability at xi """ diff --git a/infoflow/tests/entropykdeinputx.txt b/infoflow/tests/input files/entropykdeinputx.txt similarity index 100% rename from infoflow/tests/entropykdeinputx.txt rename to infoflow/tests/input files/entropykdeinputx.txt diff --git a/infoflow/tests/input files/entropykdeinputx1.txt b/infoflow/tests/input files/entropykdeinputx1.txt new file mode 100644 index 0000000..4f80466 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx1.txt @@ -0,0 +1 @@ +10.4211260079593 9.15959175116347 8.42791637961942 9.79937565892561 11.0935185821076 9.73725099429120 10.2243469322360 9.14123254116025 9.27978556360681 10.4625464979946 11.0532504912095 8.37120765662389 8.31299790562039 11.3632685729923 10.0351674383055 9.78837437910691 10.3025585944617 9.97080241324564 10.3538933865610 10.6079548361543 8.94148954012898 9.47833605650219 9.92537602561508 9.50144983292374 10.4229167707908 8.94229569585545 10.1630719263382 8.31144638274103 8.70392723628035 10.9626524057649 10.7513587129864 10.6985933029311 10.1934766837466 8.55865025366214 9.77089142787289 11.3586402663943 7.86245295803992 10.3451863308292 7.46527397614331 9.68710681121817 10.3649792158121 8.40812696263984 10.8562622100752 9.23978685343992 10.5440053605012 10.4683979739141 9.73608537929506 10.5512564821944 10.0484117707993 8.04072569129428 10.6735654913598 10.1828715200493 9.96968448112454 10.2489827369610 10.0531253810500 7.67165861107142 11.7197788310825 9.57947501239318 9.29625795552166 11.3998640005889 10.1373742414350 9.01100801303883 10.9049803732133 10.1033344160733 9.32410854469947 11.6280330977918 9.85747779740347 9.69796324352113 8.86402817842106 10.1171639601262 11.5280148529030 10.8757601216499 9.80653805805204 9.73017365115883 10.6196452989191 11.7917319631748 9.91330802847372 9.75905627047967 10.2835667875428 8.71599998475651 10.9803639476732 9.45264445714630 9.43835681862873 7.91040504493523 9.04374138942974 10.2119536137048 10.7971784055176 11.1546396794403 8.70620162412084 9.66870517734535 9.87619320128848 10.3404378591972 10.4166902669334 10.3604459390833 9.52905000082007 9.78773022225650 9.19197187636095 9.33759915410536 11.8571358650712 8.78386760180735 9.74288266411103 8.80846479929184 10.7973171856024 8.71773764110380 8.14439559714581 8.34305489301146 10.6670110210607 12.4146862141603 9.61705667616662 10.9746111393636 11.2613670851036 11.2255057655008 11.8794812760294 9.66125009841665 10.9770718448007 9.61885979100899 8.20394806363581 9.75222917260762 10.3807775239919 10.9185911679075 10.8563781321093 10.2231245103995 11.1730192468860 9.72786807833919 8.73372705809844 9.02992561801242 8.86095513474243 11.1177126097330 9.82991216438658 8.61585951453221 9.65034485444263 10.1196333015828 9.67688510208878 11.6637580508535 11.5434488090031 9.48286063156920 10.1694907154755 10.5045025708633 10.1803562858932 9.56685897211484 10.5537178614578 9.05063141544852 12.9054894272364 9.75302003682373 10.2941874860983 9.20946963016349 8.55666581778405 11.1430581055165 10.0936766601589 10.3670319086311 8.14386564486635 10.4535441133938 11.7223379926330 10.5927084785974 11.2144544492494 11.6879516780366 11.4556534338735 8.65122029311518 9.47934281204521 8.40963475436907 10.6278446404594 12.0162482623612 11.4696135507092 10.8674026057028 8.97336288741732 8.95834919952158 9.78664488766869 9.89131930266141 10.7660388327426 12.2657015270320 9.88205821947244 9.96323461539321 11.2232922459353 11.1769593227852 8.28437478168918 9.58148155918462 9.60348889503716 8.92353335913221 9.29170798438943 10.0571438414249 11.2758327997102 10.7733479413764 10.8705727179738 9.18109123035243 10.6157976774387 11.4801845404507 8.71623561375216 12.2037500514460 11.3266086901697 8.79914325310611 10.4582994211230 9.23599690280768 9.55299920735131 9.30433656337055 9.55012430373347 9.46276994556222 9.37910504539161 9.60009122456007 10.4950921294591 11.8306052926597 8.41056780343131 9.86289137162470 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx10.txt b/infoflow/tests/input files/entropykdeinputx10.txt new file mode 100644 index 0000000..3f60054 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx10.txt @@ -0,0 +1 @@ +10.8699833127185 9.68443275893966 10.5474476160265 9.67150769870410 10.7441432241123 9.54103668641083 9.63948659269747 8.87017541640272 8.52449047797456 10.5632632713485 11.1222725620246 10.1693053869160 9.29632394105644 9.08850773421474 9.04290421198221 12.0122190052164 9.90985980443958 8.84689788899307 8.88867199607254 9.28736211049221 9.75906286068963 12.0711034949049 10.0237853657269 8.85450478825283 9.28631148731868 9.05245702052238 11.3083260817942 11.9225930224378 11.3635869955078 9.78374948750941 11.2840706560335 10.0387666785327 9.86887022046866 8.76961125969829 9.66746858109348 9.17092316882893 9.62967933942374 9.46861769610689 9.58077693275956 8.44574988870922 10.5462090906056 8.65154081077131 10.4052637417213 9.40559083878890 9.06690749411444 8.14427566538484 9.73898601602242 10.8774108836587 11.7096320388117 10.7186783456309 8.74706404508343 9.82932986439422 11.3610074119434 10.6392839511152 9.41261046561218 10.5054843441130 10.8199808053511 9.62344252530183 9.28095789013691 9.27298536814906 10.5082888888033 10.3242291915240 9.52174214619540 8.38617504517682 10.0890008381056 9.77536566753334 9.97716400632260 11.4930037953760 10.1230906889496 9.24997610419842 12.2525291832571 9.25516781841040 9.52884670833557 10.9540907070798 8.43651427795226 10.0381509943223 9.89605596658276 12.0771950491055 11.2850531721867 10.4428686324097 8.91364072221276 10.5478482165796 9.43442588280808 9.39819642439597 8.19561808019623 7.67083396995431 10.4020385330024 10.5473996340275 9.49313824486275 10.6522344887757 10.3631325429750 8.62523297109888 8.71135231636371 11.3145773341740 10.6427378694596 9.68452882670857 8.99675469680888 10.3312895113314 10.1723869235317 8.02483359973832 10.9645923912353 9.81285845854804 10.1280154269215 8.56214362722571 11.7281196180565 10.8134092911562 9.11178740562848 9.77150123035137 9.29994387378397 10.4798597047718 10.7740608040303 10.3319113132463 10.5207036542453 10.5506744709158 8.98411503293251 10.6865626905703 9.04885478322149 10.6280760162404 8.90290646349454 11.0863169187603 10.3839231939128 11.0239483519199 9.27226853949843 10.7962177976519 9.21947268315388 9.58929940494356 9.41243469949015 10.5439225430818 11.3974015747748 9.75220803488193 9.89411617013360 10.4888048558715 9.30453936229872 11.3832378372143 10.9727075619210 10.9032900875427 9.63238273389541 8.41996793972577 9.22065755692087 10.3025956484214 9.38350566235906 10.3223236263488 9.27343905631594 9.77293689428016 9.76923820976849 10.4758022466870 8.45789723750968 11.6985410782802 9.47610182866091 10.4343925508904 11.7175294151061 10.0356719075508 11.2214347847136 9.75811363819631 11.0376248731612 10.4131337752811 10.0757996564907 9.62930982077582 10.5059506235190 8.69429413441244 9.06679752181153 10.7464278847451 10.7566364162748 10.4964114398382 9.71242931446934 9.83630448601838 8.47298726801289 8.50357123688345 10.4700811650934 8.96711185957138 10.2816354604784 8.57760356987811 9.62884685481851 9.64703590273127 10.6296940322822 9.97453773122864 10.0339425819693 8.90393445181706 8.80722389874830 8.72291861053948 11.1723380983660 10.4304715913696 10.1669071845318 9.11065465102903 8.73348342541021 11.0315023257774 10.6366611800350 8.88094079691397 11.5910836813201 8.37013420154003 10.3667578176358 10.7998002537185 10.3338328754108 9.19997558276628 10.6557606255287 9.76975641100687 10.2326991152455 9.76774810371417 10.5360980475171 9.53935634159052 8.69901163811486 10.9110337031062 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx11.txt b/infoflow/tests/input files/entropykdeinputx11.txt new file mode 100644 index 0000000..3471583 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx11.txt @@ -0,0 +1 @@ +10.2650031217267 10.5393115623259 10.8366592712663 10.2164277098032 9.04901772325981 12.1126742321417 10.8436693924080 10.4795521298182 10.4971440300976 10.5271959376006 10.7796104939838 10.5808655031939 9.51191407787242 9.26226263615811 8.45726174110138 9.09730438741823 9.21893699600892 11.5561929912459 10.9255724113922 10.6846825452640 11.3523240255352 10.6925082663783 9.57444653100827 8.87366361850511 10.4887045089911 11.5412581064639 8.38452310045086 9.00050241847607 8.34456668599759 8.92953389834645 8.63163435892398 11.6538783805602 9.22816270553699 9.04306317851690 10.7629283350275 11.1923289450496 8.87757966917845 9.27172037043561 9.34918668150888 9.62576903482679 9.98313270529759 9.72775552138250 9.94952966209813 10.1374396069950 10.0064854509544 10.0684736940324 10.7807754310207 9.12232186286621 10.3791617626664 10.1789540774375 8.23276752791774 10.3010362086974 9.36936508193022 9.96495460508096 9.53207524551425 11.1099303764913 9.08566426037886 8.96633059282538 9.39459697716774 9.57051161614223 10.5377656978986 9.64372298026826 8.12033654047367 11.2162242764593 9.69552005140730 9.97535008731363 9.56129311727412 10.3552091610814 9.68149666588918 9.21703852164318 9.51680953635896 12.3770536905890 9.87602543525270 9.59732529013975 9.17746668857288 10.3430333595844 9.65640792089456 10.5487171474989 10.3510012421435 9.85305463059498 9.16161055080809 10.7998992237352 10.7278979420852 9.74942929698285 8.74054439167245 11.7191661485678 11.3168931351180 11.1087712835346 10.0264204707143 11.2541625884703 11.0445974713625 10.2726444185476 9.97452198459473 9.47284229143707 9.53200113846465 8.66335522275122 11.7751530256925 10.8460272340523 10.4070539345584 8.32511230626856 11.1963916550441 9.81359318078762 10.2701931973531 11.1225525354986 10.8093985581362 11.3803302825028 8.44522527388516 7.58279387368937 9.29068407631297 10.2570453056043 8.77075621697050 9.56402014637945 9.77187506522339 10.9949597738548 9.58363660575203 9.57854500323970 10.2094758629416 10.4887785527478 9.18167318521141 9.36675850845245 8.99733783389463 8.55375499586773 10.7145818253566 9.90743176130331 10.5572222737203 10.3933374140840 11.8074585008597 9.59673319208464 9.69826906539365 11.2723290683466 10.9769312033130 7.67419555594442 10.9853633196110 11.6049313128488 10.1431598526012 9.76167706133087 10.1627545790438 8.95682965027942 10.3988065161239 8.83781249979439 9.78115796949206 10.6337276582304 10.4332792119797 7.76849180933676 9.91104784025682 9.31371856804519 9.49266030300822 9.90622695004614 9.34907041338394 9.71246732115887 9.35324053035200 9.51179710383298 10.8226413568566 9.85160274244869 9.38587939003002 9.72412115069804 10.5568309499475 10.6461467501458 10.7434163751031 10.7281193221701 9.49791099280693 11.1046604560937 7.66755989607798 9.55645711874518 10.2140099385349 10.9868096990598 9.84767826270591 9.84855367338394 10.4743073190621 11.6517755548257 9.36818812649911 9.87625683982133 10.4058196271714 10.4931253336097 10.1214738829226 10.7200024866163 8.92410424402206 9.90966428059849 9.41205080880640 10.9855735117227 10.2140306439153 8.71991849272080 10.5175863520236 10.0873662573558 10.5916882520516 9.30785722085465 9.00398131220727 10.6912702687135 10.0675704833073 9.63129305145649 8.88358794328132 9.25245009605866 11.0504712536495 10.0624971987128 9.61169225414984 8.69676599419327 10.8141922535247 8.74098973684215 10.3093092627024 9.35400027716601 9.83051484763655 9.33005003109133 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx2.txt b/infoflow/tests/input files/entropykdeinputx2.txt new file mode 100644 index 0000000..32f15c5 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx2.txt @@ -0,0 +1 @@ +10.6318409530124 7.16601373541248 9.25576748036324 10.2700717983761 10.9182918332496 8.64912081788371 11.7974818562207 9.91660957254912 8.90507902945858 9.50954013455702 9.80292787746478 11.0077965140020 7.78384740479797 9.29569101939955 10.4911665330454 10.7470393361356 8.42610269208353 11.5039627801715 8.77612149208006 9.03865323389737 9.68091545268405 11.0911333840371 10.5900661721793 10.0084172275666 11.1230904984542 9.54823462333672 11.2621802007346 10.0927313507475 7.50522945204675 9.07151418107489 9.35160888585939 8.38642323226040 11.1035632323987 8.58798708822100 9.93944534383898 9.70012039319379 8.89499373993739 10.0798552180579 9.17945515234531 11.5273372934512 8.48953736962610 10.1172949198990 9.42862257581620 9.81530992796106 8.28986406556346 10.8073312655338 10.1640024125707 11.0409798461981 10.5054968700604 8.99979256204306 8.50413680626858 8.79586756887326 10.6608531739480 8.89705811183485 9.87275717631401 7.96219161893087 8.89139363569565 10.2834404545806 10.4052029197912 11.3585470973735 10.5236394310852 10.9807613784375 9.04352056619495 7.53352003355299 11.0304652336622 10.4207327823840 10.4631782357450 10.6301244164408 9.27146558515512 11.0676550169045 11.1109368323771 10.0743973712690 9.48155132023921 10.5170751976988 10.3933902037374 11.2192696255008 10.9380646493422 8.13378557894080 10.1094201392102 6.88337000681965 8.32412143571955 9.08591925295544 9.98553435115938 9.64859635778846 9.87786679453986 11.2383654509297 10.0420545609497 10.8810845035783 9.63470571301103 9.11836598440758 8.81997828416820 11.1313155020844 9.84384184840332 10.4090527109720 9.97542506454374 9.32763154329188 10.6170582582681 9.03668624528981 10.9305673168543 11.2912830257876 12.0954515400647 11.0927460027563 10.4691098521836 11.4217041444443 9.05337502671645 9.49828685535290 10.2471294040471 8.79117112768217 9.74476369270488 8.72904930002751 10.0943716601083 10.2881945250038 10.8224796338302 10.8264201060451 10.9914670414982 10.0257529864149 11.1614730376502 10.7684182512993 9.99069745720303 10.1642869226694 10.8635491392323 10.1637443629387 8.75878498325703 9.16152762685959 9.81025250436673 8.86920713720371 11.2462604515410 8.24476260360485 9.83062107947989 10.2091755258666 10.3277566982267 9.62481508972443 8.49656049106619 9.43699447618267 9.02208642437910 10.7060011313182 9.61421208042732 10.3638100194296 10.2207396351287 9.85438744055232 9.45443775170820 9.17084270483441 9.21077721733288 9.09068212109809 9.96134690598100 10.2213991052413 10.4807132914261 11.2914429140481 9.73265175565752 10.9186467593450 10.0005602483217 9.68504769491907 10.8121852569908 9.75559549172969 10.1698170734502 9.58034499096465 9.97923739317213 8.74527791643718 9.97835495447063 10.0047449102532 11.6076664405184 9.93570849728845 10.2949632647001 10.8281700224201 10.0472541343584 10.1514525516622 9.93034569344075 8.20740788620795 11.3900058891989 10.3000657656261 9.61587701671240 9.86951855727651 9.54425769370143 8.46206208472239 9.85618763374089 11.0518054645395 7.93027151432333 8.23902879152523 9.68564520748099 8.42561802248032 9.67775775466944 9.32961204641624 11.0174561357848 9.45238259044696 10.1348419938131 10.8163391452253 10.1848111785943 10.6567619513822 9.39018250338036 7.82249001506302 10.2613209693918 9.66394476011778 10.6756225983909 8.79166327448905 9.97080480539966 8.92076153999065 9.21349706156629 10.0310217174579 12.4727152047698 9.26229677913903 11.7142482353405 10.2298794311077 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx3.txt b/infoflow/tests/input files/entropykdeinputx3.txt new file mode 100644 index 0000000..d0c67d5 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx3.txt @@ -0,0 +1 @@ +8.68712279225511 11.2008222759502 9.32616779738247 10.1470578706106 10.7589622416932 9.88148857184002 9.87035040722117 9.62121269851203 10.8417859515542 10.7771720323402 9.47372859352674 9.46377488855806 10.6863343900071 11.7072629011385 10.9381260680286 8.87755953163999 10.0005589215132 10.2097127219301 10.1401977742103 9.53240091735119 8.52659217021108 11.4651957319522 10.9901789725630 10.6951126606469 9.78916191338717 9.01965698944994 10.8195530575409 9.13860475680882 9.79329536160289 11.5877546005125 10.7648444050313 9.61922560005608 10.2490963596376 9.53026359766981 8.86529011077183 9.69905537552026 8.73385979171619 11.9368448868538 10.4683440221784 9.11982600764629 9.96049673551932 10.9124483929138 9.53227418253486 9.53144297517207 10.8220958802061 11.5433882957511 11.0732636302507 10.1357271491248 10.4435785718117 9.83040097755627 9.13623546680547 9.19964972603635 9.15959857904428 9.17900175042826 10.0376790092417 8.55715292490037 9.90749431734806 8.21757337813816 9.79058873878764 8.73385373373491 10.0900646026115 10.8742450701078 8.43776087263563 8.89254652517407 9.37991676112020 9.40881183694627 9.66826857443119 8.40503265793917 9.50662985960386 10.8378879021895 9.99270819787789 9.79888445590336 10.2005041140486 10.2513618176361 8.37222129018351 9.89798655815181 12.0322905325582 9.99049542482125 10.2603108586669 11.4404191525530 8.70860436132421 10.7930766218711 9.54343431372376 10.3261667127550 10.7166716402005 9.09430879348780 9.30331713342244 10.5109675355145 10.2218999107429 10.2419455012292 10.5471841334620 10.9843156402386 9.84228780632077 9.06234165986258 10.8863991128891 11.4582240807361 9.39428484984744 10.2013664170405 11.6782180028191 9.80872532005476 10.3170361926729 9.81597893317106 9.20388084584362 9.36524168578662 8.93562531166763 10.0816933458681 11.4916918394694 10.3067575303668 11.6289342190767 9.03080150165845 9.53531639565441 11.6716183451734 8.48337836582741 8.58097358668944 11.7069004071159 10.7697251816355 10.1561128706712 10.1010038768742 10.9050542716790 10.2792402007315 10.0089979350512 11.5781356927687 11.3666569537101 9.98560640043956 8.75368264032345 11.1689815867956 8.74396485973303 7.58706037618213 10.1590386592942 9.76393023994635 9.17775607004175 9.52061160791918 11.2117036715455 9.99610405372922 9.25182019161007 10.0181350640437 8.34672357807855 8.46831751015037 9.75998359696690 8.83273036379170 11.9942735132366 10.7159072416004 11.1057545469090 9.39986847333687 9.25727478019997 10.7015642297385 10.3726423872473 9.54900366867997 8.44947054375670 12.1839791722231 11.3858912827973 8.39189850558560 11.1145788350234 9.74433005680042 9.72216753821834 8.88987004852080 9.52101341161419 9.87747215361412 8.66560384842392 10.2192806996958 8.61220084787630 10.2130623431206 8.62293360971242 11.4189898085115 9.28518516493857 9.67066337196436 9.99656677966183 9.94509705312212 9.70843053623454 8.37718925649165 9.80649321603457 11.0744648834225 10.2472223711899 8.79089451034798 10.8364570431500 9.29976694598483 10.6445764098286 10.0210467510348 7.51876624695013 8.86906394476838 11.6106694303514 9.56144072041915 9.21806781967541 10.2683634888448 10.5376125400447 9.38629404704596 10.2147473327035 8.90259798068661 9.63016472727426 9.50926855229158 10.1166709102030 12.0196713766193 10.1144643728898 9.13557455101088 8.05474153512999 8.80740322334270 11.1006224861181 9.99530016852036 9.34416529973936 11.3419536111677 9.28256760658918 9.99877320213254 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx4.txt b/infoflow/tests/input files/entropykdeinputx4.txt new file mode 100644 index 0000000..6616efd --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx4.txt @@ -0,0 +1 @@ +10.6103805570351 8.59515388246962 10.8020180449088 9.05243959608757 9.51967904051532 9.20293494939102 11.2962498313986 10.5071232224610 10.2488658022493 11.1217370250190 9.08526659173420 8.73389773994555 10.5018407687328 9.99543939181930 10.0540977734974 8.59747263006876 10.7154800338930 11.1088046049631 8.77184801879317 9.91910999023053 11.2407009661172 9.93262637644934 12.0281851275860 9.87557138692570 9.66738759659999 8.71867916763098 9.82035306105978 10.5644001177199 11.9196152573944 9.34305629746825 9.78013703499971 10.1455901915479 10.4502891915369 10.2694141355305 11.5234568574145 10.8343968396128 9.41282685541102 12.3825058588661 9.44568488094508 10.2917249598544 11.6666578905534 11.5604971839370 8.73936141694162 9.77785286340405 9.38926069614679 9.63729881863827 9.90143989639419 8.82921622841512 10.4660265014185 10.1724275512695 10.2017528455289 9.52776926516853 9.68216053590029 7.52550781140965 8.82099046093457 8.90149037331267 10.0747216290694 10.0098750588678 9.52072816092871 10.6468394135868 10.2575793817460 10.9968238551229 9.98684349371780 9.77439236390661 10.5097084020345 10.3011284517050 11.3100733598517 9.99730980209027 10.3900808512607 10.4358101835514 10.4757068982578 9.22173184600659 10.8343063606128 7.73680125002059 9.34728455127179 12.1194467503951 11.4881078232281 9.73141730729840 8.80191124609783 9.37468904445987 8.73657384306021 10.9856884788236 11.5732531719086 10.2497181308371 9.49385471954284 9.80434848495657 11.1556807444921 9.66895147636604 10.4465049798183 8.97853762850369 10.3914615072231 8.38249930012996 10.4671763640169 9.18405696739014 13.1631047953374 10.5680744950835 9.31988499774293 9.91287805387960 11.2075778274746 10.0228466860098 8.49278719158028 10.8087438561312 9.86372880926328 8.93594096278047 11.9372038337941 9.91662633865652 8.90327498008934 12.2138209612678 11.1058051293626 8.72570403808196 9.62404958525454 10.9036046805845 9.34556124470596 10.2736275390581 9.84253617670530 9.68427373734697 8.66873553006879 11.2154079897803 10.4760108238994 9.96446083651725 10.3806400097104 11.3900808650444 9.73583085239218 9.68480253165122 10.3388586806873 10.6959185323645 9.69473691278804 9.01362183420041 8.28208035228852 8.86964562935609 10.7901141041639 10.8345278608530 8.95990248789650 9.85145334440574 10.4505279880321 9.51774806078636 10.4050961113871 8.99432211541346 9.03854931366605 8.83142472715401 10.6360564527561 9.59381373542397 9.06955359125683 10.2869729441258 9.06577628782183 9.52651022468965 10.6287726097009 11.0763175949239 9.96010571830957 10.1977877993512 9.82744943539250 9.51407706439876 9.36283457018050 10.7240835064103 9.69186931798713 11.0728149979498 8.93368501091135 10.5164325414526 9.36427495310744 9.55081526385274 10.0096350485157 7.94848428512748 9.76891968073364 9.20380643695985 11.8134096493782 10.9117073481244 9.83302924865618 8.98774977717048 9.73602966255067 10.1863631526723 10.9259422096014 9.80838742687523 10.9460910702985 9.49038723164343 11.3032671840133 9.47579425733265 8.83059699126035 11.2018045018560 10.5270730836085 9.60437975840206 9.48638209165744 11.6880281012926 9.36361591575425 10.2701815440490 11.2543379248216 10.2208781114359 9.06294749080253 9.91056933410133 10.7879816515658 9.41219213537685 11.2101879668478 10.0616938870044 8.96587972776327 9.11329933308496 10.8940848243391 10.1693658649924 10.4595621517031 8.13954937279221 11.2020892932745 9.74716188836958 10.6773933099402 11.3561739393070 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx5.txt b/infoflow/tests/input files/entropykdeinputx5.txt new file mode 100644 index 0000000..5c2f96e --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx5.txt @@ -0,0 +1 @@ +11.7270068911619 8.41579523886902 10.8626656987514 8.15416466584286 10.5479346352809 9.05234432694326 12.6321645062798 10.0330979838414 10.1710498183299 9.21003831016051 9.53828869196717 9.47052479759552 9.94799362081980 9.88400611453375 8.50048241626127 8.71681952629599 10.6316349677631 10.4617296696861 9.20599782465834 11.4491564244909 9.90690706564297 11.5799988430951 9.34532903218062 11.3248191838337 10.3111689381639 10.6598959834266 9.04389715563274 9.63402866039746 11.9671305362628 9.99181597317834 10.1483370874931 10.6685968664073 10.8077094402491 9.58814056502970 10.3468303639684 10.7399185792555 10.0149656539309 9.07123736118569 11.0543292234290 10.1224038509949 10.1732748383698 11.4956656432092 8.05789728571469 11.1698828685667 9.93794801121276 10.7935303333510 11.0866289584965 8.49371114005896 12.0534000527666 9.88796798497598 7.68214372386712 8.19809788758069 11.4828096441998 10.4111692301845 10.0493119706985 10.2654341840868 9.02290240037656 10.4191615890379 9.41211478793439 10.0841297761832 11.5318617538294 10.5798369040532 11.2231598663209 11.0594057113315 10.1170750055541 9.50616019071974 10.6852954961654 8.91010057643431 10.0716237148465 10.5737896425161 10.5464648531374 9.53281826342233 10.1655147953644 9.96730586173148 8.66085331381632 9.13512866891434 9.14427961711733 10.9604309813678 11.1730287170889 11.6322698363749 11.3446872975439 10.0510596297142 9.89838789016165 10.1822780091760 11.3180391142392 10.2577827294736 11.0652098853878 9.96695985911345 8.03341562813776 9.76134977243869 10.1541252159565 9.17081620503612 9.99426738335109 8.76633274000773 9.80777486230063 9.28342043155585 9.63276737451608 10.6407684774944 10.3744046879337 11.1412852570752 10.6759098047982 9.61482490612409 11.2330157326742 10.3527675503885 8.86011734541595 8.81072342011462 8.97368245124651 8.77314304144444 11.1690873355766 10.1608900919095 10.6528118167382 9.48415847639359 11.4756046692804 10.3173683702707 8.74779090464638 10.8406928615233 10.4839092545371 8.48314848306893 8.57071408766436 10.2658814360792 9.49907855093385 9.59596724217839 10.8377246399169 10.2740352399702 11.1008366340874 10.0329064546147 11.4200788251574 9.62894020687243 10.1120690677785 9.85081440545570 10.0235101693961 8.99991870209456 10.8970936415602 9.47286730862558 8.61465070747557 12.5792806532057 8.99099824211379 7.60335793218288 9.67611354290094 9.25637718412482 11.7370082599057 10.5052280958326 10.3931961495315 9.58029297642141 10.0973767599901 8.25248704598653 9.09384367749916 11.5624163244694 8.81994252464494 9.09793572179835 10.2766701511183 10.0231669700697 10.3632457478131 10.8732798451354 9.68769020623578 12.5400213528925 9.90459325523226 10.9176318689961 9.74248257089684 10.1633020330496 8.59802361192568 10.3126507913930 9.71086478651925 8.32607439443117 10.2646452916555 8.28122448686972 10.3526259530623 10.7207041036651 9.30612085179008 10.4441911309490 10.4104848099263 9.26891880448107 10.0845168101346 8.85693517992194 10.7872641229391 11.0460759484776 9.78711869529681 9.70936306231273 11.9481497319183 8.28067080737457 11.9733248755593 11.2407535589716 11.2699013611197 11.2861119013365 7.63182682061348 10.4537438786464 9.99994706559802 10.1141647091052 9.17066175840966 8.22943848689239 8.92838667890400 10.2920516660923 9.70383315046444 10.6045556333432 11.0884231564073 9.01049827730670 9.88180591089461 10.5753548312776 8.67917168013518 11.5702764862703 10.8203361843919 9.55914917758465 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx6.txt b/infoflow/tests/input files/entropykdeinputx6.txt new file mode 100644 index 0000000..f03aec7 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx6.txt @@ -0,0 +1 @@ +10.5682118244783 11.6943643507069 10.7595802613184 10.7840119991537 9.95626515926753 9.18550534943327 7.99287728013109 10.2735308571107 8.31454173876034 7.42127770842943 11.1325139663172 9.56770097049868 10.3315597002220 8.66290908396100 9.54004070550936 10.1498480532825 11.7559076587597 10.8091109660007 9.03187506900830 9.69935080160656 8.73796417751923 11.0657202353691 9.76961961950237 11.3830325469139 10.0342475937864 9.86264876204301 8.88718307771696 9.29319970295694 11.3129837014162 11.0758352158098 9.78953798626766 11.1133769771906 10.1867058848150 8.53833119364179 9.13797466508616 9.16146809704830 10.0089926281872 10.3656848514336 10.2179047633397 9.52771129737275 10.2519026073486 9.00459720482355 10.3544115572014 8.06184009490316 9.86640130166631 10.7163091111141 10.2593323542538 11.5672603489091 9.78734502413691 9.91490238545491 9.81550141168230 9.45777251177412 10.6020048484515 10.3506191026767 8.44811488791397 9.76917021831674 10.7820782707538 9.33440231546225 9.07477326568342 10.2588929083312 10.6415008691713 10.8081656386692 12.7850168306311 11.2426955324471 10.3312083689818 10.5392827530536 10.8091568053900 10.6901601995665 9.90244705288304 8.62890597032614 10.0937232661512 8.55230617926809 9.96321178495211 9.45539296961931 10.0293483169552 11.7053957667020 11.4104467212196 11.9493992901768 9.33764415232967 8.41707240926490 11.3289615664410 10.5657528164975 10.2036471878452 9.29513756235967 9.93870213896767 9.19139525706288 9.66982623544101 9.01822731343324 9.50826641708350 11.6506322646646 12.0843372216696 9.18443799330031 9.17342809053870 10.7209206882766 10.8958365925155 8.29452625067914 9.22960104978437 8.87667378421056 10.4927458042171 10.9689107016028 9.54638174365367 10.4779638929545 9.26561229580876 9.63152781523169 11.5061379437145 9.84640147049580 10.6886688926300 11.0303975914545 8.92822396417654 10.8047375012714 9.00490186037712 10.8450786563106 10.9461612198805 11.3729882257438 10.4898869910111 10.7544942836655 9.67740957615912 8.51213067032858 9.68655458243701 10.4454912983480 9.58226382753862 10.2446330838397 11.0178782763103 11.5824170258354 10.0893614426154 9.17703711918250 9.40270516786600 11.9079056346844 8.33385510546244 10.1928344029395 9.46431063024809 10.1578554558202 8.19983442007890 8.54073077008699 11.6443360554011 7.96552860782723 11.4674081062009 9.79821102719346 9.20919065944445 9.35142497836962 9.00089406567990 10.6594400740833 9.76394107014312 10.2590161903270 10.9346772469157 10.4027578657703 10.1047634982083 11.3128243804886 9.04322889993681 9.25150367558102 9.85053848824484 8.37088253255288 10.7885593994031 9.37065066524506 10.2818174699455 9.61890165230648 11.9472128829949 9.49723927005526 9.93074257344657 9.35419867024583 10.2450080992716 10.0849332850363 10.7663214620547 8.71752603511623 9.58112884433542 8.29882036490326 10.2883732282388 10.8738714567031 10.3422644225038 9.06200553425700 10.5148587770506 9.48731897191775 9.58875069510569 10.3453739126759 8.37327360837857 9.12030980537538 9.55624902000076 10.0869977710283 9.62695225896288 9.81654902730161 9.57895390403033 11.9346583962252 10.3606602229462 9.05228664948078 10.7954799146044 7.87218447551930 10.8408460697830 7.72291151692899 10.4909203579318 8.30463944734377 9.79974782827695 8.91161419498078 10.1696599350082 9.25449268864492 9.58954646472437 11.6236827471610 8.85415506176861 10.4172104102794 9.23745339646925 8.92556009853946 11.2850549646748 10.4931505447978 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx7.txt b/infoflow/tests/input files/entropykdeinputx7.txt new file mode 100644 index 0000000..a2ce2c7 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx7.txt @@ -0,0 +1 @@ +9.10831262418535 10.3649675453453 10.5128815033715 10.1346361407728 9.30243318728143 10.8988419649234 11.6746816802739 10.5231154128235 9.00503614184859 10.0545419541713 9.90985302269894 7.54519675671010 9.87211645736610 10.8062598454209 10.8463808655356 8.03251593814914 9.70430773575407 10.5550194231713 9.28355852636354 10.2811857014811 8.93345409698931 11.1380299881300 11.3529371253585 10.9630981000060 9.68405492859598 9.90090753853690 9.34030519256688 9.46408540366794 10.7093197435981 10.0007834202894 10.3173105823906 10.8077015925137 10.4734054406572 10.2966996044337 11.2620700504841 10.2489316320795 8.76854195108818 10.0194137322249 12.0235616218007 9.93939045396045 8.73608219736480 10.2257093472097 9.47276018271213 10.8298955592224 11.2966641882766 9.97567317458828 10.9088958666715 9.73562689024389 9.68449864271641 8.68312553144839 9.86750740141552 11.2725556266647 10.4209698604852 9.43085996150950 9.47712062931333 9.51478886225461 10.8417460685333 9.84014670163473 10.1771981536322 10.0279186131482 9.82819491678781 8.32702550609647 11.5777219472284 8.30739528598627 7.41134213053179 9.52568807209273 10.6177604654421 9.65775338823391 9.84091804855198 9.79260876021320 10.4662564632143 10.4195733168964 10.7228725674740 9.35567582188623 9.22632488097280 10.8475885228318 9.80012199534521 9.31190383350263 8.96205056557021 8.67430908535605 9.75443728826117 10.4023995870211 8.76821355969275 11.5934412452591 11.3870774409015 11.3186582969183 10.2538361602377 9.47578867650005 11.1198176146052 10.0509161586328 10.2850225365013 11.3487604263067 8.11138323156253 11.0559375401700 9.53249650441973 8.35257443400422 9.69818028188091 9.42088496101395 8.82616098703290 8.99400656453769 10.6559856625415 8.96860239388148 9.28108604209358 10.0612351254249 8.77126645756226 11.0871644077470 6.88257862683629 9.53158097791421 9.42584951969136 11.1018793832216 10.7655862101776 10.6256895861547 9.75095826113082 11.8226557222174 9.43635478154003 10.0199731708749 9.31946451414365 11.2103394466414 9.19844963397164 8.70145334089993 9.72730137943220 12.1240100961037 9.66220164567108 9.08944662197345 9.87576635245610 10.2716548528592 9.66180948484061 10.5128147010208 8.54852122327588 8.63795121838296 6.51626288462764 9.84180287761962 11.3540262189549 10.2302520284920 10.3028209566069 10.8557676500578 9.41419652824568 9.49251194333394 10.3604594425598 10.7277770055212 10.7261249139052 9.22568337684048 9.67871226590910 8.30061209022208 9.79433444414270 9.00437096601287 10.2451877387782 10.4183038550393 10.9779789947231 11.3060469412589 10.8388382417802 8.06758925351820 9.99448654485862 8.76157697786191 10.6130000414740 9.42441305138842 9.34091025704699 9.47621304219959 8.96869041825971 9.79990358402418 10.9595279970254 10.5755757709878 10.1883180684580 9.91520578791539 6.80952163259072 9.39700046258046 10.1406841219688 10.3408329024592 10.4345091054315 8.98255955295770 9.90108273783564 9.23681836727192 11.1062913766712 11.3047240906311 10.9712735402061 9.83849540219273 10.7572844157418 9.12227465459776 11.2233316397124 10.5095975739285 9.85088180079194 10.6612232328032 10.3933231260897 10.5994698760186 9.68211465468702 10.2625063284952 9.23221850544363 8.49844777964245 9.16265647174391 9.58801910584812 10.6137995018124 8.81823874018819 10.6003700977346 9.03698093017532 11.0467932072608 9.90833466443645 9.73420776955722 8.83441620886372 8.95453767941636 9.74591955547096 11.2157535556506 10.2369704213077 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx8.txt b/infoflow/tests/input files/entropykdeinputx8.txt new file mode 100644 index 0000000..937146d --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx8.txt @@ -0,0 +1 @@ +8.83545595418649 11.4335566132029 9.36410001563383 9.89202693892871 9.50358763142912 9.79469281153747 10.9151340163741 9.33057301147243 10.2783550022562 9.65541220253698 9.55417478764208 9.53076596800855 11.1860951554350 11.3798468770348 10.1175548137057 8.31731745860304 10.0182228522065 11.4616235763191 10.1999124106501 9.48452399707163 9.95852014977452 7.14488065667112 9.08483808612086 9.37575311703804 9.57999457317015 10.1143618357012 9.23712068138727 8.30647792093469 10.4859667362399 9.14760673861622 9.53659193300492 10.6891100658763 9.61387365710792 10.6096031550199 10.1371964333464 9.83973169778055 9.91606758346583 9.03870025211410 10.6584625956050 10.9122458959898 10.7242611869369 10.5141507343800 9.19624133402171 8.37962426895500 9.63414188830499 11.1740907863542 10.6383685539586 9.56445524906770 9.14451994323251 8.72347510035607 9.16106536073056 9.75743211294759 9.59457732638929 9.27144884725113 8.87218863072677 9.89680481098914 10.2505193910675 9.79704276933279 8.05248866982034 8.13009635781035 10.3413988591860 9.79771330195627 9.21538716655519 12.3950482121166 10.9731703941497 10.6302892262997 10.4196666055406 9.93233895104352 12.3687383432045 9.26868726375818 10.7578992257071 10.3603990922921 10.5888667803873 9.77885307602253 11.8748079777348 11.0565893119222 8.46328966059315 10.2243060605864 10.6450112488713 9.73580540662635 10.2658697042193 11.2310756762361 10.2501197653204 11.6631718259852 9.15432442834880 9.39357153394409 9.63423166435817 10.3778171746111 10.3800948828562 10.9173882196552 10.5236573404545 10.3646518334204 10.9465641176681 11.3257262382934 10.9065156919922 8.45821605703384 9.59050442719945 7.98622022911218 11.8434945319536 9.73805853058107 9.98869373168087 8.48126202505768 9.24179175788475 10.9718537468809 8.89153128509406 11.7111516874404 8.53623634115458 8.76481436472468 10.4268705993874 8.51583411019573 7.27008845838900 10.4024652103565 8.99636621300964 9.51397674934620 9.16518719857786 11.1854768115994 9.91191159231914 10.1459467915817 10.2381268224225 7.95454636933184 9.40634712190488 9.97827766290807 9.60276730251280 9.30101595316822 10.2280300843969 7.51305686329482 7.89830962856005 9.88968386943122 8.21924933892797 9.32280012383507 9.56147208558255 9.93676677962202 10.2513896854560 9.99652643397800 10.7303023690346 9.51051924097409 11.4239680426506 10.9112814920151 10.2300498378245 11.9124974484440 9.93773594709629 10.9332531006760 10.1714705333372 11.1589282285337 8.69069596946151 9.14958020966391 9.64671845132405 10.0537536309899 9.84461472676857 9.70781874678893 9.13028229850091 8.42150232516269 8.52896496136686 10.4429745017512 7.78484616932293 10.5584448580086 10.1243080794055 10.4132361633276 9.03428585233010 10.3360827735758 10.1785150067750 10.8570918267586 9.42494186094901 11.7161036188138 11.2528841170793 10.2154999948332 9.96178510459036 9.28711020106278 10.3689379228444 10.2272476035012 10.6774857036818 9.98573386398052 11.0497521309948 9.36984006876480 8.45115375236482 9.00292042844516 11.2888080477792 10.6214564636275 8.71715247088701 9.68163916619617 10.1840129459978 9.58163296351312 11.5110747627322 9.88686263423592 9.88745567839782 9.34227151318213 9.56238450991067 9.76199178732990 8.14098116349394 11.0621348764981 9.70236537477295 11.7807897344393 10.7619913828887 8.89553991998316 10.7040326868792 8.90306875284477 8.89073543549390 9.48960190912397 8.65282741661465 8.89811445206953 10.2307192483505 8.66989676530929 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputx9.txt b/infoflow/tests/input files/entropykdeinputx9.txt new file mode 100644 index 0000000..74b9995 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputx9.txt @@ -0,0 +1 @@ +11.1484782921186 11.9522726757528 9.21394058575818 10.2939286015305 9.83450463432371 8.97517731899396 9.02942432049464 8.26114539372228 10.9605535885094 9.95917247989271 11.0079369688314 9.07009383548916 9.54164938705288 10.5189076565777 9.97246085521597 11.7242593513395 9.30187325329474 11.5071695773565 9.68352063884187 9.72166428712054 9.52850822147427 9.65333892213191 11.6063791953220 9.10194420506970 11.2512420498623 9.88421689525964 9.91895879660444 10.1306089487042 9.87592159444102 8.82102144691104 9.04153865929910 10.2947739350358 9.55925649389788 9.85983696240495 10.8385665016895 10.1207948749458 9.55009936811225 9.93132662168205 11.2733469543859 10.3959522534228 10.8371697492820 10.8972777756425 10.8740342962544 9.14774895238275 12.5351283708246 9.90722244777023 10.0495699015166 8.49986039508151 11.0665384343527 10.5828720962983 10.2472648531914 10.5706702073764 10.9410859523542 10.1897722267160 7.46557945273337 9.87222049064159 9.98854926982567 10.4214652824620 9.89686457863354 10.1256388334917 10.0318591152879 9.94763489793905 10.6740215584615 10.0701008991567 10.8874026566863 9.34278426750702 11.5301615795802 9.06968013831016 9.72715454621711 8.61532746070122 9.46248791444632 11.2955180224151 10.7869811119348 9.32767395389955 10.5467071810763 9.35550911896086 7.85748771973539 9.53226928324136 11.7765044404776 10.1842243191291 7.98795557291185 10.5910375847736 12.2595042875958 9.94183101773074 9.83140327092664 10.6807936095740 9.15521200284697 10.3243172035295 12.5873335998794 8.87720048880181 10.0557840489423 10.6418241604964 10.4663953744844 11.0578556712307 9.97755002699189 9.31619465309141 9.94404124164921 8.15652668434477 9.43747267542940 12.2926359915882 9.29434627644976 10.1620041608564 10.4290318924370 10.4029917370041 9.72547537126354 9.46458573440169 10.3612908094315 10.1474704142183 10.1112197801584 10.4286518471126 9.75020582024616 8.80115146436332 9.22244399379157 10.6815303104925 11.0392075937217 9.32698041997331 8.66387099602025 9.34097967828814 11.0824119297080 10.9079526917574 10.8171897479091 10.9685701128263 9.94446189708534 10.1466184200153 10.7936782390791 10.9123062876007 12.6298061524264 9.12624389716276 9.98704706023450 10.3547480102595 9.02598925762581 8.76272755614988 10.1050688515988 9.22937929651060 10.1009085566213 9.10901677595534 9.87348484834547 10.0747470433434 7.67989918650405 10.7160701255809 8.34307922342545 10.0478422154644 10.0610992821422 10.2371006271129 11.4244142262504 8.41861392181573 9.34927113337002 9.44832900403948 11.5900736112909 11.5279157905992 11.0695120991699 8.40233430223026 9.50097482894088 10.3840540656761 10.4647366841096 9.31935920084505 11.6060499097111 9.42060988966129 10.3915949980223 11.9882375935129 11.6557823733093 9.63293182289005 10.8780262518884 11.6847201742521 9.06615614892900 10.8454920032962 11.9260352203073 10.9000259442306 11.2035804127771 9.98461625796850 8.73705176418049 9.37770164507346 11.6737184272635 10.0051952237158 10.8136201269092 9.18949601677139 8.13993788315746 7.79767542192278 10.3455609308857 7.77004131865223 11.4177431800102 10.6352675055117 10.3201869738312 11.0364862659286 9.79191355980014 8.21101785147177 9.88211800275969 9.26157767856921 11.2435225153492 10.2841851894116 10.4296625288084 9.42426729281466 9.12622503797100 10.0543277074124 9.67718190370466 11.3588598134313 9.49896169327983 9.22307804801861 9.80855834340721 11.1560088349060 9.49031277333000 9.98279323029847 \ No newline at end of file diff --git a/infoflow/tests/entropykdeinputy.txt b/infoflow/tests/input files/entropykdeinputy.txt similarity index 100% rename from infoflow/tests/entropykdeinputy.txt rename to infoflow/tests/input files/entropykdeinputy.txt diff --git a/infoflow/tests/input files/entropykdeinputy1.txt b/infoflow/tests/input files/entropykdeinputy1.txt new file mode 100644 index 0000000..3109e5b --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy1.txt @@ -0,0 +1 @@ +-2.36977516364604 0.526533107139457 105.686492962954 80.6654218657734 76.5339089023960 93.3071274138142 116.905703081036 105.587863905571 102.950248597120 90.0425804143035 84.8326443088244 111.144217379212 108.716181164378 81.9328437435660 69.8612777687300 124.681589622447 99.6994762402048 95.7999655294659 111.422395933551 98.0708494207690 104.124431345050 111.783812268559 69.5390566812899 106.851146565039 99.5171364197707 110.025393970471 107.226714484100 74.6324572580568 105.202009016593 84.0321662213681 87.3116281324972 102.719894224737 118.630401437498 111.077856833473 105.348721905774 75.5847107261273 102.348980578141 125.332205380214 60.2740358232517 108.725999581341 55.6556197253784 96.7928943881868 114.903292682931 69.4479164974077 119.299385366449 111.623857733580 120.894184174870 112.069794429579 90.7948431348353 106.536845881143 94.8612679344310 67.9405506218734 106.067509155519 109.631225409333 118.133069230690 102.196811566757 96.8688307705273 48.3816814180842 137.419592893596 83.5815319796415 85.8064985825488 123.701969909375 90.3577430918775 81.8817230864899 113.305612650647 98.2156209495792 73.9489808770926 135.538959515601 92.8673611115571 82.9466325721818 71.9930817298041 97.3263603956290 128.971387066204 118.681674400694 81.6802567393363 87.4161557974104 107.303611617237 136.414232859881 97.2674013121323 86.8901083119275 103.969588153938 80.8318593977582 116.793969977743 95.0578218093878 92.7571447898413 64.4061678723184 85.8855349722596 105.953231348414 127.290929838477 123.741564766070 68.1407489787192 96.8488793387312 99.8971958062047 113.963153333140 103.740746381255 101.595835531606 91.2789225064001 94.1904623846936 83.2871418398823 90.2281601024673 120.645792589086 82.1676506299633 92.4974258972857 80.0494865279451 115.474931091223 78.6551036821793 72.9633522809673 74.5901913176439 108.657575212107 147.053918689807 87.1324992687989 104.380029335810 135.468031635267 126.693227929360 135.773202525579 89.3921475052937 124.665506484925 89.1960913386942 73.5372482471527 93.3566596989440 108.318430697529 143.671006974210 117.314019026879 100.534689532971 119.574786093128 91.9619948464541 75.4970824175246 86.4161732608009 75.1903809104171 119.147250363792 98.3670627356286 79.9251300632622 97.1157284185969 84.1853132345326 104.020589274447 130.328159688381 132.023226756905 84.2873945087663 93.5076788909130 108.188484926375 101.118878334659 90.5845527214834 123.502236836950 80.1779036799238 159.241245442621 93.4827045387028 107.940062138544 83.6553680720919 78.6445464456530 125.143939517355 106.377981103864 105.399154618011 106.043519011825 112.481006607937 138.868457349757 112.686867198434 107.360998136955 128.669956209781 118.447832945830 74.3391137837032 99.4867649047247 69.5701021514799 112.416506746491 139.977795660775 134.943399908104 118.553901556061 82.0336072074735 85.2956136973012 102.697558293726 95.9413179851721 119.878298277848 126.329161805249 100.930872595003 102.894023236275 121.720823419962 108.168760293708 67.6433474647724 82.8042354978638 83.8273137188427 74.8830254955042 98.8327465773339 103.260483899620 127.637979307067 116.827733545422 132.782460321963 82.7005919976379 109.361274618763 133.686197501333 87.0454651344086 112.908177673741 126.767308661043 79.3102024605624 106.267500109259 83.6520624807437 85.3998593920352 85.0236154776730 90.2076535090795 92.5446794529913 83.5587570343297 88.3248557924699 104.927556882141 139.612619345466 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy10.txt b/infoflow/tests/input files/entropykdeinputy10.txt new file mode 100644 index 0000000..2f01e36 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy10.txt @@ -0,0 +1 @@ +2.86401981632679 -4.94854911299988 345.273856504233 263.545986722876 319.276418280771 260.523970371832 321.111768640312 251.092728846425 259.485599772986 234.950992077765 206.016952352657 306.140508713910 347.066840068738 292.952591329428 247.740369227677 224.109791582258 233.937607708833 390.477166131854 289.070386879345 225.100993476841 218.038689772150 239.473356916052 269.187437402709 407.670976905733 284.319778605264 212.184004020392 242.965147888960 230.172705154591 360.430927572794 407.192872912881 384.381668144826 266.645508081432 348.179947290240 282.847455135174 273.405866418952 223.955400368160 265.532802396632 238.017218487999 271.220791442741 243.472539551234 263.198465013710 200.487482462870 311.039919738915 215.859438685393 302.200628530184 248.053906809050 234.892979829091 186.848026247489 267.131901130426 330.183472207240 385.490979353512 309.297061898123 214.647279035592 278.296267008046 350.528228718622 306.223401201809 249.610300183226 291.927195652532 335.334122110361 264.003644282061 233.713964118747 240.882477405613 313.997891085036 308.570896451151 259.379883337843 204.244319359159 291.734569661934 268.404911190914 286.569481944884 370.438664205860 295.432706297506 230.164349822221 414.932612227029 245.248485874744 253.036762457399 314.213092382511 211.101030588141 292.355387088392 283.226130730802 409.793710551404 356.290742640399 304.291843638892 222.789779450880 311.690274257409 268.179165757725 252.774851006323 186.749115190096 160.270351070418 299.541129502214 311.455959621880 260.356745173480 315.102149502717 299.151092558169 206.728865687126 215.240608432356 352.867946612146 315.222806312601 268.430736631638 220.834563267393 300.387592446737 293.622635190425 196.812362669962 336.518505599841 283.480569320207 306.032686020572 214.536639567414 386.687467341392 332.250776841165 240.473052706217 273.467486780921 247.404979393153 302.797715030719 331.350974124967 304.031340992818 308.800056052756 318.023303806445 229.577980841662 317.128650807298 233.474637150083 312.990025613611 225.970600610837 346.712319424280 306.428171667726 327.414208305788 251.644577560672 328.340603100830 241.954881658689 264.185924435873 266.385749333146 306.975070271205 361.716492791335 269.930397963190 272.958368844206 300.487858145755 246.379096145796 373.422088759869 344.856710941666 336.469573113974 266.837869955345 197.588250985353 233.923750956260 308.866534841222 248.825035673560 297.531397643288 246.825795495649 293.933237618832 277.495129142241 304.488655680941 195.622636903369 361.414880493907 278.128765651994 303.096305297958 394.880673089722 282.911822138995 351.711068420163 259.495899586891 341.982698631177 304.647893698529 281.286837276059 265.814733014773 311.313071430459 226.611501282820 232.356451202109 338.523619953222 318.035274752620 314.782907633182 252.850841678231 284.926315923635 203.308363814603 212.716048954681 307.131969867626 224.722297260277 288.172502095549 202.616733709158 262.749333121599 228.078661919849 307.161508361696 281.978052543357 292.679294666936 217.759771694545 214.948349608562 213.636817308675 343.445932898076 317.422323276705 291.980397827486 240.515334555600 230.355345167299 342.083276077776 306.278878333876 226.414252068328 381.685969383324 193.248301078154 302.442096168377 320.215901463018 295.853028969667 232.541667045530 296.985985972820 268.813859735766 293.951271249511 273.046790430916 310.678155163966 252.584900951619 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy11.txt b/infoflow/tests/input files/entropykdeinputy11.txt new file mode 100644 index 0000000..2a6db48 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy11.txt @@ -0,0 +1 @@ +-4.36741112184345 -1.37270798085363 341.916091298641 340.909094100345 372.983246363701 357.855108458223 253.554457434915 461.758503852793 364.509481413666 342.385115961801 351.452785672520 351.702758769072 368.433696180403 358.754547696442 290.692665639434 266.351836684581 230.136666606385 256.466096933280 272.753416925726 424.384266007538 377.647824223759 356.979955011438 408.581617433575 374.568633830503 289.328941406304 251.506761036644 353.964114823055 428.984472369716 218.782673634854 253.774821734531 218.229087410142 263.477033742802 250.499748113893 428.867781541911 267.887469195064 260.270294095776 357.953933740474 392.873940982051 242.148716414151 255.072400456836 273.496119017097 282.121027959623 310.727191887490 304.899826867435 309.997022068424 330.389401521097 316.853525910991 319.436543490299 366.853556073189 278.954430171685 325.723692362311 317.688484435325 209.937380035294 333.510781498397 276.946193954491 328.626189372546 283.397165929556 385.308993487326 262.634984719116 253.408670385996 280.017325369028 289.787152244237 351.980040129604 298.498956554597 204.352141551258 392.564847379374 296.917507013792 316.757078841512 283.301172227127 343.375511517360 300.071337557627 268.592596416560 280.301862252584 487.892565447186 310.811990814901 290.192404950702 275.339906804827 346.293813591633 296.205897381356 360.544681613587 336.306872869488 303.905304669710 255.304785230070 367.129254094197 365.895181611409 296.193090492363 244.928545209371 429.324382048267 407.310206965932 390.419570226728 307.258374835372 408.039079312591 395.676904750912 331.675982521069 316.900277309629 278.598130925213 281.129794807156 237.586854580126 435.793560982094 366.918613827323 337.314256026606 218.036813698386 400.381501356445 305.976691230338 339.679257740554 391.244102020223 365.987616462306 421.388680094627 231.953725785672 183.723165802938 268.783611212063 333.459921693537 256.529054322739 290.865405200366 312.960226791398 362.608887288330 283.906404849714 300.461023534860 336.735102425948 343.092063317249 263.234597891852 278.691886513319 256.153937293569 229.994059500660 347.450033852242 315.334497951919 352.257968127991 328.443787826210 436.924687105256 279.799955367726 303.544348543178 412.588839881446 387.354312100006 186.061456243544 376.340043060526 422.667803672505 326.971848188815 299.027611784247 337.531250283812 248.071880672468 347.830588787203 235.251471292106 302.300257912350 363.049156935826 344.853290171182 177.618345625114 306.725987062753 282.124901411299 290.345620140808 300.610085204300 271.613073551829 296.496621217950 281.630107130836 292.573033226637 373.452540485830 311.386952359508 278.657368337716 295.675503974151 357.476014880491 358.121229622645 359.605005691043 353.206905606388 277.964091447501 386.257903019906 184.170029448043 290.630195126710 328.149406809001 385.595682428381 306.654495562345 310.098174633188 346.053106330171 425.307601523212 275.173968924267 312.623750042297 345.065597436489 348.895423715683 330.398964240720 361.029545617559 241.862004146302 304.941411431822 288.596178711207 384.767684841682 317.177551752647 240.888977562428 352.421032489979 323.727007167253 345.940956320798 278.119382035135 254.801475801334 361.261791031086 321.930339083102 292.016835880962 242.221053892375 254.944482154293 383.642764865190 310.959582084823 297.559203517726 243.828007101009 364.345956132354 242.992015157273 331.423762530520 276.332716412852 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy2.txt b/infoflow/tests/input files/entropykdeinputy2.txt new file mode 100644 index 0000000..b560203 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy2.txt @@ -0,0 +1 @@ +0.0352838833466196 3.25414642630397 127.174125467110 55.9484492997276 97.1842913442583 128.132826851814 134.257001684963 89.6721912051628 153.902153346059 114.359136857583 80.3457188617501 99.8810532509573 93.9612583783169 151.705936507190 67.7399180180822 94.1924973222386 119.891226267253 128.274059220186 77.1952220392693 144.826015620332 91.3734427370813 92.6775445741975 109.569171647130 129.387594467723 129.268989374926 113.952331904389 135.628595660404 100.863637019943 146.714364721742 114.059870938791 75.5333816907051 87.8527414678231 83.9031043530759 87.0245376983282 132.096177966559 86.8003212227529 115.394836160673 108.847572650481 98.8872065010508 114.822386599157 100.529192562675 153.859695935129 78.8995395824050 119.418281612347 100.520527957985 94.0082965516546 76.1251228065192 130.856918640209 116.550956208106 135.797804797369 124.568245079245 95.5387242136329 86.9405592757377 98.5805464369942 128.791201128925 83.7446497471950 104.683801066445 68.5519023722340 92.8810091638652 120.244179527433 135.834142140842 145.194549758999 116.801827825268 121.441145902836 89.9859398849314 74.0810381973525 141.614074518319 125.687822688581 122.414924295213 123.634930648539 101.316341541152 138.991241327505 126.055313568315 104.507351405040 99.2600636370452 108.612478549276 125.238412102596 140.490424338222 135.849077815422 73.9961258769562 125.199483985824 54.5858384995721 78.1975645532311 94.1126875908351 116.209605556189 121.136628319537 112.069006245236 135.844407799633 116.438745813214 137.718560513624 111.443106059229 92.5317300893031 85.8746830589014 141.225900766157 102.149200161146 129.114252279261 111.772247214125 106.689525188197 123.775665472221 95.3173736650583 139.490211757964 147.600909910356 159.305171579385 125.188932334959 136.666197331661 130.416535864242 89.5318094678313 109.738618661830 124.310846308288 88.2065652146817 105.735817104222 81.8732466969638 104.125214259875 116.560307622030 117.639981067020 130.625192128274 134.681976496688 98.2917644864866 133.700757884994 139.205764926517 107.384290280528 116.605855788531 133.687489698630 108.011404476558 96.6050967267261 99.7750257112162 99.5201920892892 90.6495089494644 141.329674128307 67.9651806943752 107.137781417819 113.734291046757 117.607562478339 109.644515164566 81.4939136956194 99.0402077604949 87.4314644688900 126.527002376172 104.664865034223 118.659433090465 110.776274759416 108.239617517187 100.127486408258 83.6182298359949 96.7380553670387 100.471419831291 110.882641204623 122.698866178508 116.109291128145 132.669774054790 113.911342398790 138.621011222762 100.227913225873 103.835519164763 139.803289358530 121.870216685252 116.034793193457 103.352269959100 111.000189572151 92.0058236306331 108.840985654532 110.087422247159 151.059520609764 102.641049537433 106.090822980636 115.069269076996 120.086811623284 119.445110773387 113.681055036038 71.5772057835406 143.754635517773 126.302890439201 102.225045584595 97.0656438195509 93.1197762849286 77.1127545666540 105.005679729001 140.514930654282 81.0346512675447 73.4801323955022 114.098403576681 88.5160970391091 108.316224582343 95.9060904205627 122.985471587905 102.523270682270 114.543079257403 115.668272968867 125.896288845677 117.690763603090 105.603070378097 63.0309572045866 118.095318545262 105.235092785007 128.217442160060 76.3009800785314 138.253621341289 92.8197680422521 97.3968754404170 123.707065753988 174.184386613100 105.156217210789 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy3.txt b/infoflow/tests/input files/entropykdeinputy3.txt new file mode 100644 index 0000000..bdc9cff --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy3.txt @@ -0,0 +1 @@ +0.794218644747939 -1.04468844503545 99.3789249227249 161.134795731809 109.105438653467 121.788541561579 160.188028675516 114.987713536732 125.332115166548 114.432979167450 131.576131938556 154.850633812855 109.842322070025 113.114132418827 151.486279097247 171.575669674201 148.201661577040 103.088259069078 120.636650280966 133.008860879395 121.797054122909 117.216602819727 84.8911558871980 166.937268957194 154.249462477417 145.074102653141 114.306537316640 93.0326425961460 140.945194018996 103.245354942570 124.693444630373 157.969326489975 156.715876044850 120.030644659671 134.458663767325 102.523362557486 106.040556116949 120.348666249919 91.7082640516325 184.348515655026 136.671300075442 104.871045082034 125.749155169646 151.275447505507 116.320680014576 119.459683870947 146.665663936907 176.305420533000 148.396759177537 130.480461106129 131.747023779185 123.744379933216 118.553567986546 104.384375775718 100.368763043807 105.840037120171 125.281248428192 87.1775512998011 126.488955555420 91.7244749667768 118.542585783956 103.280434259236 127.537814452373 149.875046692428 90.5178989797197 112.003965432670 109.647644275742 112.888299071498 121.480900957029 101.499003747785 116.368330748433 153.226834078452 133.512660319634 115.245147693339 136.090099191305 138.122253633955 84.5419581984678 121.119960580097 185.609600400294 123.759600527895 130.480613143882 169.348361788896 96.0498355007396 146.151767425547 117.807606297912 131.474818554436 138.927492495030 124.278202479196 110.096243580322 143.535372416163 120.820362481464 128.507316184284 136.052727562767 149.589746010068 118.298989091540 103.637706026632 138.428091977606 160.490972337465 111.054243108625 140.219683859852 164.602447974643 124.473948895818 129.846033138380 122.464107156027 97.4676308860056 106.056358970383 97.6854677759830 122.070681357209 182.365525363890 131.560044974487 172.089542544545 104.641556766753 106.342193881062 173.403532799424 93.5302257583297 93.3134509901867 179.399724175992 151.600784156415 136.100857796220 126.465956010439 154.248088625000 142.059969226635 145.537302461651 166.921219832901 158.609595462074 124.833144832568 93.0427064027079 161.567967551884 104.367779176722 67.9510729452957 137.931871117195 132.620707557634 111.769940697840 122.089313425254 163.223196568357 136.009104171417 119.916404806418 132.102212402164 88.7719279744363 95.9746117876215 91.6009340931891 101.078525325381 181.436706447422 140.753834276227 152.847121488221 120.348085323391 106.805069291827 147.292716923035 139.873650684925 116.216178989738 86.7550128306803 183.925735761460 181.407796964287 103.622193238518 160.511542124546 121.017975931701 101.923156756506 97.2958421132368 114.847902023135 132.984341248790 90.8900314779419 130.642108091546 90.9239160426752 122.985959939982 106.531976304930 161.245590432830 106.792597697739 114.651281291447 134.168405461023 122.038854067875 108.650723815768 83.4737883256355 115.941323091400 156.094411864381 132.704893035923 98.4244189300533 146.783797225165 119.903964279605 146.783728292252 128.817252537723 73.1173338646359 102.812819030902 176.970449435560 127.551268270005 111.343266253709 131.093127954494 139.531290133045 109.236773684815 134.082106831450 93.8892657831897 114.988681360412 109.719701638621 127.908113924559 177.805925634832 137.936405010170 105.798478468414 89.2031034668553 107.373536539399 162.074757976097 137.173752807043 101.844821491027 160.885354686347 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy4.txt b/infoflow/tests/input files/entropykdeinputy4.txt new file mode 100644 index 0000000..f19beab --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy4.txt @@ -0,0 +1 @@ +-4.90006847753422 3.31209059864111 170.080008085029 108.132131355859 154.905622798290 117.209797216572 125.786795103144 115.893132629935 181.384675424694 164.043944455993 148.770467415692 183.249966797469 116.489917651943 97.1668852886146 157.523551010507 139.255600405973 139.259637977689 110.141223860009 160.964192163882 153.158772782681 119.172583246436 139.582340231250 179.104938297093 139.776692920111 206.072833201455 147.299385673890 133.280944211264 105.309499285140 137.406665609462 159.075579404644 199.791559868504 120.070745786061 135.879590547072 143.208777725491 148.300236349653 155.403498073043 193.983880171722 159.171510327354 128.333472574329 220.611975911406 121.612117607518 153.400678239226 188.052023001015 190.213504570050 116.494713340363 136.601540165176 120.532975290251 136.499237965420 137.154933852831 100.297501679198 153.640937706599 155.912693547039 138.380497313130 122.687949882987 135.865012794791 81.7500092939165 112.831708354423 116.800164635152 137.694781964725 144.509534880355 130.124503420660 159.585084009615 142.479028396741 163.998380961517 138.373260688662 145.229061527164 161.134551040300 142.574043189848 176.250381650349 124.005919710035 162.441599304388 135.540570984731 154.903817623057 119.119475656220 163.365041432292 80.0915268017268 123.424300713760 211.255775256494 187.562108479989 142.511438591680 116.368937441889 130.983032903707 132.679842666954 157.173405326718 191.223332387869 136.552812195925 139.543222054102 138.584600013670 180.397105476032 143.102661702064 148.234755149877 113.675378713847 164.057221562231 105.705526449500 153.461780738582 118.232183419356 241.307220957295 147.426764483291 119.066862528949 134.839014318069 175.172786968507 141.721515735976 99.1901847949951 165.249493594736 129.021239039945 116.503862929566 183.295839771902 147.659203711524 111.609133436761 190.561083925888 174.025730925457 106.800680913054 144.531982089996 161.087034720469 118.813832363698 149.409756869590 133.987129794768 133.048199358496 114.529929058781 182.035623426661 155.265822954843 145.065110203049 147.710899541312 185.555270874037 134.466497020758 120.814058215660 157.587086762113 170.133589421372 132.315939605052 102.504336882860 100.848326124775 111.938124332946 193.160387528755 170.817012275444 108.987121156612 131.994516604147 149.772944578655 122.476564006502 153.553140379145 129.639587770894 106.450160789945 114.659820116940 173.543985910227 128.886112910594 129.989306135542 136.602484953639 115.488628019879 123.610075696807 159.736580199564 175.463476550901 141.578458579919 146.158088835557 121.743379488853 127.007360127450 129.310960866110 156.403439163878 132.240141221638 174.198807013240 112.632865776885 149.574060280172 123.488733819300 146.592215237725 147.261513289872 85.8814005138639 141.146960651773 123.713410254217 205.328049584769 172.470455300148 131.443842028923 131.164422903656 136.156742616844 143.437078174643 178.891281929546 137.499605398983 171.256223991942 130.540112406827 161.228418155968 132.211465252078 114.431935501084 174.406734758746 165.098858413405 127.609575002483 124.573767672073 187.437901850199 136.084518233004 147.454936559032 179.458568114141 140.179060516437 114.037587753950 122.597268878384 171.918579909856 122.560793874053 174.150524729124 138.664841516418 115.990344523841 114.801856968737 166.807229424619 147.798454990903 149.319049759904 99.6185170158251 179.878510817025 131.125987910169 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy5.txt b/infoflow/tests/input files/entropykdeinputy5.txt new file mode 100644 index 0000000..597407d --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy5.txt @@ -0,0 +1 @@ +1.83487870821779 0.0140473882915352 219.874155085661 125.172364732106 183.950055788040 102.498508966437 179.594808397284 115.161563119113 240.984109516025 148.065110764207 156.115057196180 132.060155356480 144.513785909738 160.060015091338 157.473708277084 153.369193615016 119.283843106605 122.661793890857 181.470653191393 169.550355651311 135.677896586498 220.021753307908 159.373779940439 200.728036545657 135.690224005046 226.867250892749 168.019723933362 177.994263984091 121.397001067086 157.914442937204 223.976298701913 161.225653335767 160.661350726360 185.612780172902 182.057658145178 156.482402678851 164.929351189058 185.822573107031 158.627852921862 126.423249601230 195.570800751192 166.719999087220 160.692095232640 196.313230209155 105.946272816165 199.465592264981 155.908294075424 175.164683004227 194.920230915866 111.910612169836 224.495693831194 156.397038661178 91.7796919176199 106.467810745340 201.133001856723 164.085083713623 158.261142272601 169.679534222458 129.218935087466 168.232939338831 140.063752154282 166.387731052961 212.974517211290 186.040408513630 210.543989306066 196.922767977122 164.658099674969 153.421013262817 182.037679957625 126.287441633678 156.374702293730 176.296499411974 163.711609044714 139.096274183380 165.479408563683 159.442733912174 121.124759346985 131.080365503803 144.543587479981 189.034973408939 179.305519765961 202.677672704880 187.424895040181 168.379294589797 162.383646276798 165.636976136928 200.486757279194 164.243862888931 194.374315321973 158.259987116251 98.2712931529171 143.613463302407 162.331652123853 137.922601981611 157.180448487117 116.856904001933 151.049136728637 133.516091904294 149.111353684425 183.047074653844 177.979743291648 198.096342615528 192.803533564768 145.794398218028 210.254500848237 154.814856268566 129.183153505846 131.436846062318 130.476009737709 115.526420122175 199.501981693790 151.917234918236 192.189057282263 142.024977044889 205.741970421303 167.414893165944 135.146564551158 184.264027171794 175.263060908508 113.111660089025 110.897230013631 163.150768819130 136.480857346257 144.119334394837 181.051736535005 167.941535913050 194.092587912667 163.932597832575 208.086557323026 149.380381960518 159.963778804124 157.651400780991 165.220106504260 125.836141852327 170.609354829131 138.110583368095 134.767176451963 247.285415536672 129.173062080004 93.3113943011140 148.056626995999 132.076941927753 220.528823313754 179.235727239893 166.580971826472 142.484580378959 155.096583989490 103.639337970446 140.595976299566 195.994747209406 123.610356763974 135.718766069710 175.337465469654 167.441655875857 180.533978835842 191.854648304847 147.156019558625 243.143701004735 154.032259188589 188.695071232239 152.743936125251 165.519673343135 116.877388072424 177.262976971349 147.935704720892 117.962225904840 171.184344791032 96.1678114502192 172.529809419522 190.848040820388 144.676445797981 175.092539861514 171.377515133513 139.909918129987 161.111522970675 125.936039662825 185.520407028423 183.985364779968 158.976331270269 142.001960859806 228.212360011368 116.446182115480 210.039685029008 194.975314340313 195.366385758218 201.359490972914 87.8247168622246 172.839731570759 159.953275478273 158.412204210315 140.455717799139 112.197899341622 131.283907774979 168.201047465126 157.470061173011 172.663599417656 184.860065569138 125.684414433886 157.353047753980 167.766549017088 130.752508235247 208.216652042638 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy6.txt b/infoflow/tests/input files/entropykdeinputy6.txt new file mode 100644 index 0000000..a461292 --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy6.txt @@ -0,0 +1 @@ +-3.96459996584403 0.622584329864189 206.894686534139 245.459284458114 202.686700275309 205.520923195937 170.829095022124 148.811609705190 117.098737073461 193.243914798846 134.277055033096 97.0528816270499 223.639108919558 175.603693508665 190.751611316590 141.308555741372 171.504420594854 183.878722402993 263.402753059919 191.775940331655 154.887781607870 169.674262672176 140.546589933155 213.541551576446 163.084437401649 233.151480212968 170.374876144996 175.091261478887 138.705410752271 151.207570332766 215.145449136324 216.395271602628 174.968415584786 222.790984729979 187.016235127681 126.201154289562 146.084585967288 151.080469156860 156.197434473434 185.583526083779 183.243150651426 157.822908977315 193.257225582152 141.571579427348 188.000342803846 113.534054506897 173.688143570763 212.992978206956 183.642965980676 230.122773376086 169.506342094642 184.863929326567 163.025006603621 171.481579597932 202.266396057966 192.137237577420 121.052145702927 172.729565038639 198.375193934805 159.464005194002 138.549947988583 186.808979610386 204.466469819147 215.708243818054 280.267504100136 216.956459247012 196.299288389899 198.056032786305 209.271312915542 198.986669244492 169.055983341828 120.452483111304 182.516137259613 128.405256979363 172.411828187748 161.797179026965 169.633163730933 240.156927036069 224.893517327849 256.223115214159 160.961487996064 116.049627950341 229.255965381375 202.656704966845 185.952942294618 139.305273043947 181.181289444140 147.810921010579 165.588894723822 152.694627002143 161.343059198015 243.137672537064 253.572114984176 160.707312062753 160.595275933486 210.168872255207 207.053618969622 120.827506015618 150.112333240473 138.419085454588 194.641467509340 221.434623626364 160.889010534110 198.403216831616 154.346525076716 165.307408435252 226.850915661095 184.052601504946 196.765228241175 204.188148804158 145.093667707819 207.443358059757 160.082208860180 211.301539277652 211.159119470406 228.356018824356 195.685193492025 210.236486358950 161.998900521879 133.177201615096 156.848395040451 197.058364098423 165.735464367093 186.790691217864 218.527305861807 233.148382847312 178.423634306586 152.235642879544 153.842614455792 250.955658258578 113.566080659056 184.692912477058 168.022773446513 174.757307432897 120.207707661448 131.991019662243 230.790565142353 119.424892514194 232.932054386066 160.606037767782 168.034957313269 168.556361842776 143.932355626794 212.448807003133 162.848266859811 191.519999614441 212.950417722487 191.024034264290 179.886371227673 225.875941104697 137.042253470347 140.603370438290 169.083432653933 119.909829385922 203.470809726702 158.498327466595 165.983836422424 159.229746570658 249.993998927178 160.346850443375 178.230697284612 157.962860537306 183.670550463484 179.629407351644 205.705994148227 144.117294347180 166.055535652621 119.488938992834 192.137163177857 207.918159926913 193.533184225656 145.579139815800 197.123105944153 161.628338081957 165.848930484726 195.648022651946 123.403910672948 148.454440143827 162.809457944898 182.566922403863 173.403727358732 177.709740902800 158.725007916910 244.474664760464 198.000067497482 144.634655143284 194.694461717528 114.298663771426 214.819980361569 115.352098404427 198.506568083686 124.394713335736 173.875740312248 137.367745836623 188.480172694046 148.598603469557 166.212787677783 245.241253702786 144.049766503510 210.791658452248 151.641867148525 166.878249644645 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy7.txt b/infoflow/tests/input files/entropykdeinputy7.txt new file mode 100644 index 0000000..eb31e0d --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy7.txt @@ -0,0 +1 @@ +0.359889755014511 0.415302779613389 163.629160612414 201.474829439113 228.107304643176 200.769440544884 182.433808584692 241.267292306416 271.352676141151 216.308739762455 151.163030137769 195.582328002452 190.116430752860 112.256984856469 188.158051017288 229.965414829626 228.257973529000 130.195995082020 190.047307505670 238.534160104285 174.971178584017 227.441629327434 160.377193283573 239.284410308111 259.572605643200 239.050014333752 195.346146223836 196.591685634440 176.157285041610 185.263059916600 224.047983691631 200.152332390900 201.279345160418 237.165969937482 223.589332366689 208.576199452948 242.847455046253 200.265508458304 150.269462064144 197.317973621699 281.166036237514 189.994848206438 153.752622844215 207.704478677044 184.317451130711 229.328831862922 247.617773909700 195.991494095447 244.484025910230 185.223007255173 178.535785731684 141.260412581712 176.920018594001 260.322062605460 213.438667369029 173.488937868897 175.257245424185 175.266440941556 235.252655162774 203.096196857464 200.212983417304 203.724139235386 197.584743331691 130.941580620697 257.543639039216 143.772686995912 112.074601123608 182.099273605003 232.098347019342 198.597527634638 190.984969204929 192.318010504510 211.837198474458 216.820037164708 233.462950825559 169.944151286772 162.688367395124 228.712048796656 186.607846360039 171.810780364412 154.984586816626 164.371780263609 185.538102726006 222.482983058398 158.812027295602 265.529945853526 270.847478872406 254.071786805687 205.045845078928 186.187742155880 234.805343559175 200.759636148186 217.545066565713 244.499469430588 130.158236891708 248.763299372806 177.862161807606 136.477919835420 185.196154731905 161.294909547096 168.264980419677 161.555294590189 224.843678910004 171.009473046364 169.897203470716 208.563276578201 148.354703993954 243.952116115244 108.250218803362 187.498834061792 174.548875616668 225.554504340356 213.341883132299 219.075613190783 177.788784003781 283.507236837199 182.818603525735 204.253717465975 168.559613713835 249.127446030231 170.349993528201 146.612619178443 189.233783500891 288.961906105534 185.697995329251 170.589754620918 199.527109881667 212.731951031558 185.350459970367 217.180172414093 139.980141548288 152.136767558335 84.4428242427083 200.726554674287 262.188254557400 207.246560362869 204.207319724338 239.581582862700 186.543540602020 173.208037892830 211.161100493711 227.239424286174 239.938351533284 155.588841682406 190.199552542686 132.431923306523 191.686428956452 168.340315003365 215.054324203313 221.487317422824 239.161450497535 254.847862491365 266.550615031273 124.509593332301 201.899036446319 150.718855927180 228.948004380034 178.468625984734 175.022316256298 178.101661855760 167.363990770031 185.594416223135 244.351011697230 228.994440889334 204.403902190224 187.823362972754 101.639532615839 172.672633317551 215.865792894850 220.643444174642 211.583841317946 159.735810556165 195.257663514930 178.056432115275 251.227403949703 260.776835084099 236.035329792404 191.377858595708 225.879538709028 168.579256119363 260.386771338431 231.286060735653 184.412848435826 222.857569314866 197.863824638788 222.335497091117 173.709719544120 206.220821110479 173.743911022405 151.522916774220 173.491164411253 181.643509665187 230.582070387675 157.711936979643 232.506206884309 170.683177881815 245.315391504801 204.362206445077 194.586099031266 150.350022590942 156.691256070092 193.605112915871 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy8.txt b/infoflow/tests/input files/entropykdeinputy8.txt new file mode 100644 index 0000000..269bfeb --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy8.txt @@ -0,0 +1 @@ +-3.88705769849928 -7.54880813142047 168.053009875412 274.800384223348 185.449327500384 219.354229769879 186.143827938749 214.201501873088 266.456384739499 187.108469728756 241.017064182719 217.220969598547 233.884137190358 205.362211210899 280.896481102412 296.564534751303 226.051698316231 144.252055077593 233.310359184860 290.562804899436 231.015469176650 205.775473222329 215.760812701800 113.132668302797 213.376184033612 203.328444837728 202.050631033409 223.837847060270 164.791786367758 162.507092424889 246.306740820695 194.489735865887 202.897575681533 257.666550471458 208.904597062526 250.400453370237 233.255020453239 214.917593895116 220.881006161514 180.810917876616 253.988098264899 272.029071049729 248.163080628038 240.551079063049 187.092645330463 157.839890865193 209.015355444202 284.109154647441 254.349835416079 205.412094476730 181.278832243873 180.940955824583 186.340032711265 212.355848270252 206.337486418730 186.278989634803 177.340387394603 218.621528454998 235.051642496469 217.225110805746 150.127573841694 157.672817728830 243.571341370762 211.307772269634 176.459739455966 343.254861179258 281.690569128732 249.676560014985 221.112760536632 214.843798194823 329.906403572683 179.613854516064 262.681540464236 248.475575497755 251.238060484755 221.091249179660 314.778799135123 279.202426866888 166.127956449281 241.979691609750 240.641556152482 210.446953356371 235.519244446747 285.804291738949 233.742618917273 305.516188580962 190.061328938484 204.991263700459 217.063116290433 245.694769712223 235.529228161524 270.231434106765 250.432930411334 241.634084816343 259.235774611538 288.159780264776 261.528515349576 159.503364819878 185.502341445702 144.179922233581 310.994420170601 206.039185832010 220.534277060511 155.240129073376 192.385518494094 269.503952681938 177.862404311316 314.716784721480 163.922800023036 171.057453450523 243.781757310969 159.051098117931 125.331780882987 248.265703618984 172.337910990349 201.475994390164 204.241982356811 281.977894306475 230.516114606557 220.218523400246 233.541488910969 142.025090273116 194.098044689707 224.849277387471 206.143029271804 187.128963280108 226.943823418374 120.455772768598 121.152090899907 214.293209874028 153.519952519891 196.585665116480 200.527886931607 207.435967825708 237.872449774034 224.874705135835 261.664302520257 215.106427107296 279.895825541995 262.312965647207 236.945481701249 328.763857068784 224.605793011736 246.437869608804 225.880425788296 282.052869324256 168.930133206789 185.701626504265 214.390662598442 222.655625429682 218.023600144616 200.047259780633 186.729198906196 164.727681456190 157.295545902996 259.933428614640 138.677208638757 238.477317443737 224.600469591448 249.488116808456 179.697189064544 237.266142328411 224.178869231019 268.262300734031 200.277827670476 311.525724088216 279.094100836544 233.406985015096 224.021612767684 186.433437562740 257.153963035833 250.018170053648 263.947157877173 220.298211704532 274.621543693360 199.753524056361 163.403161339044 181.627187089388 293.846377973292 255.165466936323 170.095851706680 213.567108760735 238.037090266960 212.099621353614 301.388136715548 223.183458457541 209.321850517184 196.951045591184 197.492062377110 215.154964297703 146.305277181084 264.908734877539 217.149113599308 293.616338076762 275.553118510000 170.621047634189 247.137769657523 174.570725220584 176.769036380863 203.576071356103 161.619538403624 169.907324621579 \ No newline at end of file diff --git a/infoflow/tests/input files/entropykdeinputy9.txt b/infoflow/tests/input files/entropykdeinputy9.txt new file mode 100644 index 0000000..f164a4c --- /dev/null +++ b/infoflow/tests/input files/entropykdeinputy9.txt @@ -0,0 +1 @@ +-0.665194562985509 4.11977417434772 317.106719035639 363.150705980869 214.257384233941 267.201830884311 247.166885071456 201.860675703545 201.333016812430 161.686056423482 299.329719050903 250.681527975533 305.683407579066 214.822176654429 235.975619300068 275.665227210148 251.114348860600 326.510815100545 210.047603238981 332.125832057806 234.455352371034 244.820978560299 228.768376136981 227.554153599159 344.037726034134 212.168761344451 320.465447710996 244.949802771998 251.187156617065 268.669593186762 248.897013820528 188.945620867624 198.148877394216 269.994807557303 240.192756683503 264.606557694251 287.265110326627 258.514916135555 235.720294366584 242.796263109014 323.664499612348 278.352468097940 293.627293994533 299.048954831842 292.976105975771 214.510739135507 391.182631396524 236.660086666093 260.529286732164 178.211946767079 308.899866730161 283.737336819221 261.969200764347 277.087356186720 296.272267689679 269.227691430927 141.944744129897 264.329176103339 241.391441922101 276.937097252932 230.992640224068 257.560070482342 257.479843798449 242.482795421898 286.474715187550 253.631758839606 293.977252348545 222.131947526178 340.570750253439 210.947543126402 236.648762536659 179.191810552448 216.832568598119 326.499285466177 282.152193060486 205.110415990777 278.906634078059 216.597551355767 158.016595926988 231.710783695419 355.350303291715 261.312387294194 161.378622073548 285.798911133044 358.574051881272 252.554477119615 239.150918556644 278.689127298639 209.087640072589 267.581243612932 394.573214766069 210.515976372586 253.830596051513 274.379872438680 272.599757625664 298.194115337910 237.788295985650 219.998972764111 247.752803787255 162.532129641728 237.820986467200 375.820266577438 223.405815693854 265.511975089544 281.309520931491 275.995487799478 257.080175381055 219.549663488995 271.986476703145 267.377877348643 261.023150640392 278.960888733565 239.512442608351 194.482183829813 215.900011466973 288.746411381541 306.600030525575 214.064247520876 185.591624371350 206.560760606274 306.127388106974 300.501320214761 291.249421574011 308.952090804113 248.986752933181 259.158619108299 291.916415557658 302.728420017447 398.733172927603 204.879756719629 262.554574016816 275.163732299688 193.906347640617 182.217193028871 259.915979691297 223.028557912972 250.015333879184 204.630724461998 244.908737151700 252.019566638471 146.808151580138 287.259634118197 169.641218115143 264.972367347216 254.290898859652 266.177683438449 337.956653275462 183.096680425701 211.084450478512 210.642472407963 338.491373875571 326.430949278072 288.163738618763 175.675016270529 228.483956890454 272.058813709030 263.999380774557 223.596050091764 334.086821914033 224.383055438306 269.809224327035 364.962849876708 351.694625480798 241.906140217700 295.828804314756 356.036311795163 201.955158169571 296.226428147671 360.218645410159 302.887356955053 314.855941359686 252.562108373974 187.123138587980 212.640401636235 337.001255573040 260.149765613175 297.028394901860 202.728357077279 163.776416980865 155.752900590427 270.500695679223 156.528094486527 333.119688064465 313.607855574373 264.311003617319 304.142373049939 247.420198020377 172.525176217368 245.766513549399 218.491086078796 319.261532090874 267.240680914157 274.740272074990 234.707194855175 208.723815203414 265.156400463201 229.895390390171 325.216317128433 244.071475894728 212.092632495918 246.538162547233 301.564817592717 \ No newline at end of file diff --git a/infoflow/tests/mdkde_input.txt b/infoflow/tests/input files/mdkde_input.txt similarity index 100% rename from infoflow/tests/mdkde_input.txt rename to infoflow/tests/input files/mdkde_input.txt diff --git a/infoflow/tests/test_entropy_kde.py b/infoflow/tests/test_entropy_kde.py index 68463e5..a0ec6de 100644 --- a/infoflow/tests/test_entropy_kde.py +++ b/infoflow/tests/test_entropy_kde.py @@ -5,29 +5,33 @@ path = os.path.dirname(os.path.realpath(__file__)) + +# tests first case of matlab demo script. def test_basic(): - x = np.genfromtxt(path + '\entropykdeinputx.txt', delimiter="\t") - y = np.genfromtxt(path + '\entropykdeinputy.txt', delimiter='\t') + x = np.genfromtxt(path + '\input files\entropykdeinputx.txt', delimiter="\t") + y = np.genfromtxt(path + '\input files\entropykdeinputy.txt', delimiter='\t') n = 10 timelagx = 2 timelagy = 2 bw_coeff = 1 - ans = kde.kerneldensityestimation(x,y,timelagx,timelagy,n,bw_coeff) + ans = kde.kerneldensityestimation(x, y, timelagx, timelagy, n, bw_coeff) result = 0.798553577280728 print(ans) assert np.isclose(ans, result,rtol=10e-20,atol=10e-15) - - - -def test_inputs(): - return 0 - - -def test_outputs(): - return 0 - - +# test all cases of matlab demo script. def test_all(): - return 0 + n = 10 + timelagx = 2 + timelagy = 2 + bw_coeff = 1 + resultarr = [0.798553577280728, 0.845537518582966, 0.879353564494117, 0.862343316961739, + 0.946161823385283, 0.967731331557469, 0.971018899881274, 0.991938112384209, + 0.997664153887389, 1.00943865954647, 1.03324658910437] + for i in range(1, 12): + x = np.genfromtxt(path + '\input files\entropykdeinputx' + str(i) + '.txt', delimiter='\t') + y = np.genfromtxt(path + '\input files\entropykdeinputy' + str(i) + '.txt', delimiter='\t') + result = resultarr[i-1] + ans = kde.kerneldensityestimation(x, y, timelagx, timelagy, n, bw_coeff) + assert np.isclose(ans, result, rtol=10e-20, atol=10e-15) diff --git a/infoflow/tests/test_multidimensionalkde.py b/infoflow/tests/test_multidimensionalkde.py index 8b3bab3..c7f8a1e 100644 --- a/infoflow/tests/test_multidimensionalkde.py +++ b/infoflow/tests/test_multidimensionalkde.py @@ -9,7 +9,7 @@ def test_basic(): Note about test: ans[0][0] - result ~ 10^-34. If system is chaotic, could cause errors. Double check floating point bs. """ - x = np.genfromtxt(path + '\mdkde_input.txt', delimiter='\t') + x = np.genfromtxt(path + '\input files\mdkde_input.txt', delimiter='\t') xi = np.array([6.921252431034000, -18.53087722427270, 37.295725015630570]) bw_coeff = 1 result = 4.67184882019e-22 From c172ff5dca85e5ac60a152ae7e48afb02565aa99 Mon Sep 17 00:00:00 2001 From: arkwave Date: Fri, 22 Apr 2016 16:35:01 -0800 Subject: [PATCH 8/9] finished kde, testing done. --- .../tests/{input files => input_kde}/entropykdeinputx.txt | 0 .../{input files => input_kde}/entropykdeinputx1.txt | 0 .../{input files => input_kde}/entropykdeinputx10.txt | 0 .../{input files => input_kde}/entropykdeinputx11.txt | 0 .../{input files => input_kde}/entropykdeinputx2.txt | 0 .../{input files => input_kde}/entropykdeinputx3.txt | 0 .../{input files => input_kde}/entropykdeinputx4.txt | 0 .../{input files => input_kde}/entropykdeinputx5.txt | 0 .../{input files => input_kde}/entropykdeinputx6.txt | 0 .../{input files => input_kde}/entropykdeinputx7.txt | 0 .../{input files => input_kde}/entropykdeinputx8.txt | 0 .../{input files => input_kde}/entropykdeinputx9.txt | 0 .../tests/{input files => input_kde}/entropykdeinputy.txt | 0 .../{input files => input_kde}/entropykdeinputy1.txt | 0 .../{input files => input_kde}/entropykdeinputy10.txt | 0 .../{input files => input_kde}/entropykdeinputy11.txt | 0 .../{input files => input_kde}/entropykdeinputy2.txt | 0 .../{input files => input_kde}/entropykdeinputy3.txt | 0 .../{input files => input_kde}/entropykdeinputy4.txt | 0 .../{input files => input_kde}/entropykdeinputy5.txt | 0 .../{input files => input_kde}/entropykdeinputy6.txt | 0 .../{input files => input_kde}/entropykdeinputy7.txt | 0 .../{input files => input_kde}/entropykdeinputy8.txt | 0 .../{input files => input_kde}/entropykdeinputy9.txt | 0 infoflow/tests/{input files => input_kde}/mdkde_input.txt | 0 infoflow/tests/test_entropy_kde.py | 8 ++++---- infoflow/tests/test_multidimensionalkde.py | 2 +- 27 files changed, 5 insertions(+), 5 deletions(-) rename infoflow/tests/{input files => input_kde}/entropykdeinputx.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx1.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx10.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx11.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx2.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx3.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx4.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx5.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx6.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx7.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx8.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputx9.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy1.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy10.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy11.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy2.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy3.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy4.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy5.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy6.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy7.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy8.txt (100%) rename infoflow/tests/{input files => input_kde}/entropykdeinputy9.txt (100%) rename infoflow/tests/{input files => input_kde}/mdkde_input.txt (100%) diff --git a/infoflow/tests/input files/entropykdeinputx.txt b/infoflow/tests/input_kde/entropykdeinputx.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx.txt rename to infoflow/tests/input_kde/entropykdeinputx.txt diff --git a/infoflow/tests/input files/entropykdeinputx1.txt b/infoflow/tests/input_kde/entropykdeinputx1.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx1.txt rename to infoflow/tests/input_kde/entropykdeinputx1.txt diff --git a/infoflow/tests/input files/entropykdeinputx10.txt b/infoflow/tests/input_kde/entropykdeinputx10.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx10.txt rename to infoflow/tests/input_kde/entropykdeinputx10.txt diff --git a/infoflow/tests/input files/entropykdeinputx11.txt b/infoflow/tests/input_kde/entropykdeinputx11.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx11.txt rename to infoflow/tests/input_kde/entropykdeinputx11.txt diff --git a/infoflow/tests/input files/entropykdeinputx2.txt b/infoflow/tests/input_kde/entropykdeinputx2.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx2.txt rename to infoflow/tests/input_kde/entropykdeinputx2.txt diff --git a/infoflow/tests/input files/entropykdeinputx3.txt b/infoflow/tests/input_kde/entropykdeinputx3.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx3.txt rename to infoflow/tests/input_kde/entropykdeinputx3.txt diff --git a/infoflow/tests/input files/entropykdeinputx4.txt b/infoflow/tests/input_kde/entropykdeinputx4.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx4.txt rename to infoflow/tests/input_kde/entropykdeinputx4.txt diff --git a/infoflow/tests/input files/entropykdeinputx5.txt b/infoflow/tests/input_kde/entropykdeinputx5.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx5.txt rename to infoflow/tests/input_kde/entropykdeinputx5.txt diff --git a/infoflow/tests/input files/entropykdeinputx6.txt b/infoflow/tests/input_kde/entropykdeinputx6.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx6.txt rename to infoflow/tests/input_kde/entropykdeinputx6.txt diff --git a/infoflow/tests/input files/entropykdeinputx7.txt b/infoflow/tests/input_kde/entropykdeinputx7.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx7.txt rename to infoflow/tests/input_kde/entropykdeinputx7.txt diff --git a/infoflow/tests/input files/entropykdeinputx8.txt b/infoflow/tests/input_kde/entropykdeinputx8.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx8.txt rename to infoflow/tests/input_kde/entropykdeinputx8.txt diff --git a/infoflow/tests/input files/entropykdeinputx9.txt b/infoflow/tests/input_kde/entropykdeinputx9.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputx9.txt rename to infoflow/tests/input_kde/entropykdeinputx9.txt diff --git a/infoflow/tests/input files/entropykdeinputy.txt b/infoflow/tests/input_kde/entropykdeinputy.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy.txt rename to infoflow/tests/input_kde/entropykdeinputy.txt diff --git a/infoflow/tests/input files/entropykdeinputy1.txt b/infoflow/tests/input_kde/entropykdeinputy1.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy1.txt rename to infoflow/tests/input_kde/entropykdeinputy1.txt diff --git a/infoflow/tests/input files/entropykdeinputy10.txt b/infoflow/tests/input_kde/entropykdeinputy10.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy10.txt rename to infoflow/tests/input_kde/entropykdeinputy10.txt diff --git a/infoflow/tests/input files/entropykdeinputy11.txt b/infoflow/tests/input_kde/entropykdeinputy11.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy11.txt rename to infoflow/tests/input_kde/entropykdeinputy11.txt diff --git a/infoflow/tests/input files/entropykdeinputy2.txt b/infoflow/tests/input_kde/entropykdeinputy2.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy2.txt rename to infoflow/tests/input_kde/entropykdeinputy2.txt diff --git a/infoflow/tests/input files/entropykdeinputy3.txt b/infoflow/tests/input_kde/entropykdeinputy3.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy3.txt rename to infoflow/tests/input_kde/entropykdeinputy3.txt diff --git a/infoflow/tests/input files/entropykdeinputy4.txt b/infoflow/tests/input_kde/entropykdeinputy4.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy4.txt rename to infoflow/tests/input_kde/entropykdeinputy4.txt diff --git a/infoflow/tests/input files/entropykdeinputy5.txt b/infoflow/tests/input_kde/entropykdeinputy5.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy5.txt rename to infoflow/tests/input_kde/entropykdeinputy5.txt diff --git a/infoflow/tests/input files/entropykdeinputy6.txt b/infoflow/tests/input_kde/entropykdeinputy6.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy6.txt rename to infoflow/tests/input_kde/entropykdeinputy6.txt diff --git a/infoflow/tests/input files/entropykdeinputy7.txt b/infoflow/tests/input_kde/entropykdeinputy7.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy7.txt rename to infoflow/tests/input_kde/entropykdeinputy7.txt diff --git a/infoflow/tests/input files/entropykdeinputy8.txt b/infoflow/tests/input_kde/entropykdeinputy8.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy8.txt rename to infoflow/tests/input_kde/entropykdeinputy8.txt diff --git a/infoflow/tests/input files/entropykdeinputy9.txt b/infoflow/tests/input_kde/entropykdeinputy9.txt similarity index 100% rename from infoflow/tests/input files/entropykdeinputy9.txt rename to infoflow/tests/input_kde/entropykdeinputy9.txt diff --git a/infoflow/tests/input files/mdkde_input.txt b/infoflow/tests/input_kde/mdkde_input.txt similarity index 100% rename from infoflow/tests/input files/mdkde_input.txt rename to infoflow/tests/input_kde/mdkde_input.txt diff --git a/infoflow/tests/test_entropy_kde.py b/infoflow/tests/test_entropy_kde.py index a0ec6de..cc8ba2f 100644 --- a/infoflow/tests/test_entropy_kde.py +++ b/infoflow/tests/test_entropy_kde.py @@ -8,8 +8,8 @@ # tests first case of matlab demo script. def test_basic(): - x = np.genfromtxt(path + '\input files\entropykdeinputx.txt', delimiter="\t") - y = np.genfromtxt(path + '\input files\entropykdeinputy.txt', delimiter='\t') + x = np.genfromtxt(path + '\input_kde\entropykdeinputx.txt', delimiter="\t") + y = np.genfromtxt(path + '\input_kde\entropykdeinputy.txt', delimiter='\t') n = 10 timelagx = 2 timelagy = 2 @@ -30,8 +30,8 @@ def test_all(): 0.946161823385283, 0.967731331557469, 0.971018899881274, 0.991938112384209, 0.997664153887389, 1.00943865954647, 1.03324658910437] for i in range(1, 12): - x = np.genfromtxt(path + '\input files\entropykdeinputx' + str(i) + '.txt', delimiter='\t') - y = np.genfromtxt(path + '\input files\entropykdeinputy' + str(i) + '.txt', delimiter='\t') + x = np.genfromtxt(path + '\input_kde\entropykdeinputx' + str(i) + '.txt', delimiter='\t') + y = np.genfromtxt(path + '\input_kde\entropykdeinputy' + str(i) + '.txt', delimiter='\t') result = resultarr[i-1] ans = kde.kerneldensityestimation(x, y, timelagx, timelagy, n, bw_coeff) assert np.isclose(ans, result, rtol=10e-20, atol=10e-15) diff --git a/infoflow/tests/test_multidimensionalkde.py b/infoflow/tests/test_multidimensionalkde.py index c7f8a1e..12660cd 100644 --- a/infoflow/tests/test_multidimensionalkde.py +++ b/infoflow/tests/test_multidimensionalkde.py @@ -9,7 +9,7 @@ def test_basic(): Note about test: ans[0][0] - result ~ 10^-34. If system is chaotic, could cause errors. Double check floating point bs. """ - x = np.genfromtxt(path + '\input files\mdkde_input.txt', delimiter='\t') + x = np.genfromtxt(path + '\input_kde\mdkde_input.txt', delimiter='\t') xi = np.array([6.921252431034000, -18.53087722427270, 37.295725015630570]) bw_coeff = 1 result = 4.67184882019e-22 From 78bf0093898ed359d6511b59735aa8949766469a Mon Sep 17 00:00:00 2001 From: arkwave Date: Fri, 22 Apr 2016 16:35:48 -0800 Subject: [PATCH 9/9] finished kde, testing done. --- infoflow/tests/test_entropy_kde.py | 8 ++++---- infoflow/tests/test_multidimensionalkde.py | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/infoflow/tests/test_entropy_kde.py b/infoflow/tests/test_entropy_kde.py index cc8ba2f..73da9bc 100644 --- a/infoflow/tests/test_entropy_kde.py +++ b/infoflow/tests/test_entropy_kde.py @@ -8,8 +8,8 @@ # tests first case of matlab demo script. def test_basic(): - x = np.genfromtxt(path + '\input_kde\entropykdeinputx.txt', delimiter="\t") - y = np.genfromtxt(path + '\input_kde\entropykdeinputy.txt', delimiter='\t') + x = np.genfromtxt(path + '/input_kde/entropykdeinputx.txt', delimiter="\t") + y = np.genfromtxt(path + '/input_kde/entropykdeinputy.txt', delimiter='\t') n = 10 timelagx = 2 timelagy = 2 @@ -30,8 +30,8 @@ def test_all(): 0.946161823385283, 0.967731331557469, 0.971018899881274, 0.991938112384209, 0.997664153887389, 1.00943865954647, 1.03324658910437] for i in range(1, 12): - x = np.genfromtxt(path + '\input_kde\entropykdeinputx' + str(i) + '.txt', delimiter='\t') - y = np.genfromtxt(path + '\input_kde\entropykdeinputy' + str(i) + '.txt', delimiter='\t') + x = np.genfromtxt(path + '/input_kde/entropykdeinputx' + str(i) + '.txt', delimiter='\t') + y = np.genfromtxt(path + '/input_kde/entropykdeinputy' + str(i) + '.txt', delimiter='\t') result = resultarr[i-1] ans = kde.kerneldensityestimation(x, y, timelagx, timelagy, n, bw_coeff) assert np.isclose(ans, result, rtol=10e-20, atol=10e-15) diff --git a/infoflow/tests/test_multidimensionalkde.py b/infoflow/tests/test_multidimensionalkde.py index 12660cd..0e414bd 100644 --- a/infoflow/tests/test_multidimensionalkde.py +++ b/infoflow/tests/test_multidimensionalkde.py @@ -9,7 +9,7 @@ def test_basic(): Note about test: ans[0][0] - result ~ 10^-34. If system is chaotic, could cause errors. Double check floating point bs. """ - x = np.genfromtxt(path + '\input_kde\mdkde_input.txt', delimiter='\t') + x = np.genfromtxt(path + '/input_kde/mdkde_input.txt', delimiter='\t') xi = np.array([6.921252431034000, -18.53087722427270, 37.295725015630570]) bw_coeff = 1 result = 4.67184882019e-22