R: Generalized array addition

aplus {magic} | R Documentation

## Generalized array addition

### Description

Given two arrays `a` and `b` with `length(dim(a))==length(dim(b))`, return a matrix with dimensions `pmax(dim(a),dim(b))` where “overlap” elements are `a+b`, and the other elements are either 0, a, or b according to location. See details section.

### Usage

    aplus(...)

### Arguments

`...` | numeric or complex arrays

### Details

The function takes any number of arguments (the binary operation is associative).

The operation of `aplus()` is understandable by examining the following pseudocode:

- `outa <- array(0,pmax(a,b))`

- `outb <- array(0,pmax(a,b))`

- `outa[1:dim(a)] <- a`

- `outb[1:dim(a)] <- b`

- `return(outa+outb)`

See how `outa` and `outb` are the correct size and the appropriate elements of each are populated with `a` and `b` respectively. Then the sum is returned.

### Author(s)

Robin K. S. Hankin

### See Also

`apad`

### Examples

    a <- matrix(1:10,2,5)
    b <- matrix(1:9,3,3)
    aplus(a,b,b)

[Package magic version 1.5-8 Index]