Hi Joe
Sorry for the slow response - just winding myself up for 2025!
Maybe you've already solved this one. What package are you using? openCR doesn't model density in space so I assume you mean secr. I'm unclear how you are calculating 'N', but let's assume modelling density will get you there. Why not simply fit a density model with a 2-level mask covariate (primary, secondary). The catch is that if you are using year-specific masks then for each one you will need to force the covariate to be a factor with both levels.
Mock example below.
Murray
library(secr)
setNumThreads(8)
# fake multisession data with extended sampling in last session
ovenCHp2 <- ovenCHp
primary <- subset(ovenCHp2, session=5)
secondary <- primary
traps(secondary) <- shift(traps(secondary),c(400,0))
ovenCHp2[[5]] <- append.capthist(primary, secondary)
session(ovenCHp2[[5]]) <- '2009ps'
# add mask covariate to single-session mask
msk <- make.mask(traps(ovenCHp2[[5]]), buffer = 250, nx = 30)
covariates (msk)$ps <- factor(ifelse(msk$x<200, 'primary','secondary'))
# plot
par(mfrow=c(2,3))
for (i in 1:5) {
plot(msk, cov='ps', dots=F, mesh='black', legend=F)
plot(traps(ovenCHp2[[i]]), add=T)
plot(ovenCHp2[[i]], add=T)
}
# fit and predict
fit <- secr.fit(ovenCHp2, D~ps, mask = msk)
newdat <- expand.grid(session = factor(2005:2009), ps = factor(c('primary','secondary')))
predict(fit, newdata = newdat)