# fs.test: FELSPLINE test function In mgcv: Mixed GAM Computation Vehicle with Automatic Smoothness Estimation

## Description

Implements a finite area test function based on one proposed by Tim Ramsay (2002).

## Usage

 ```1 2``` ```fs.test(x,y,r0=.1,r=.5,l=3,b=1,exclude=TRUE) fs.boundary(r0=.1,r=.5,l=3,n.theta=20) ```

## Arguments

 `x,y` Points at which to evaluate the test function. `r0` The test domain is a sort of bent sausage. This is the radius of the inner bend `r` The radius of the curve at the centre of the sausage. `l` The length of an arm of the sausage. `b` The rate at which the function increases per unit increase in distance along the centre line of the sausage. `exclude` Should exterior points be set to `NA`? `n.theta` How many points to use in a piecewise linear representation of a quarter of a circle, when generating the boundary curve.

## Details

The function details are not given in the source article: but this is pretty close. The function is modified from Ramsay (2002), in that it bulges, rather than being flat: this makes a better test of the smoother.

## Value

`fs.test` returns function evaluations, or `NA`s for points outside the boundary. `fs.boundary` returns a list of `x,y` points to be jointed up in order to define/draw the boundary.

## Author(s)

Simon N. Wood simon.wood@r-project.org

## References

Tim Ramsay (2002) "Spline smoothing over difficult regions" J.R.Statist. Soc. B 64(2):307-319

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10``` ```require(mgcv) ## plot the function, and its boundary... fsb <- fs.boundary() m<-300;n<-150 xm <- seq(-1,4,length=m);yn<-seq(-1,1,length=n) xx <- rep(xm,n);yy<-rep(yn,rep(m,n)) tru <- matrix(fs.test(xx,yy),m,n) ## truth image(xm,yn,tru,col=heat.colors(100),xlab="x",ylab="y") lines(fsb\$x,fsb\$y,lwd=3) contour(xm,yn,tru,levels=seq(-5,5,by=.25),add=TRUE) ```

### Example output ```Loading required package: nlme
This is mgcv 1.8-20. For overview type 'help("mgcv-package")'.
```

mgcv documentation built on Sept. 23, 2021, 5:08 p.m.