Skip to contents

Constructors for bru_mapper objects

Usage

bru_mapper(...)

bru_mapper_define(mapper, new_class = NULL, ...)

Arguments

...

Arguments passed on to sub-methods, or used for special purposes, see details for each function below.

mapper

For bru_mapper_define, a prototype mapper object, see Details. For bru_mapper_scale, a mapper to be scaled.

new_class

If non-NULL, this is added at the front of the class definition

Value

  • bru_mapper() returns a bru_mapper object

Functions

  • bru_mapper(): Generic mapper S3 constructor, used for constructing mappers for special objects. See below for details of the default constructor bru_mapper_define() that can be used to define new mappers in user code.

  • bru_mapper_define(): Adds the new_class and "bru_mapper" class names to the inheritance list for the input mapper object, unless the object already inherits from these.

    To register mapper classes and methods in scripts, use .S3method() to register the methods, e.g. .S3method("ibm_jacobian", "my_mapper_class", ibm_jacobian.my_mapper_class).

    In packages with Suggests: inlabru, add method information for delayed registration, e.g.:

    #' @rawNamespace S3method(inlabru::bru_get_mapper, inla_rspde)
    #' @rawNamespace S3method(inlabru::ibm_n, bru_mapper_inla_rspde)
    #' @rawNamespace S3method(inlabru::ibm_values, bru_mapper_inla_rspde)
    #' @rawNamespace S3method(inlabru::ibm_jacobian, bru_mapper_inla_rspde)

    or before each method, use @exportS3Method:

    #' @exportS3Method inlabru::bru_get_mapper

    etc., which semi-automates it.

Examples

mapper <- bru_mapper_index(5)
ibm_jacobian(mapper, input = c(1, 3, 4, 5, 2))
#> 5 x 5 sparse Matrix of class "dgCMatrix"
#>               
#> [1,] 1 . . . .
#> [2,] . . 1 . .
#> [3,] . . . 1 .
#> [4,] . . . . 1
#> [5,] . 1 . . .