This is a space for bits and pieces that come up from time to time.

02 July 2019

openCR 1.4.1 is now on CRAN. Changes are minor but may be critical for some spatial models with movement - see NEWS on CRAN.

15 June 2019 

openCR 1.4.0 is on its way to CRAN.  Errors in the formulation of the movement model have been corrected: some estimates will be different. Movement kernels may now use uniform or 2-D t distributions, and there are plot and summary functions for kernels built with the new function make.kernel. See NEWS on CRAN for many other tweaks since openCR 1.3.5.

08 June 2019 

secr 3.2.1 is now on CRAN. This fixes three minor bugs and adds new options for between-session movement in sim.popn() (exponential and 2-D t kernels).

04 April 2019 

Bugs in current openCR are now tracked on that page.

12 March 2019 

openCR 1.3.5 now on CRAN has only trivial documentation changes.

18 February 2019

secrdesignapp 1.2 (GitHub and OU Statistics server) adds some features (traffic lights, define Habitat mask on separate page to Options, bookmarking includes shapefiles) and fixes some minor bugs.

15 February 2019

Since version 2.5.5 (Dec 2018) secrdesign has allowed a choice between and (openCR package) in simulations for closed population models (run.scenarios or optimalSpacing). is much faster. However, I overlooked that predict.openCR ignores nrepeats>1 (specifically, predict.openCR does not divide the estimated density by nrepeats as it should). As a result, simulated density estimates are high by a factor of nrepeats, and true RB(D-hat) = (RB+1)/nrepeats - 1. RSE(D-hat) is unaffected. This will be fixed, or a warning raised, in secrdesign 2.5.8, probably out in March.

30 January 2019

secrdesignapp 1.1 has lots of new features including clustered arrays within an arbitrary region and bookmarking of the interface. Try it on the Otago University Statistics server by clicking this link.

25 January 2019

secr 3.2.0 is on CRAN (the Windows binary will arrive in a day or two).  A few minor changes have been made so secr works better with secrdesign and its shiny app secrdesignapp. New empirical variance methods have been implemented, in particular one for systematic cluster designs based on  Fewster (2011 Biometrics 67:1518). A summary of movements is optionally included in the summary method for capthist objects. See here for a more complete list of changes.

13 December 2018

secrdesign 2.5.5 is on CRAN. It supports the new interactive interface secrdesignapp (see the secrdesign page). A new minor release of openCR (1.3.2) was needed to fix a CRAN issue.

27 November 2018

Newly released openCR 1.3.0 fixes some problems and adds minor new features (control over sample size for AIC, a summary method for openCR objects, detector-specific learned responses).  The predictors used in formulae for learned responses have been radically redefined - see openCR-vignette.pdf. openCR-examples.pdf has been revised. For other changes see here.

23 November 2018

secr 3.1.8 is on CRAN. A summary method is provided for fitted models ('secr' objects). The result (try summary (secrdemo.0)) is a list that looks rather like the printed output. It is handy as a compact output from simulations (e.g. better than the default extractfn argument in secrdesign because it includes a raw data summary).  The summary is not exhaustive (e.g., omits mark-resight) and more components may be added.

A significant bug  has been fixed (detector usage was ignored for some models with 'multi' detectors). For other changes see here.

4 October 2018

secr 3.1.7 is now on CRAN (binaries available soon). This release fixes a scatter of minor bugs (see here).

27 May 2018

openCR 1.2.0 is now on CRAN with the changes noted on 20 April. and some extra features - an interface to R2ucare, function, newdata argument for derived(). See here for details. By default, now uses all but one of the available cores.

15 May 2018

secr 3.1.6 now on CRAN. A new function CVpdot computes the CV of site-specific detection probability p.(x) across a mask. Intervals and session labels are handled correctly by the subset and reduce methods for capthist objects; time-varying individual covariates may be defined for use in openCR. A couple of bugs are fixed; see here for specifics.

25 April 2018

openCR 1.1.2 now on CRAN is only trivially changed from 1.1.1 (and well behind pre-release 1.2.0 available here).

21 April 2018

Pre-release openCR 1.2.0 tweaked to fix bug in varying usage with count data (thanks to Richard Glennie for spotting this).

20 April 2018

A pre-release copy of openCR 1.2.0 is available here. Multithreading via RcppParallel gives considerable speed improvements (up to 4x with quad core Windows). This adds a new layer of complexity in the code but is transparent to the user - please report any issues. Many closed population models fit faster in openCR than in secr ( with type = 'secrD' or 'secrCL').

13 April 2018

The new R package openCR can be used for a wide range of nonspatial and spatial capture-recapture analyses. Check it out. Although the vignette indicates that movement models are not available, they will in fact run, just read the warnings.

The DENSITY download form has been broken for a couple of weeks. It's working again now.

27 February 2018

secr 3.1.5 is now on CRAN. You can now view parameter estimates for all levels of a factor covariate simply by setting all.levels = TRUE in predict(). A few bugs are fixed (including the one from 2017-12-08). Other changes mostly prepare secr  to play with a forthcoming package for open population models.

08 December 2017

Versions 3.0.1 to 3.1.3 contained a bug that caused to fail or produce bad estimates with binomial count data derived by collapsing binary data from multiple occasions -- including with reduce(..., by = 'all', output = 'count'). When is called with count data and binomN = 1 the usage at each detector gives the 'size' of a binomial probability (the maximum possible number of observations of an animal). However, the C code for this part of the likelihood was faulty in secr 3.0.1 (May 2017). The problem is fixed in secr 3.1.4, available here in pre-release form. Thanks to Mathias Tobler for reporting the issue.

04 December 2017

secr 3.1.3 now on CRAN adds a few features of mostly minor interest ('capped' detector type, contrasts to control factor coding etc., subset criterion may be function of capthist object).  The verify method for capthist objects has improvements (will again flag detections at unused detectors; also flags missing rownames and all-zero histories). A bug in sim.capthist affected learned-response models (detectpar$recapfactor != 1.0). See here for a full list of changes in 3.1.1--3.1.3 (3.1.1 and 3.1.2 did not make it to CRAN).

Functions 'derived' and 'region.N' are now S3 methods of the corresponding generic - this should not affect their use in secr. The little-used empirical variance  functions  'derived.nj', 'derived.mash', 'derived.session', 'derived.cluster' and 'derived.external' have been renamed 'derivednj', 'derivedMash', 'derivedSession', 'derivedCluster' and 'derivedExternal' to dodge a name clash with the generic.

secrdesign has also been updated (see here)

07 October 2017

A new version of secrdesign will soon be available on CRAN. Version 2.5.0 makes minor tweaks to the simulation interface and adds major new non-simulation features (see here). Briefly, these predict sample size for many designs (number of individuals and number of recaptures), compute costings and an approximation to the precision of density estimates, and automate the search for the optimal detector spacing. The features are described in a new vignette secrdesign-tools.pdf.

22 September 2017

secr 3.1.0 is now on CRAN and available here. It consolidates and publishes the minor changes in 3.0.2 and 3.0.3 (pre-release versions not published on CRAN).

10 September 2017

Pre-release secr 3.0.3 fixes a bug in starting values for combined  non-Euclidean and mixture models

27 July 2017

Pre-release secr 3.0.3 has tweaks to randomHabitat (seed argument) and (load balancing). The functions rbind.popn and rbind.capthist have been revised and registered as S3 methods (hence call with, e.g., rbind instead of rbind.capthist).

7 June 2017

Updated pre-release secr 3.0.2 includes major speed improvement for detector type "count".

24 May 2017

Pre-release secr 3.0.2 fixes an axis label problem noticed by Greg Distiller. read.capthist and read.traps now accept input from Excel spreadsheets; there are limitations - see secr-datainput.pdf.

22 May 2017

Michael Scroggie suggested the package readxl for input from Excel spreadsheets. I have revised secr-datainput.pdf to include an example. Later versions of secr may streamline the process.

04 May 2017

Finally, secr 3.0.1 is on CRAN (distribution may take a day or two). The pre-release version 3.0.0 was not submitted. See package News file for  tweaks between 3.0.0 amd 3.0.1.

Also, secrlinear has a new version 1.1.0 on CRAN. Changes are internal (to oblige CRAN, and for compatibility with secr 3.0.1) and should not affect users.

30 April 2017

Fixed typo in Notes section of secr-noneuclidean.pdf.

11 April 2017

secr 3.0.0 is now in pre-release i.e. it is available here in virtually it final form, and will be posted on CRAN in a few weeks. It is a major revision, and some changes in behaviour should be expected. Some estimates and likelihoods also change. All changes are itemized in the package News file as usual; here are the big ones.

1. Data from exclusive detectors (detector types “single”, “multi”, “polygonX” and “transectX”) now internally use a 3-dimensional data array just as for other detectors (“proximity”, “count” etc.) (previously 2-D, animals x occasions; now 3-D, animals x occasions x detectors). The original structure was more elegant for exclusive detectors, but maintaining both was a drag. The new internal data structure should be invisible to users entering new data. Users analysing saved data may encounter a suggestion that they update to the new structure using updateCH().

2. The change in data structure enables detector type to vary within a session; this is especially useful for combining trapping (to mark animals) and resighting.

3. The implementations of polygon, telemetry and mark-resight methods have been extensively revised. Estimates may differ from previous versions, although not by much. The matching documentation has been revised (secr-polygondetectors.pdf, secr-markresight.pdf, secr-telemetry.pdf).

4. Polygon and transect detectors now work only with hazard detection functions (HHN, HHR, HEX, HAN, HCG). The log-likelihood values for polygon and transect models look very different to previous values – an arbitrary constant has been removed – model comparisons within version 3.0.0 should not be affected.

5. The 'telemetry' detector type has been redefined (it is now an arbitrary point detector rather than an arbitrary polygon) so that telemetry may be mixed with point detectors ("single", "multi", "proximity", "count") within one session. Telemetry type (independent, concurrent, dependent) is now an optional attribute of traps objects.  It is not yet possible to combine telemetry and polygon detectors.

6. Memory requirements have increased. This is a programming convenience - if it's too hard on users then it may be reversed.

7. General documentation has been expanded with new vignettes on habitat masks, multi-session data, troubleshooting, and an introductory tutorial. The tutorial will evolve.

8. Several datasets are provided as raw text files at For each study there is a capture file (xxxxcapt.txt) and a detector file (xxxxtrap.txt).

30 January 2017

secr 3.0 is still a couple of months away, but a taste of its approach to telemetry data is shown in the draft vignette secr-telemetry.pdf. Comments welcome.

7 January 2017

Murray Efford, Joanne Potts and Gurutzeta Guillera-Arroita offer a 4-day course on spatially explicit capture-recapture in Melbourne on 8-11 May 2017. See here for more.

6 December 2016

secr 2.10.4 is now finalised and on CRAN. Changes are listed here - mostly just bug fixes. Significant changes are coming in secr 3.0, due February-March 2017.

1 October 2016

Provisional release of secr 2.10.4 updated to fix bug that caused b and bk models to crash when no animal was detected in a session

22 September 2016

Provisional release of secr 2.10.4 updated

3 August 2016

Provisional release of secr 2.10.4 updated

14 June 2016

A provisional release of secr 2.10.4 fixes esoteric bugs in esa () and mash().

6 June 2016

By an oversight, news of secr 2.10.3 was not posted here when it was released on 2016-05-13. See here for what you missed.

10 January 2016

The binary files for secr 2.10.2 will soon appear on CRAN. Changes are listed here.  This version requires R >= 3.2.0, so you may need to upgrade. secr 2.10.1 was not posted on CRAN; changes are included in 2.10.2. The implementation of polygon detectors has been changed to more closely follow  Efford 2011 Ecology Appendix A when using detectfn 14-18 (home range - polygon overlap is integrated on the cumulative hazard scale, not detection probability), so estimates may differ from previous versions of secr. Simulated count data may also differ. Oversized problems could result in a bizarre error (request for 134217728 Tb of memory) due to integer overflow - the number is now right, but the memory limitation remains -- my thanks to Matt Gould for helping track this down.

08 December 2015

Functions join() and mask.check() have been tweaked in the working version (secr 2.10.1).

07 December 2015

secr 2.10.0 is now ready and will soon appear on CRAN (see also here; 2.9.6 never reached CRAN). The main development is a suite of methods for mark-resight data as described in secr-markresight.pdf and a forthcoming paper (M. Efford in prep.).  Known bugs have been fixed - fortunately these were mostly conspicuous malfunctions in specialized  applications, so previous results are generally trustworthy.  Details here.

20 June 2015

The first change in the working version 2.9.6 available here is an update to the function, enabling multi-session model fits.

16 June 2015

secr 2.9.5 has been released on CRAN. This includes incremental changes over the last 3 months; as usual, a few minor bugs have been found and fixed. Details here.

20 April 2015

Incremental improvements continue to be added to  the 'under development' version of secr available here. Today, a bug is fixed in the 'raster' methods for exporting mask and Dsurface objects, a 'crs' argument is added, and these methods are documented for the first time.

25 March 2015

secr 2.9.4 has been released on CRAN. A few bugs have been fixed. Some new capability is provided for those wanting to mess with non-euclidean distance models  (function nedist(); 'miscparm' user-controllable arguments).

12 January 2015

secr 2.9.3 has been finalised and sent to CRAN, including the various changes foreshadowed below. 

6 January 2015

secr 2.9.3 'under development' has improved handling of sessions with no detections, and new buffer types in sim.popn().

5 January 2015

An advanced course on spatially explicit capture-recapture is offered on 18-19 June in Dunedin before the SEEM 2015 conference in Queenstown. Details here.

12 December 2014

A 'clone' method for capthist objects has been added to secr 2.9.3  'under development' - useful for simulating overdispersion.

11 December 2014

secr 2.9.3  'under development' allows make.systematic, trap.builder and other functions to work with a region input as a SpatialPolygonsDataFrame having a non-missing proj4string (CRS).

While I'm at it: the new package secrlinear has appeared on CRAN. This add-on to secr redefines habitat as linear and computes 'distance' through a linear network (vignette). Good for animals that live on or in rivers. 

4 December 2014

secr 2.9.2  does not perform well when there are no detections in some sessions. The problems are fixed (I hope) in an early draft  of secr 2.9.3  provided here.

30 November 2014

The R package secrdesign helps you set up, run, and summarize simulations for testing SECR study designs. The capability of newly released version 2.2.1 is described in the vignette.

24 November 2014

secr 2.9.1 contained a bug that blocked 'group' models - this is fixed in secr 2.9.2.

19 November 2014

Today's minor release of secr (2.9.1) verges on 'major' because it includes a substantial extension to the capability for non-Euclidean distances, documented in a new vignette secr-noneuclidean.pdf. The 'start' argument of can now be a named list of one or more 'real' parameter values - it's much simpler (why did I not think of that before?).

23 September 2014

secr 2.9.0 is the first major release for several months (and 2.8.2 escaped without being reported here!).  The vignettes have been updated (they now use RMarkdown, RStudio and knitr) and a new dataset has been added (OVpossum).  The 'fxi' functions have been extended (but see the vignette secr-densitysurfaces.pdf!).  Users may provide their own non-Euclidean distance function. Regression spline smooths are enabled (using mgcv to construct basis functions, as proposed by Borchers and Kidney in prep.).  Plotting of density surfaces has been improved with the addition of a coloured legend (function strip.legend()).  A function secr.test() is provided for Monte Carlo goodness-of-fit testing.  The likelihood for hybrid mixture (hcov) models is given in an appendix of secr-finitemixtures.pdf.  Several interface bugs are fixed.

29 April 2014

A minor release of Density (5.0.3) fixes a bug in the clipping of meshes to a buffer around a trap layout: the last trap was overlooked, so the mesh could sometimes be too small. This affects the total number of mesh points, but is expected to have only a trivial effect on estimates. Thanks to Mike Hooker for pointing out the problem.

4 April 2014

A tiny glitch has required a quick revision - secr 2.8.1 will soon be available on CRAN.

2 April 2014

secr 2.8.0 is out. There are many small improvements and a vignette explaining optional parameterisations to capture structural relationships between detection parameters. New tools for combining SECR and telemetry data will be documented later. Time is running out if you want to sign up for the Montpellier workshop!

28 November 2013

We're offering a workshop in association with the 2014  International Statistical Ecology Conference in France. 

30 October 2013

secr 2.7.0 has been submitted and will be available soon on CRAN. This version refines and documents the hybrid mixture (hcov) models introduced in 2.6.0 and promotes their use for sex-based analyses. The other major addition concerns a new parameterization of detection: the real parameter lambda0 or g0 may be replaced in models by a0, representing the product 2.pi.lambda0.sigma^2. Practical reasons for this apparently arcane move are given in a forthcoming Efford and Mowat paper.

1 July 2013

secr 2.6.1 fixes a bug in 2.6.0 that caused R to crash when calling derived(), esa() and related functions.

13 June 2013

secr 2.6.0 is out. The most novel new feature is a hybrid mixture model that will be useful for a wide range sex-specific analyses, including those with some missing sexes. There are new detection functions (e.g., half-normal cumulative hazard). Attention is drawn to the numerical problems with some finite-mixture (h2) model estimates caused by the multimodal likelihood (see secr-finitemixtures.pdf). A significant bug has been fixed relating to multisession models with varying numbers of detectors or sessions.

24 January 2013

secr 2.5.0, out today, includes major extensions for time-varying
detector-specific effort (non-binary usage), and new tools for discretizing detections along transects (snip) and aggregating nearby detectors
(reduce.capthist ‘span’ argument). 

Variable non-binary usage works like an offset in glm models. This can remove the need to model time-varying detector-level covariates, and allows the seamless analysis of quite ragged datasets. Details are provided in a new vignette (secr-varyingeffort.pdf), and in a forthcoming paper by Efford and Borchers. Non-binary usage slows down model fitting; it is hoped to fix this in future releases. 

Functions for plotting probability density contours of home-range centres (fxi) have been improved, and several other bugs have been fixed. 

Models for binomial count detectors are now parameterised in terms of the detection probability (g0 = p) rather than the expected number of detections (g0 = p.binomN); the estimated g0 from, and output from sim.capthist(), will therefore differ from previous versions for these models. 

Windows and Mac binaries should be available on CRAN in a day or so.

21 January 2013

DENSITY 5.0.2 is released with minor tweaks as listed in the Help file under 'Changes in latest version'. Individual covariates may now be used with the R interface.

9 January 2013

Users of secr: please note that the reported likelihood and AIC for multi-session models changed in version 2.4.0, so AIC for models fitted previously is not directly comparable (parameter estimates are unchanged). See for a complete explanation.

13 December 2012

DENSITY 5.0 is here. This version keeps the old Windows package alive with a new compiler Delphi XE2 and a cleaner interface. Several features of marginal interest have been removed. A new R interface translates data and model specifications from the GUI to commands for the R package 'secr'. Several bugs have been fixed. The most important was underestimation of SE for density estimates using the conditional likelihood. See here for a list of changes.

Please report any problems. For enquiries about usage please use

9 November 2012

secr 2.4.0 binaries now available on CRAN. Efford & Fewster Oikos paper available in Earlyview (see Publications)

14 September 2012

An erratum here corrects an error in equation 3 of Efford and Dawson (2012) (a missing '2').

19 May 2012

A further 3-day short course will be run in Whitehorse, Yukon, on August 7-9. Please contact Ramona Maraj ( if you are interested in attending, and for details of cost etc.

17 May 2012

secr 2.3.2 now available on CRAN includes one or two significant new features and a number of small extensions and bug fixes. A new function randomHabitat() generates heterogeneous random landscapes, useful as input to sim.popn() when testing methods. The format for storing acoustic data has changed and measurements of background noise may be stored alongside signal measurements; this should not affect previous code.

2 February 2012

A 3-day short course will be run in May under the auspices of the Columbia Mountains Institute:

Short course on capture-recapture methods for spatial data
Location: Nelson, British Colombia
Dates: 29–31 May 2012
Instructor: Murray Efford
Cost: CND$675 + tax

See for more.

22 December 2011

secr 2.3.1 has significant new features that almost qualify it as a full version. Learned response models (trap happiness, trap shyness) may now be specific to a particular site. As before, the effect comes in both a permanent ('bk') and a transient ('Bk') flavour. 

The new function 'RMarkInput' makes it easy to send secr data to MARK. This will be expanded later to include groups and covariates.

21 November 2011

secr 2.3.0, out today, has new capability for density surfaces as described in a vignette (secr-densitysurfaces.pdf). Users may define their own surface model as an R function, and functions ‘predictDsurface’, ‘plot.Dsurface’ and ‘spotHeight’ make for easy plotting. ‘addCovariates’ simplifies the extraction of spatial covariates from another spatial data source for use in a density model.

A bug in secr version 2.2.0 and earlier prevented the fitting of models to data from exclusive detectors ('multi', 'polygonX', 'transectX') when the models included detector-level covariates. This has been fixed.

11 October 2011

This link has been down for some time. The latest news is the release of secr 2.2.0 early this month.  Work on the next version is underway: it already includes density models with covariates spanning multiple sessions (see query from Frank van Manen on phidot) and provision for negative habitat masks (i.e. polygons defining nonhabitat rather than habitat areas). Contact Murray offline if you would like access to a beta version with these capabilities.

Murray Efford

University of Otago DENSITY: software for spatially explicit capture-recapture