Drop useless files (we will use R 'parallel' package)
[valse.git] / src / adapters / a.constructionModelesLassoMLE.c
diff --git a/src/adapters/a.constructionModelesLassoMLE.c b/src/adapters/a.constructionModelesLassoMLE.c
deleted file mode 100644 (file)
index ec519a9..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-#include <R.h>
-#include <Rdefines.h>
-#include "constructionModelesLassoMLE.h"
-
-SEXP constructionModelesLassoMLE(
-       SEXP phiInit_,
-       SEXP rhoInit_,
-       SEXP piInit_,
-       SEXP gamInit_,
-       SEXP mini_,
-       SEXP maxi_,
-       SEXP gamma_,
-       SEXP glambda_,
-       SEXP X_,
-       SEXP Y_,
-       SEXP seuil_,
-       SEXP tau_,
-       SEXP A1_,
-       SEXP A2_
-) {
-       // Get matrices dimensions
-       int n = INTEGER(getAttrib(X_, R_DimSymbol))[0];
-       SEXP dim = getAttrib(phiInit_, R_DimSymbol);
-       int p = INTEGER(dim)[0];
-       int m = INTEGER(dim)[1];
-       int k = INTEGER(dim)[2];
-       int L = length(glambda_);
-
-       ////////////
-       // INPUTS //
-       ////////////
-
-       // get scalar parameters
-       int mini = INTEGER_VALUE(mini_);
-       int maxi = INTEGER_VALUE(maxi_);
-       double gamma = NUMERIC_VALUE(gamma_);
-       double seuil = NUMERIC_VALUE(seuil_);
-       double tau = NUMERIC_VALUE(tau_);
-
-       // Get pointers from SEXP arrays ; WARNING: by columns !
-       double* phiInit = REAL(phiInit_);
-       double* rhoInit = REAL(rhoInit_);
-       double* piInit = REAL(piInit_);
-       double* gamInit = REAL(gamInit_);
-       double* glambda = REAL(glambda_);
-       double* X = REAL(X_);
-       double* Y = REAL(Y_);
-       int* A1 = INTEGER(A1_);
-       int* A2 = INTEGER(A2_);
-
-       /////////////
-       // OUTPUTS //
-       /////////////
-
-       SEXP phi, rho, pi, llh, dimPhi, dimRho;
-       PROTECT(dimPhi = allocVector(INTSXP, 4));
-       int* pDimPhi = INTEGER(dimPhi);
-       pDimPhi[0] = p; pDimPhi[1] = m; pDimPhi[2] = k; pDimPhi[3] = L;
-       PROTECT(dimRho = allocVector(INTSXP, 4));
-       int* pDimRho = INTEGER(dimRho);
-       pDimRho[0] = m; pDimRho[1] = m; pDimRho[2] = k; pDimRho[3] = L;
-       PROTECT(phi = allocArray(REALSXP, dimPhi));
-       PROTECT(rho = allocArray(REALSXP, dimRho));
-       PROTECT(pi = allocMatrix(REALSXP, k, L));
-       PROTECT(llh = allocMatrix(REALSXP, L, 2));
-       double *pPhi=REAL(phi), *pRho=REAL(rho), *pPi=REAL(pi), *pllh=REAL(llh);
-
-       /////////////////////////////////////////
-       // Call to constructionModelesLassoMLE //
-       /////////////////////////////////////////
-
-       constructionModelesLassoMLE_core(
-               phiInit,rhoInit,piInit,gamInit,mini,maxi,gamma,glambda,X,Y,seuil,tau,A1,A2,
-               pPhi,pRho,pPi,pllh,
-               n,p,m,k,L);
-
-       // Build list from OUT params and return it
-       SEXP listParams, listNames;
-       PROTECT(listParams = allocVector(VECSXP, 4));
-       char* lnames[4] = {"phi", "rho", "pi", "llh"}; //lists labels
-       PROTECT(listNames = allocVector(STRSXP,4));
-       for (int i=0; i<4; i++)
-               SET_STRING_ELT(listNames,i,mkChar(lnames[i]));
-       setAttrib(listParams, R_NamesSymbol, listNames);
-       SET_VECTOR_ELT(listParams, 0, phi);
-       SET_VECTOR_ELT(listParams, 1, rho);
-       SET_VECTOR_ELT(listParams, 2, pi);
-       SET_VECTOR_ELT(listParams, 3, llh);
-
-       UNPROTECT(8);
-       return listParams;
-}