Recent Releases of TMB
TMB - New version on CRAN
- Add onLoad check on 'Matrix' package version.
- sdreport: Fixed bug in the case with exactly one random effect.
- unittest script changes: Add accuracy test (passed/not passed).
- tmb_examples consistency #202
- sdreport: reduce size of env slot #203
- C++
Published by kaskr almost 10 years ago
TMB - New special functions
- New atomic functions:
- pbeta
- qbeta
- dtweedie
- besselK (derivatives wrt both arguments)
- besselI (derivatives wrt both arguments)
- besselJ (derivatives wrt both arguments)
- besselY (derivatives wrt both arguments)
- Adaptive numerical integration:
- gauss_kronrod::integrate (one dimension)
- gauss_kronrod::mvIntegrate (multiple dimensions)
- sdreport: Fix bug that caused bias.correction to break when parameter maps were in use.
- C++
Published by kaskr almost 10 years ago
TMB - Minor additions and bug fixes
- sdreport: Allow bias correct in chunks to reduce memory.
- Experimental TMB:::install.contrib to install user contributed cpp code from github.
- Disable CHOLMOD warnings from inner problem when silent=TRUE.
- sdreport: Keep running when solve(hessian) fails.
- sdreport: Fix bug that caused summary(sdreport(.)) to fail when nothing was ADREPORTed.
- C++
Published by kaskr almost 10 years ago
TMB - Minor speedups and bugfixes
- sdreport optimizations. Avoid repeating the forward sweep
- asVector: optimization
- Take advantage of Eigen's compile time optimizations.
- 'asVector' does not show up in profiler after this change.
- Add option to skip the zero order forwardsweep
- sdreport: New argument getReportCovariance #146
- Reduces memory usage when many variables are ADREPORTed
- Small optimization
- 'match.arg' can cause substantial overhead
- New preprocessor flag 'TMBLIBINIT'
- Register some native symbols of the user template.
- Register native routines
- Update matrix and array examples
- Rename parameter alpha to omega (to avoid confusion with Lindgren) and add derived quantity rho
- bugfix: numeric(0) in random list of MakeADFun #111
- Description: When a parameter vector is numeric(0) and its name is included in the random list, then MakeADFun gives wrong obj$par list.
- Same would be the case for 'profile' argument to MakeADFun.
- folder 'tmb_syntax' minor cleanups
- Fix 'dontrun' part of example(sdreport)
- Be tolerant to systems witout OpenMP support
- New atomic: convol2d
- atomic::matmul: speedup
- CppAD::thread_alloc: Speedup
- Profiler discovered much time spent in allocator when using atomic functions with high dimensional input/output.
- Fix: Avoid calling constructor if Type=double. Does not affect the unittests
- C++
Published by kaskr about 10 years ago
TMB -
o CITATION update with JSS publication.
o New function 'as.list.sdreport' converts from sdreport format to original parameter list structure.
o MCMC: - Fix small bug in transforming intial values in NUTS. - Rename mcmc -> run_mcmc to avoid conflict with coda package.
- C++
Published by kaskr over 10 years ago
TMB - Minor updates and bug fixes
o Fix g++ -std=gnu++14
o oneStepPredict: Add one-step mean to output for methods 'oneStepGaussianOffMode' and 'oneStepGeneric'.
o Fix warnings (windows)
o SUPPORT_OPENMP deprecated - see 'Writing R Extensions'
o Array class changes: - More explicit array assignment from other class: Can now assign from matrix and un-evaluated expression template E.g. a = a.matrix() * a.matrix(); - Documentation: warning about the 2D case - Re-implement vec() operator (avoid loop) - Add method matrix() to array class: Keeps first dimension and collapses remaining dimensions.
o Clean up potential naming conflicts caused by Rmath macros
o atomic_macro.hpp: clang-format-3.6 -i -style='Google'
o Atomic functions general speedup: - Reduce dynamic allocation overhead caused by creation of new CppAD::vectors. - Avoid copy overhead betweeen 'vector' and 'CppAD::vector'. - Managed by som new typedefs.
o bugfix: precompile broke REGISTER_ATOMIC
o Update README.md
o NAMESPACE add stats::median (used by mcmc)
- C++
Published by kaskr over 10 years ago
TMB - Bias correction and MCMC improvements
o Fix bug that caused sdreport to fail for models using the 'profile' argument to MakeADFun.
o Robustify marginal likelihood for extreme parameters (to help MCMC).
o MCMC: Improved stability of adaptive step size algorithm.
o Bias correction documentation and test example. Results are now part of the summary output.
- C++
Published by kaskr over 10 years ago
TMB - Precompile portability
o Changes to precompile(): - Works on all platforms. - Works with multiple models in same R instance. - Frequently used classes MVNORMt and GMRFt added to precompilation.
- C++
Published by kaskr over 10 years ago
TMB - New features and bug fixes
- Add pnorm/qnorm one-argument vectorized versions
- bugfix: Vectorized math operations crashed in the zero-length case.
- Add missing bounds check to array class #100 - Now checks each index component (not just the re-mapped univariate index)
- BesselK atomic + Matern correlation function.
- asSparseMatrix and asSparseVector fix: Conversion from dense to sparse should not drop zero-entries that could potentially become nonzero (i.e. parameter dependent entries).
- CppAD::Variable now works for TMB models
- Script to enable 'runSymbolicAnalysis' on all Linux and OS X systems
- New experimental function 'oneStepPredict' for OSA residuals with ar1xar1 as an example.
- New atomic function 'ppois'
- REPORT: Allow report vector of 'anything'.
- getUserDLL: Improve guess of user's DLL code (when DLL not given to MakeADFun).
- Eliminate warning with '-Wpedantic'
- sdreport new option: ignore.parm.uncertainty
- New example: HMM filter
- General 1D likelihood profile function + method to get profile confidence intervals + plot method
- MakeADFun: New option to move outer parameters to the inner problem (purpose: get same speed as the REML trick for linear fixed effects without loosing the ML interpretation).
- MakeADFun: New argument 'silent' to disable all tracing output.
- C++
Published by kaskr almost 11 years ago
TMB - Update CppAD and add new features
- CppAD updated to development version. Reduced peak memory usage with up to 50% for large models.
- New configuration variables.
- Avoid crashes due to memory allocation errors.
- Print index errors to error stream.
- Allow compilation with -std=c++11
- sdreport: bias.correct optimizations.
- Implement up to 7d array (like admb)
- Allow lists as data object with R-inla SPDE structures as an example.
- C++
Published by kaskr about 11 years ago