A temporal interaction function for use in twinstim can be constructed via the tiaf function. It checks the supplied function elements, assigns defaults for missing arguments, and returns all checked arguments in a list. However, for standard applications it is much easier to use one of the pre-defined temporal interaction functions, e.g., tiaf.exponential.

tiaf(g, G, deriv, Deriv, npars, validpars = NULL)

## Arguments

g

the temporal interaction function. It must accept two arguments, the first one being a vector of time points, the second one a parameter vector. For marked twinstim, it must accept the type of the event (integer code) as its third argument (either a single type for all locations or separate types for each location).

G

a primitive of $$g(t)$$ (with respect to time). It must accept the same arguments as g, for instance a vector of time points (not just a single one).

deriv

optional derivative of $$g(t)$$ with respect to the parameters. It takes the same arguments as g but returns a matrix with as many rows as there were time points in the input and npars columns. This derivative is necessary for the calculation of the score function in twinstim(), which is advantageous for the numerical log-likelihood maximization.

Deriv

optional primitive of deriv (with respect to time). It must accept the same arguments as deriv, g and G and returns a matrix with as many rows as there were time points in the input and npars columns. The integrated derivative is necessary for the score function in twinstim.

npars

the number of parameters of the temporal interaction function g (i.e. the length of its second argument).

validpars

optional function taking one argument, the parameter vector, indicating if it is valid. This approach to specify parameter constraints is rarely needed, because usual box-constrained parameters can be taken into account by using L-BFGS-B as the optimization method in twinstim (with arguments lower and upper), and positivity constraints by using log-parametrizations. This component is not necessary (and ignored) if npars == 0.

## Value

list of checked arguments.

## Author

Sebastian Meyer

tiaf.exponential for a pre-defined temporal interaction function, and siaf for the spatial interaction function.