d367bfd2ce072c3643dd366040d095d528c4a98b
[valse.git] / src / test / generate_test_data / generateRunSaveTest_constructionModelesLassoMLE.R
1 generateRunSaveTest_constructionModelesLassoMLE = function(n, p, m, k, mini, maxi, gamma, glambda, varargin){
2 #set defaults for optional inputs
3 optargs = c(200 15 10 3 5 10 1.0 list(0.0,0.01,0.02,0.03,0.05,0.1,0.2,0.3,0.5,0.7,0.85,0.99))
4 #replace defaults by user parameters
5 optargs[1:length(varargin)] = varargin
6 n = optargs[1]
7 p = optargs[2]
8 m = optargs[3]
9 k = optargs[4]
10 mini = optargs[5]
11 maxi = optargs[6]
12 gamma = optargs[7]
13 glambda = optargs[8]
14 tau = 1e-6
15 seuil = 1e-15
16 L = length(glambda)
17
18 #Generate phiInit,piInit,...
19 basicInit = basicInitParameters(n, p, m, k)
20 phiInit = basicInit$phiInit
21 rhoInit = basicInit$rhoInit
22 piInit = basicInit$piInit
23 gamInit = basicInit$gamInit
24
25 #Generate X and Y
26 generateIOdef = generateIOdefault(n, p, m, k)
27 X = generateIOdef$X
28 Y = generateIOdef$Y
29
30 A2 = array(0, dim=c(p, m+1, L))
31 A1 = array(0, dim=c(p, m+1, L))
32 for(i in 1:L){
33 for(j in 1:p){
34 A2[j, 1, i] = j
35 A1[j, 1, i] = j
36 }
37 for(k in 1:5){
38 A2[k,2,i] = k
39 A1[k,2,i] = k
40 }
41 }
42
43 testFolder = 'data/'
44 dir.create(testFolder)
45 delimiter = ' '
46
47
48 #save inputs
49 write(strcat(testFolder,'phiInit'), reshape(phiInit,1), delimiter)
50 write(strcat(testFolder,'rhoInit'), reshape(rhoInit,1), delimiter)
51 write(strcat(testFolder,'piInit'), piInit, delimiter)
52 write(strcat(testFolder,'gamInit'), reshape(gamInit,1), delimiter)
53 write(strcat(testFolder,'mini'), mini, delimiter)
54 write(strcat(testFolder,'maxi'), maxi, delimiter)
55 write(strcat(testFolder,'gamma'), gamma, delimiter)
56 write(strcat(testFolder,'glambda'), glambda, delimiter)
57 write(strcat(testFolder,'X'), reshape(X,1), delimiter)
58 write(strcat(testFolder,'Y'), reshape(Y,1), delimiter)
59 mwrite(strcat(testFolder,'seuil'), seuil, delimiter)
60 write(strcat(testFolder,'tau'), tau, delimiter)
61 write(strcat(testFolder,'A1'), reshape(A1,1), delimiter)
62 write(strcat(testFolder,'A2'), reshape(A2,1), delimiter)
63 write(strcat(testFolder,'dimensions'), [n,p,m,k,L], delimiter)
64
65 construct_LME = constructionModelesLassoMLE(phiInit,rhoInit,piInit,gamInit,mini,maxi,gamma,glambda,X,Y,seuil,tau,A1,A2)
66 phi = construct_LME$phi
67 rho = construct_LME$rho
68 pi = construct_LME$pi
69 lvraisemblance = construct_LME$lvraisemblance
70
71 #save output
72 write(strcat(testFolder,'phi'), reshape(phi,1), delimiter);
73 write(strcat(testFolder,'rho'), reshape(rho,1), delimiter);
74 write(strcat(testFolder,'pi'), reshape(pi,1), delimiter);
75 write(strcat(testFolder,'lvraisemblance'), reshape(lvraisemblance,1), delimiter);
76 }