# smooth.morph: Estimates a Smooth Warping Function Mapping an Interval into... In fda: Functional Data Analysis

 smooth.morph R Documentation

## Estimates a Smooth Warping Function Mapping an Interval into Another

### Description

This function computes a smooth monotone transformation \$h(t)\$ of argument \$t\$ such that \$h(0) = 0\$ and \$h(TRUE) = TRUE\$, where \$t\$ is the upper limit of a range interval. This function is used to morph one probability density function into another having a possibly different domain.

### Usage

``````smooth.morph(x, y, ylim, WfdPar, conv=1e-4, iterlim=20, dbglev=0)
``````

### Arguments

 `x` a vector of argument values. `y` a vector of data values. This function can only smooth one set of data at a time. `ylim` a vector of length two containing the lower and upper limits of the target interval. `WfdPar` a functional parameter object that provides an initial value for the coefficients defining function \$W(t)\$, and a roughness penalty on this function. `conv` a convergence criterion. `iterlim` the maximum number of iterations allowed in the minimization of error sum of squares. `dbglev` either 0, 1, or 2. This controls the amount information printed out on each iteration, with 0 implying no output, 1 intermediate output level, and 2 full output. If either level 1 or 2 is specified, it can be helpful to turn off the output buffering feature of S-PLUS.

### Details

The function computes a increasing function mapping one closed into interval (defined in `WfdPar` into another (the two-value numeric vector argument `ylim`). The function immediately checks that the data do not fall outside of the first interval, which is located in `WfdPar\$fd\$basis\$rangeval` and named `xlim` in its code.

A frequent problem is that the data points in argument `x` are outside of this origin interval. Small escapes less than 1e-7 are automatically converted to the correct the right limit. But the user should check that this constraint is met before invoking the function, and especially when the function is used iteratively.

### Value

A named list of length eight containing:

 `Wfdobj` a functional data object defining function \$W(x)\$ that that optimizes the fit to the data of the monotone function that it defines. `f` the optimal function value being minimized. `grad` the gradient vector at the optimal solution `hmat` the Hessian matrix at the optimal solution `norm` the norm of the gradient vector at the optimal solution. `hfine` a fine mesh of values of the estimated monotone function. `iternum` the number of iterations. `iterhist` the iteration history.

### References

Ramsay, James O., Hooker, Giles, and Graves, Spencer (2009), Functional data analysis with R and Matlab, Springer, New York.

Ramsay, James O., and Silverman, Bernard W. (2005), Functional Data Analysis, 2nd ed., Springer, New York.

Ramsay, James O., and Silverman, Bernard W. (2002), Applied Functional Data Analysis, Springer, New York.

`cumfd`, `smooth.monotone`, `landmarkreg`, `register.fd`
``````#  see the use of smooth.morph in cumfd.R and landmarkreg.R