R: inner product for datasets with vector scale

rmultmatmult {compositions} | R Documentation

## inner product for datasets with vector scale

### Description

An rmult object is considered as a sequence of vectors. The `%*%` is considered as the inner multiplication. An inner multiplication with another vector is the scalar product. an inner multiplication with a matrix is a matrix multiplication, where the rmult-vectors are either considered as row or as column vector.

### Usage

    ## S3 method for class 'rmult'
    x %*% y

### Arguments

`x` | an rmult vector or dataset of vectors, a numeric vector of length (`gsi.getD(y)`), or a matrix
`y` | an rmult vector or dataset of vectors , a numeric vector of length (`gsi.getD(x)`), or a matrix

### Details

The operators try to minic the behavior of `%*%` on `c()`-vectors as inner product applied in parallel to all vectors of the dataset. Thus the product of a vector with another `rmult` object or unclassed vector v results in the scalar product. For the multiplication with a matrix each vector is considered as a row or column, whatever is more appropriate.

### Value

an object of class `"rmult"` or a numeric vector containing the result of the corresponding inner products.

### Note

The product `x %*% A %*% y` is associative.

### Author(s)

K.Gerald v.d. Boogaart http://www.stat.boogaart.de

### See Also

`rmult`, `%*%.rmult`

### Examples

    x <- rmult(matrix( sqrt(1:12), ncol= 3 ))
    x%*%x
    A <- matrix( 1:9,nrow=3)
    x %*% A %*% x
    x %*% A
    A %*% x
    x %*% 1:3
    x %*% 1:3
    1:3 %*% x

[Package compositions version 2.0-4 Index]