| 1 | function[] = testSelectiontotale() |
| 2 | |
| 3 | testFolder = 'data/'; |
| 4 | delimiter = '\n'; |
| 5 | |
| 6 | %get dimensions |
| 7 | dimensions = dlmread(strcat(testFolder,'dimensions'), delimiter); |
| 8 | n = dimensions(1); |
| 9 | p = dimensions(2); |
| 10 | m = dimensions(3); |
| 11 | k = dimensions(4); |
| 12 | L = dimensions(5); |
| 13 | |
| 14 | %get all input arrays |
| 15 | phiInit = reshape(dlmread(strcat(testFolder,'phiInit'), delimiter), p, m, k); |
| 16 | rhoInit = reshape(dlmread(strcat(testFolder,'rhoInit'), delimiter), m, m, k); |
| 17 | piInit = transpose(dlmread(strcat(testFolder,'piInit'), delimiter)); |
| 18 | gamInit = reshape(dlmread(strcat(testFolder,'gamInit'), delimiter), n, k); |
| 19 | mini = int64(dlmread(strcat(testFolder,'mini'), delimiter)); |
| 20 | maxi = int64(dlmread(strcat(testFolder,'maxi'), delimiter)); |
| 21 | gamma = dlmread(strcat(testFolder,'gamma'), delimiter); |
| 22 | glambda = dlmread(strcat(testFolder,'glambda'), delimiter); |
| 23 | X = reshape(dlmread(strcat(testFolder,'X'), delimiter), n, p); |
| 24 | Y = reshape(dlmread(strcat(testFolder,'Y'), delimiter), n, m); |
| 25 | seuil = dlmread(strcat(testFolder,'seuil'), delimiter); |
| 26 | tau = dlmread(strcat(testFolder,'tau'), delimiter); |
| 27 | |
| 28 | %run constructionModelesLassoMLE.m |
| 29 | [A1,A2,Rho,Pi] = selectiontotale(phiInit,rhoInit,piInit,gamInit,mini,maxi,gamma,glambda,X,Y,seuil,tau); |
| 30 | |
| 31 | %get all stored outputs |
| 32 | ref_A1 = int64(reshape(dlmread(strcat(testFolder,'A1'), delimiter), p, m+1, L)); |
| 33 | ref_A2 = int64(reshape(dlmread(strcat(testFolder,'A2'), delimiter), p, m+1, L)); |
| 34 | ref_Rho = reshape(dlmread(strcat(testFolder,'Rho'), delimiter), m, m, k, L); |
| 35 | ref_Pi = reshape(dlmread(strcat(testFolder,'Pi'), delimiter), k, L); |
| 36 | |
| 37 | %check that output correspond to stored output |
| 38 | tol = 1e-5; |
| 39 | checkOutput('A1',A1,ref_A1,tol); |
| 40 | checkOutput('A2',A2,ref_A2,tol); |
| 41 | checkOutput('Rho',Rho,ref_Rho,tol); |
| 42 | checkOutput('Pi',Pi,ref_Pi,tol); |
| 43 | |
| 44 | end |