cprod: (Blockwise) cross product of integration points

View source: R/bru.integration.R

cprodR Documentation

(Blockwise) cross product of integration points

Description

Calculates the groupwise cross product of integration points in different dimensions and multiplies their weights accordingly. If the object defining points in a particular dimension has no weights attached to it all weights are assumed to be 1.

Legacy wrapper for fm_cprod()

Usage

cprod(..., na.rm = NULL, .blockwise = FALSE)

Arguments

...

data.frame, sf, or SpatialPointsDataFrame objects, each one usually obtained by a call to an fm_int() method.

na.rm

logical; if TRUE, the rows with weight NA from the non-overlapping full_join will be removed; if FALSE, set the undefined weights to NA. If NULL (default), act as TRUE, but warn if any elements needed removing.

.blockwise

logical; if FALSE, computes full tensor product integration. If TRUE, computes within-block tensor product integration (used internally by fm_int()). Default FALSE

Value

A data.frame, sf, or SpatialPointsDataFrame of multidimensional integration points and their weights

See Also

fm_cprod()

Examples


# Create integration points in dimension 'myDim' and 'myDiscreteDim'
ips1 <- fm_int(fm_mesh_1d(0:20),
  rbind(c(0, 3), c(3, 8)),
  name = "myDim"
)
ips2 <- fm_int(domain = c(1, 2, 4), name = "myDiscreteDim")

# Calculate the cross product
ips <- cprod(ips1, ips2)

# Plot the integration points
plot(ips$myDim, ips$myDiscreteDim, cex = 10 * ips$weight)



inlabru-org/inlabru documentation built on April 20, 2024, 9:01 a.m.