TMB

AD computation with Template Model Builder (TMB)

https://github.com/kaskr/adcomp

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    5 of 30 committers (16.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (19.2%) to scientific vocabulary

Keywords from Contributors

mixed-effects multilevel-models
Last synced: 10 months ago · JSON representation

Repository

AD computation with Template Model Builder (TMB)

Basic Info
  • Host: GitHub
  • Owner: kaskr
  • License: other
  • Language: C++
  • Default Branch: master
  • Homepage:
  • Size: 35.1 MB
Statistics
  • Stars: 186
  • Watchers: 49
  • Forks: 84
  • Open Issues: 71
  • Releases: 20
Created almost 13 years ago · Last pushed about 1 year ago
Metadata Files
Readme License

README.md

Template Model Builder (TMB)

Build Status

TMB is an R package with functionality similar to ADMB. It requires R at least version 3.0.0 and development tools needed to install R packages from source. Standard install instructions are available here.

Install the development version (Linux)

It is recommended to install TMB into your local R package library (if you do not yet have a local R package library, create one by running install.packages("") from the R prompt and follow the instructions). The package is installed from the command line by entering the adcomp folder and typing

shell make install

To build the user manual type

shell make pdf

Once the package is successfully installed it can be tested by starting R and running

R library(TMB) runExample(all=TRUE)

To build API-Function reference see instructions here. Once the documentation is built open dox/html/index.html in your web browser. Use the search field to find functions and their documentation.

It is recommended to test that models can be changed, re-compiled and re-loaded without problems:

R setwd("tmb_syntax") source("test_reload.R")

If everything works as intended this script should display "TRUE". The script has only been observed to fail for certain combinations of Linux and the gcc compiler, see below.

Advanced notes

Metis orderings

For large 3D random field models the ordering algorithms shipping with R's Matrix package are far from optimal. To get better orderings available run the extended TMB install script (Linux/Mac only):

shell make install-metis-full

The new orderings are available from R through the function runSymbolicAnalysis(). For a quick example of how to use it try the ar1_4D example:

shell cd tmb_examples make ar1_4D

You should see a significant speedup.

Issues with library unloading

On recent versions of gcc the following problem may be encountered: When the user cpp file is changed, re-compiled and re-loaded, the changes do not take place. To see if you are affected by this issue, assuming your compiled DLL is called "mymodel.so", try running:

shell readelf -s mymodel.so | grep UNIQUE

If this gives any output it is not possible to unload the library, and R will have to be restarted every time the model is re-compiled. There are at least two alternative solutions to this problem:

  1. Use gcc with compilation flag -fno-gnu-unique (version 4.8.3 and newer): Add CXX = g++ -fno-gnu-unique to a file ~/.R/Makevars (create it if it doesn't exist).

  2. Use the clang compiler instead of gcc: Install clang and add CXX = clang++ to a file ~/.R/Makevars (create it if it doesn't exist).

Note: If you have precompiled TMB using precompile() prior to (1) or (2) you must repeat the precompilation with the new compiler settings.

Owner

  • Login: kaskr
  • Kind: user

GitHub Events

Total
  • Issues event: 9
  • Watch event: 8
  • Delete event: 4
  • Issue comment event: 17
  • Push event: 17
  • Pull request event: 5
  • Fork event: 6
  • Create event: 11
Last Year
  • Issues event: 9
  • Watch event: 8
  • Delete event: 4
  • Issue comment event: 17
  • Push event: 17
  • Pull request event: 5
  • Fork event: 6
  • Create event: 11

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 1,490
  • Total Committers: 30
  • Avg Commits per committer: 49.667
  • Development Distribution Score (DDS): 0.095
Past Year
  • Commits: 24
  • Committers: 2
  • Avg Commits per committer: 12.0
  • Development Distribution Score (DDS): 0.042
Top Committers
Name Email Commits
Kasper Kristensen k****r@d****k 1,349
skaug h****g@g****m 43
casperwberg c****g@g****m 16
Kasper Kristensen k****r@k****) 15
Arni Magnusson a****a@h****s 14
mollie brooks m****s@g****m 8
colemonnahan m****c@u****u 5
Ben Bolker b****r@g****m 5
Anders Nielsen a****i@a****) 5
Alexandros Kokkalis a****9@g****m 3
jgbabyn j****n@g****m 3
Kinh Nguyen 4****t 2
Christoffer Moesgaard Albertsen ca@c****k 2
Anders Nielsen f****r@g****m 2
TheoMichelot t****t@i****r 2
neverfail23927 h****1@M****o 2
brianstock b****9@g****m 1
John Sibert s****t@h****u 1
Daniel Sabanes Bove d****e@r****m 1
Daniel Hocking d****g@u****u 1
Hans J. Skaug h****1@m****o 1
Kinh Nguyen f****n@g****m 1
hskaug h****g@l****) 1
unknown a****a@s****) 1
kasper kristensen k****r@k****l 1
Brad Bell b****l@s****m 1
Alex Forrence a****1@j****u 1
Jamie Lentin jm@l****k 1
Martin Maechler m****r@r****g 1
Mikael Jagan j****n@m****a 1

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 105
  • Total pull requests: 26
  • Average time to close issues: over 1 year
  • Average time to close pull requests: about 2 months
  • Total issue authors: 56
  • Total pull request authors: 14
  • Average comments per issue: 3.26
  • Average comments per pull request: 2.38
  • Merged pull requests: 17
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 7
  • Pull requests: 6
  • Average time to close issues: 5 days
  • Average time to close pull requests: 1 day
  • Issue authors: 5
  • Pull request authors: 2
  • Average comments per issue: 0.86
  • Average comments per pull request: 2.33
  • Merged pull requests: 6
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • ghost (8)
  • kaskr (7)
  • bbolker (7)
  • James-Thorson (6)
  • jaganmn (6)
  • James-Thorson-NOAA (6)
  • mebrooks (3)
  • skaug (3)
  • kklot (3)
  • lentinj (3)
  • timjmiller (2)
  • Craig44 (2)
  • BertvanderVeen (2)
  • markpayneatwork (2)
  • jkbest2 (2)
Pull Request Authors
  • kaskr (10)
  • bbolker (2)
  • jaganmn (2)
  • calbertsen (2)
  • kklot (2)
  • lentinj (2)
  • boennecd (1)
  • 2039 (1)
  • Blunde1 (1)
  • lawlerem (1)
  • skaug (1)
  • jeffeaton (1)
  • James-Thorson-NOAA (1)
  • danielinteractive (1)
Top Labels
Issue Labels
Question (12) Bug (10) Docs (5) Suggestion (4) External (4) Wish list (3) News (3) Need more info (3) Installation (2) Duplicate (2) Invalid (1) Examples (1) Volunteers needed! (1)
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • cran 31,704 last-month
  • Total docker downloads: 671,587
  • Total dependent packages: 38
  • Total dependent repositories: 180
  • Total versions: 45
  • Total maintainers: 1
cran.r-project.org: TMB

Template Model Builder: A General Random Effect Tool Inspired by 'ADMB'

  • Versions: 45
  • Dependent Packages: 38
  • Dependent Repositories: 180
  • Downloads: 31,704 Last month
  • Docker Downloads: 671,587
Rankings
Forks count: 0.8%
Dependent repos count: 1.4%
Dependent packages count: 2.1%
Downloads: 2.2%
Stargazers count: 2.6%
Average: 5.4%
Docker downloads count: 23.4%
Maintainers (1)
Last synced: 10 months ago

Dependencies

TMB/DESCRIPTION cran
  • R >= 3.0.0 depends
  • Matrix >= 1.0 imports
  • graphics * imports
  • methods * imports
  • stats * imports
  • utils * imports
  • numDeriv * suggests
  • parallel * suggests