Skip to contents

Creates a mapper for general fmesher function space objects.

Usage

bm_fmesher(mesh)

bru_mapper_fmesher(...)

# S3 method for class 'bm_fmesher'
ibm_n(mapper, ...)

# S3 method for class 'bm_fmesher'
ibm_values(mapper, ...)

# S3 method for class 'bm_fmesher'
ibm_jacobian(mapper, input, ...)

Arguments

mesh

An fmesher object to map, supported by fmesher::fm_basis(mesh, input) and fmesher::fm_dof(mesh).

...

Arguments passed on to other methods

mapper

A mapper S3 object, inheriting from bru_mapper.

input

Data input for the mapper.

Value

A bm_fmesher object.

Details

Handles indexed mapping for all fmesher classes that support fm_dof() and fm_basis() methods. For non-indexed mapping of fm_mesh_1d objects, use bru_mapper(mesh, indexed = FALSE) which invokes the bru_mapper.fm_mesh_1d() method.

Examples

m <- bm_fmesher(fmesher::fmexample$mesh)
ibm_n(m)
#> [1] 279
ibm_eval(m, as.matrix(expand.grid(-2:2, -2:2)), seq_len(ibm_n(m)))
#>  [1] 250.74364  79.50113  56.07494  99.08437 272.10681 101.93314 138.22942
#>  [8] 126.04646 184.52763  62.06892 129.09019 139.32017 134.69889 104.56584
#> [15] 146.74441 144.17599 139.89904 164.80512 140.63623 195.96047 117.63412
#> [22] 178.67407 148.32454 169.81494 219.07025