From 6994f1e9da8280e9954dce7af0a05ce43ab8ff29 Mon Sep 17 00:00:00 2001
From: sanchezi <isabelle.sanchez@inrae.fr>
Date: Mon, 30 May 2022 09:29:16 +0200
Subject: [PATCH] MaJ issue #2

---
 R/utils_functions.R | 33 +++++++++++----------------------
 man/KBO_EM.Rd       |  8 ++++----
 man/KBO_L.Rd        |  6 ++++--
 3 files changed, 19 insertions(+), 28 deletions(-)

diff --git a/R/utils_functions.R b/R/utils_functions.R
index 8d7d317..0adf66e 100644
--- a/R/utils_functions.R
+++ b/R/utils_functions.R
@@ -1,6 +1,5 @@
 #-------------------------------------------------------------------
-# utils_functions.R
-# some useful functions for kfino method
+# utils_functions.R: some useful functions for kfino method
 # loi_outlier()
 # KBO_known()
 # KBO_L()
@@ -227,8 +226,9 @@ KBO_known<-function(param,threshold,kappa=10,Y,Tps,N){
 }
 
 #------------------------------------------------------------------------
-#' KBO_L a function to calculate a likelihood on optimized parameters
-#'
+#' KBO_L a function to calculate a likelihood on initial parameters 
+#' optimized by a grid search
+#' 
 #' @param param a list of 10 input parameters mm, pp and m0
 #' @param kappaOpt numeric, truncation setting, default 7
 #' @param Y character, name of the numeric variable to predict in the  
@@ -298,7 +298,6 @@ KBO_L<-function(param,kappaOpt=7,Y,Tps,N,dix){
 
   #iteration (1.1.2)
   #-----------------------
-  #// Pour l'instant, je fais comme si kappa<N-1 mettre un if sinon
   # before truncation
   for (k in 1:(kappa-1)){
     mnew=rep(0,2^(k+1))
@@ -308,7 +307,7 @@ KBO_L<-function(param,kappaOpt=7,Y,Tps,N,dix){
     # CR: renormalization constant that intervenes in the denominator of the pu
     qnew=rep(0 ,2^(k+1))
     diffTps<-Tps[k+1] - Tps[k]
-    #--- numérateur de pu0
+    #--- numerator of pu0
     tpbeta<-loi_outlier(Y[k+1],K,expertMin,expertMax)
     pnew[1:(2^k)]=p[1:(2^k)]*(1-pp)*tpbeta
     Lnew[1:(2^k)]=L[1:(2^k)]*tpbeta
@@ -328,14 +327,14 @@ KBO_L<-function(param,kappaOpt=7,Y,Tps,N,dix){
     sigma2=sigma2new
     p=pnew/sum(pnew)
 
-    L=dix*Lnew # fois 2 pr le grandir
+    L=dix*Lnew 
     q=dix*qnew
   }
 
   #  after truncation
   #----------------------
   for (k in kappa:(N-1)){
-    # je cree le vecteur des nouveaux m,
+    # creation of the 'new m' vector
     mnew=rep(0,2^(kappa+1))
     sigma2new=rep(0 ,2^(kappa+1))
     pnew=rep(0 ,2^(kappa+1))
@@ -343,7 +342,7 @@ KBO_L<-function(param,kappaOpt=7,Y,Tps,N,dix){
     # CR: renormalization constant that intervenes in the denominator of the pu
     qnew=rep(0 ,2^(kappa+1))
     diffTps<-Tps[k+1] - Tps[k]
-    #--- numérateur de pu0
+    #--- numerator of pu0
     tpbeta<-loi_outlier(Y[k+1],K,expertMin,expertMax)
     pnew[1:(2^kappa)]=p[1:(2^kappa)]*(1-pp)*tpbeta
     Lnew[1:(2^kappa)]=L[1:(2^kappa)]*tpbeta
@@ -365,7 +364,7 @@ KBO_L<-function(param,kappaOpt=7,Y,Tps,N,dix){
     m=mnew[selection]
     sigma2=sigma2new[selection]
     p=pnew[selection]/sum(pnew[selection])
-    L=dix*Lnew[selection] #fois 2 pr le grandir
+    L=dix*Lnew[selection] 
     q=dix*qnew[selection]
   }
 
@@ -375,8 +374,8 @@ KBO_L<-function(param,kappaOpt=7,Y,Tps,N,dix){
 }
 
 #------------------------------------------------------------------------
-#' KBO_EM a function to calculate a likelihood on optimized parameters by
-#' an Expectation-Maximization (EM) algorithm
+#' KBO_EM a function to calculate a likelihood on initial parameters 
+#' optimized by an Expectation-Maximization (EM) algorithm
 #'
 #' @param param a list of 10 input parameters mm, pp and m0
 #' @param kappaOpt numeric, truncation setting, default 7
@@ -451,9 +450,6 @@ KBO_EM<-function(param,kappaOpt,Y,Tps,N,dix){
   L=dix*c(l0,loinorm1) #Attention *2 pr le grandir
   q=c(1,1) #attention
   
-  #Pmean=c(p1)#A VIRER
-  
-  #nouveaux paramètres
   a=c(1,sigma2_pp/(sigma2_m0+sigma2_pp))
   b=c(0,0)
   c=c(0, Y[1]*sigma2_m0/(sigma2_m0+sigma2_pp))
@@ -468,7 +464,6 @@ KBO_EM<-function(param,kappaOpt,Y,Tps,N,dix){
   #-----------------------
   # kappa < N-1 for now. add an if condition if necessary
   # before truncation
-  
   for (k in 1:(kappa-1)){
     mnew=rep(0,2^(k+1))
     sigma2new=rep(0 ,2^(k+1))
@@ -507,9 +502,6 @@ KBO_EM<-function(param,kappaOpt,Y,Tps,N,dix){
     bnew[(1+2^k):2^(k+1)]= b[1:(2^k)]*sigma2_pp/sommevar
     cnew[(1+2^k):2^(k+1)]= c[1:(2^k)]*sigma2_pp/sommevar + Y[k+1]*sigma2new[1:(2^k)]/sommevar
     
-    #Proba1<-sum(pnew[(1+2^k):2^(k+1)])#A VIRER
-    #Pmean=c(Pmean,Proba1/sum(pnew))#A VIRER
-    
     m=mnew
     sigma2=sigma2new
     p=pnew/sum(pnew)
@@ -578,9 +570,6 @@ KBO_EM<-function(param,kappaOpt,Y,Tps,N,dix){
     
     selection=order(pnew, decreasing=T)[1:2^kappa]
     
-    #Proba1<-sum(pnew[(1+2^kappa):2^(kappa+1)]) #A VIRER
-    #Pmean=c(Pmean,Proba1/sum(pnew))#A VIRER
-    
     m=mnew[selection]
     sigma2=sigma2new[selection]
     p=pnew[selection]/sum(pnew[selection])
diff --git a/man/KBO_EM.Rd b/man/KBO_EM.Rd
index 578b5da..1b5835a 100644
--- a/man/KBO_EM.Rd
+++ b/man/KBO_EM.Rd
@@ -2,8 +2,8 @@
 % Please edit documentation in R/utils_functions.R
 \name{KBO_EM}
 \alias{KBO_EM}
-\title{KBO_EM a function to calculate a likelihood on optimized parameters by
-an Expectation-Maximization (EM) algorithm}
+\title{KBO_EM a function to calculate a likelihood on initial parameters 
+optimized by an Expectation-Maximization (EM) algorithm}
 \usage{
 KBO_EM(param, kappaOpt, Y, Tps, N, dix)
 }
@@ -33,8 +33,8 @@ a list:
 }
 }
 \description{
-KBO_EM a function to calculate a likelihood on optimized parameters by
-an Expectation-Maximization (EM) algorithm
+KBO_EM a function to calculate a likelihood on initial parameters 
+optimized by an Expectation-Maximization (EM) algorithm
 }
 \details{
 uses the same input parameter list than the main function
diff --git a/man/KBO_L.Rd b/man/KBO_L.Rd
index ba5adef..a951cb6 100644
--- a/man/KBO_L.Rd
+++ b/man/KBO_L.Rd
@@ -2,7 +2,8 @@
 % Please edit documentation in R/utils_functions.R
 \name{KBO_L}
 \alias{KBO_L}
-\title{KBO_L a function to calculate a likelihood on optimized parameters}
+\title{KBO_L a function to calculate a likelihood on initial parameters 
+optimized by a grid search}
 \usage{
 KBO_L(param, kappaOpt = 7, Y, Tps, N, dix)
 }
@@ -26,7 +27,8 @@ Tvar can be expressed as a proportion of day in seconds}
 a likelihood
 }
 \description{
-KBO_L a function to calculate a likelihood on optimized parameters
+KBO_L a function to calculate a likelihood on initial parameters 
+optimized by a grid search
 }
 \details{
 uses the same input parameter list than the main function
-- 
GitLab