We are attempting to simulate realisations of a randomly distributed variable (σbs which is the backscaterring strength based on biological data collected during acoustic surveys of fish), but we think we have a problem [?]. We need a set of realisations to estimate fish density by combining these with a corresponding variable of acoustic scattering (where fish density~acoustic data/σbs). We could just take a random draw from the distribution of σbs, but we’d like to include the option of generating a nugget only surface (when it appears) to produce consistent code (e.g. when looping across years).
However, when using a nugget-only variogram model within the simtub() function, all the simulated realisations are identical. I.e. although the values WITHIN an individual simulation realisation (e.g. “sim@items$Simu.V1.S1”) vary, as expected from a realisation of a random field, each subsequent realisation (when nbsimu > 1) contains identical data for each cell in the simulation grid (i.e. “Simu.V1.S1” == “Simu.V1.S2”). This appears to be the case whether or not the seed is initialized. Forcing a tiny degree of spatial structure in the variogram model (using a spherical model where the sill is at the same y-value as the nugget-only model, but drops to the origin at very small x-values) resolves this issue, producing simulations which differ from each other, but this is obviously an inappropriate solution when we don’t have the data to support the model. Our current solution is to run the simulations using “nbsimu = 1” and the nugget-only variogram model within a loop which sets the seed to a different random number on each repetition (which produces a different simulation each time) but this also seems somewhat suboptimal.
It would be great if you could offer any explanation as to why the use of a nugget-only variogram model appears not to work properly with simtub(), or clarify if there is something non-obvious about the seed initialization process or how the sequential simulations are generated when nbsimu >1 which we might have misunderstood which would produce the observed results.
Thanks in advance for any help.