is it possible to write to the same 2-d matrix with foreach, where different columns get filled in by the different instances?
n.hazard <- ceiling(runif(n.loc,1,n.events))
event.address <- c(0,cumsum(n.hazard))
n.sample.nc <- ncdim_def("sampleID", "sampleID", 1:n.sample)
n.event.nc <- ncdim_def("eventID", "eventID", 1:sum(n.hazard))
varloss <- ncvar_def("varloss", "Loss", list(
n.sample.nc,
n.event.nc), 0, longname="Sampled Losses", prec="double",compression=NA)
ncout <- nc_create_par(ncfname,varloss,force_v4=T)
xxx <- foreach(i.loc=c(1:n.loc),.combine='c', .inorder=FALSE) %dopar% {
s <- rnorm(n.hazard[i.loc]*n.sample)
s2 <- matrix(ifelse(s>1,s,0),n.sample,n.hazard[i.loc])
ncvar_put(ncout,varloss,s2,start=c(1,event.address[i.loc]+1),count=c(-1,event.address[i.loc+1]-event.address[i.loc]))
if((i.loc%%100) == 0) print(paste(i.loc))
i.loc
}
nc_close(ncout)