R: Convolve two time series

oceConvolve {oce} | R Documentation

## Convolve two time series

### Description

Convolve two time series, using a backward-looking method. This function provides a straightforward convolution, which may be useful to those who prefer not to use `convolve` and `filter` in the `stats` package.

### Usage

    oceConvolve(x, f, end = 2)

### Arguments

`x` | a numerical vector of observations.
`f` | a numerical vector of filter coefficients.
`end` | a flag that controls how to handle the points of the `x` series that have indices less than the length of `f`. If `end=0`, the values are set to 0. If `end=1`, the original x values are used there. If `end=2`, that fraction of the `f` values that overlap with `x` are used.

### Value

A vector of the convolution output.

### Author(s)

Dan Kelley

### Examples

    library(oce)
    t <- 0:1027
    n <- length(t)
    signal <- ifelse(sin(t * 2 * pi / 128) > 0, 1, 0)
    tau <- 10
    filter <- exp(-seq(5*tau, 0) / tau)
    filter <- filter / sum(filter)
    observation <- oce.convolve(signal, filter)
    plot(t, signal, type='l')
    lines(t, observation, lty='dotted')

[Package oce version 1.0-1 Index]