TO DO LIST: ----------- 26/11/2010 TO DO: fitted.GLMM_MCMC not yet implemented for situations when there are only fixed effects in the model 14/06/2010 TO DO: In GLMM_Deviance.cpp Commands: *marg_ll_iP += *w_k * AK_Basic::exp0_AK(loglik_k); (around line 239) *marg_ll_iP = AK_Basic::log0_AK(*marg_ll_iP); (around line 252) In the case of the poisson response, it would be desirable to add log(y!) to loglik_k before exp-it and subtract it again after log the mixture sum. With higher counts, loglik_k is quite considerably negative which leads to exp(-Inf) = 0 and then upon log again, we get -Inf log-likelihood where -Inf is artificial due to imprecise calculation with numbers close to zero. --> more or less solved on 03/12/2010 ====================================================================================================================== 16/09/2024 (version 5.8): C code: all instances of 'error' and 'warning' changed to 'Rf_error' and 'Rf_warning' (R_ext/Error.h) all instances of 'Calloc' and 'Free' changed to 'R_Calloc' and 'R_Free' (R_ext/RS.h) [to make the CRAN check happy] 08/12/2023 (version 5.7): Minor changes in few cpp/h files to make the CRAN check happy. 25/09/2023 (version 5.6): Minor changes in Rd files to make the CRAN check happy. 19/09/2022 (version 5.5): Minor changes in Rd files to make the CRAN check happy. 19/04/2022 (version 5.4): Correction of e-mail addresses in Rd files. DOI added to the primary reference in Journal of Statistical Software. FCONE added where needed in F77_CALL() instances (files AK_BLAS.cpp, AK_LAPACK.cpp, Dist_MVN.cpp, Dist_MVT.cpp, Dist_Wishart.cpp, Dist_mixMVN.cpp, GLMM_Deviance.cpp, GLMM_Deviance2.cpp, GLMM_longitPred_nmix_gauss.cpp, GLMM_updateFixEf.cpp, GLMM_updateRanEf.cpp, MCMC_Moments_NormalApprox.cpp, MCMC_Moments_NormalApprox_QR.cpp, NMix_ChainsDerived.cpp, NMix_PredCDFMarg.cpp, NMix_PredCondDensCDFMarg.cpp, NMix_PredDensJoint2.cpp, NMix_RJMCMCcombine.cpp, NMix_RJMCMCsplit.cpp, NMix_PredDensMarg.cpp, NMix_RJMCMCbirth.cpp, NMix_updateMeansVars.cpp, NMix_Utils.cpp, NMix_fullCondMean_WeightsMeansVars.cpp, NMix_PredCondDensJoint2.cpp, Stat_BLA.cpp) class(err) == "try-error" replaced by inherits(err, what = "try-error") in R files 02/06/2020 (version 5.3): Changes in NAMESPACE file to make the CRAN check happy. 31/01/2020 (version 5.2): Minor changes to make the -Wunused-value option of the CRAN check happy, mainly for(s; STATEMENT1; STATEMENT2) changed to for(; STATEMENT1; STATEMENT2), two real bugs (not shifted pointers in GLMM_updateRanEf.cpp:626:6, NMix_updateMeansVars.cpp:516:9) also corrected. 17/05/2018 (version 5.1): Minor changes in plotProfiles.R and in NMix_RJMCMCcombine.cpp 15/03/2017 (version 5.0): Registration of C routines used. 11/10/2016 (version 4.4): Formal correction of some header files (e-mail B. Ripley from 18/09/2016). 02/06/2016 (version 4.3): Argument type added to cbplot function. 01/08/2015 (version 4.2): Bug in getProfiles corrected that was incidentally created in version 4.1. 28/07/2015 (version 4.1): Options to parallel computation added (on 29/06/2015). 26/03 - 02/04/2015 (version 4.0): Possibility of having weights dependent on a categorical covariate implemented in NMixMCMC and related functions. 06/02/2015 (version 3.10): NAMESPACE updated by explicit export of some S3 methods. 05/02/2015 (version 3.9): CITATION file updated (desc replaced by meta). 01/09/2014 (version 3.7): Bug in GLMM_MCMCdata corrected (it appeared when two or more discrete responses of the same type, e.g., binomial, were included in the model). CITATION file updated (methodological papers removed from there). 21/08/2014 (version 3.7): NMixCluster function added (currently only method for class GLMM_MCMC). 06/08/2014 (version 3.6-1): Update of index.html in /inst/doc directory, validation using http://validator.w3.org. 14/05/2014 (version 3.6): Minor changes related to the final JSS submission. 22/09/2013 (version 3.5): Gauss-Hermite quadrature inside the fitted.GLMM_MCMC function implemented using the functions from the 'fastGHQuad' package. Arguments x2, z2 are no more needed. 16/08/2013 (version 3.4-2): Function NMixRelabel.GLMM_MCMClist allows for a joint processing of two chains (jointly = TRUE). 06/08/2013 (version 3.4-1): Functions rWishart and dWishart renamed to rWISHART and dWISHART to avoid conflicts with rWishart in package stats. 05/08/2013 (version 3.4): Most dependencies moved from "Depends" to "Imports" in the DESCRIPTION file and solved via importFrom in the NAMESPACE. 18/07/2013 (version 3.2-4): Changes of names of some components inside the objects of classes NMixMCMC and GLMM_MCMC: comp.prob2 --> comp.prob_b comp.prob3 --> comp.prob poster.comp.prob1 --> poster.comp.prob_u poster.comp.prob2 --> poster.comp.prob_b poster.comp.prob3 --> poster.comp.prob quant.comp.prob1 --> quant.comp.prob_u quant.comp.prob2 --> quant.comp.prob_b quant.comp.prob3 --> quant.comp.prob 08/02/2013: Support for parallel computation originally provided by snowfall/snow packages changed to parallel package. 01/05/2012: All pdf vignettes moved to my personal webpage (to decrease the size of the package which must be stored on CRAN). 18/12/2011: GLMM_MCMC creates by default two parallel chains and calculates also PED, support for parallel computation on multicore CPUs using snowfall/snow packages added. 20/01/2011: beta in GLMM_MCMC function (and all related) was renamed to alpha to be in agreement with papers. 29/11/2010: Calculation of posterior quantiles for estimated component probabilities added to NMixRelabel functions (both NMixMCMC and GLMM_MCMC version). 08/12/2009 Bug in computation of weights for the EB estimate of random effects in GLMM_longitPred_nmix_gauss.cpp fixed. 22/11/2009 Function NMixClust renamed to NMixPlugDA. 06/11/2009 Bugs in GLMM_updateRanEf.cpp found and fixed: * eta_random was computed incorrectly as Z %*% bscaled and not as Z %*% b, where b = shift + diag(scale) %*% b * pointers in the final part of the code did not shift correctly