ARsim: Accept-Reject Simulation

Description Usage Arguments Details Value Author(s)

View source: R/ARsim.R


Generic Code for acceptance-rejection sampling.


ARsim(margSimFn, acceptFn, N, keepTestInfo = FALSE)



This is a simulation function. It should take no arguments (or have default values that will be used). It should output one simulation; we will refer to it as being "type X".


Should take "type X" as argument and output True or False. It should actually output a list (T/F, extraInformation). ExtraInformation is generally whatever is being used to do the accept/reject part; it is technically only required if "keepTestInfo" is passed a True.


How many simulations total to run (regardless of eventual acceptance ratio); There is not currently a parameter for choosing to stop after a given number of acceptances.


True or False; if True then the result will be two lists, the second of which has the second output from acceptFn; generally the data used to decide whether to accept or reject the simulations.


Does accept-reject simultion; margSimFn is run N times; acceptFn decides which to keep and which to remove;


Returns a list with one (if keepTestInfo==FALSE) or two (if keepTestInfo==TRUE) components. The first is $acceptSims, and the second is $testVals. The component acceptSims are the simulated values that were accepted. To do further analysis, testVals is the corresponding list of information used to evaluate.

In future: Will have option to pass all simulations as output, and to accept simulations (but presumably with a different acceptFn) to allow for more reuse.

As an implementation note: want to do "replicate" inside this function so as to regulate the types of output.


Charles Doss

DOBAD documentation built on May 2, 2019, 3:04 a.m.