Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Bivand, Roger
akima
Commits
bd80a8b1
Commit
bd80a8b1
authored
Feb 01, 2006
by
agebhard
Browse files
adopt man pages for ncp->linear change
parent
5019f80c
Changes
4
Hide whitespace changes
Inline
Side-by-side
DESCRIPTION
View file @
bd80a8b1
Package: akima
Version: 0.
4-5
Date: 200
5
-0
7-2
1
Version: 0.
5-1
Date: 200
6
-0
2-0
1
Title: Interpolation of irregularly spaced data
Author: Fortran code by H. Akima
R port by Albrecht Gebhardt <albrecht.gebhardt@uni-klu.ac.at>
...
...
man/akima.Rd
View file @
bd80a8b1
...
...
@@ -50,7 +50,7 @@ rgl.points(akima.p$x,akima.p$z , akima.p$y,size=4,color="yellow")
# data
rgl.spheres(akima$x,akima$z , akima$y,0.5,color="red")
rgl.bbox()
# bivariate line
ar
interpolation
# bivariate
cubic sp
line interpolation
# interp:
akima.si <- interp(akima$x, akima$y, akima$z,
xo=seq(min(akima$x), max(akima$x), length = 100),
...
...
man/interp.Rd
View file @
bd80a8b1
...
...
@@ -56,14 +56,15 @@ interp.new(x, y, z, xo = seq(min(x), max(x), length = 40),
\item{linear}{logical -- indicating wether linear or spline
interpolation should be used. supersedes old \code{ncp} parameter}
\item{ncp}{
deprecated, use parameter \code{linear}.
deprecated, use parameter \code{linear}. Now only used by
\code{interp.old()}.
meaning was:
number of additional points to be used in computing partial
derivatives at each data point.
\code{ncp} must be either \code{0} (partial derivatives are not used), or at
least 2 but smaller than the number of data points (and smaller than
25).
This option is only supported by \code{interp.old}.
25).
}
\item{extrap}{
logical flag: should extrapolation be used outside of the
...
...
@@ -100,20 +101,22 @@ interp.new(x, y, z, xo = seq(min(x), max(x), length = 40),
interpolation the old version is choosen, but spline interpolation is
done by the new version.
At the moment \code{interp.new} ignores \code{ncp} and does only
bicubic spline interpolation.
Earlier versions (pre 0.5-1) of \code{interp} used the parameter
\code{ncp} to choose between linear and cubic interpolation, this is now done
by setting the logical parameter \code{linear}. Use of \code{ncp} is still
possible, but is deprecated.
The resulting structure is suitable for input to the
functions \code{contour} and \code{image}. Check the requirements of
these functions when choosing values for \code{xo} and \code{yo}.
}
\details{
If \code{
ncp} is zero
, linear
If \code{
linear} is \code{TRUE} (default)
, linear
interpolation is used in the triangles bounded by data points.
Cubic interpolation is done if
partial derivatives are used
.
Cubic interpolation is done if
\code{linear} is set to \code{FALSE}
.
If \code{extrap} is \code{FALSE}, z-values for points outside the
convex hull are returned as \code{NA}.
No extrapolation can be performed
if \code{ncp} is zero
.
No extrapolation can be performed
for the linear case
.
The \code{interp} function handles duplicate \code{(x,y)} points
in different ways. As default it will stop with an error message. But
...
...
@@ -172,8 +175,8 @@ image (akima.part)
contour(akima.part, add=TRUE)
points(akima$x[1:15],akima$y[1:15])
## spline interpolation
## --------------------
## spline interpolation
, two variants (AMS 526 "Old", AMS 761 "New")
## --------------------
---------------------------------------------
## "Old": use 5 points to calculate derivatives -> many NAs
akima.sO <- interp.old(akima$x, akima$y, akima$z,
xo=seq(0,25, length=100), yo=seq(0,20, length=100), ncp=5)
...
...
@@ -187,6 +190,11 @@ contour(akima.sO, add = TRUE)
## "New:"
akima.spl <- with(akima, interp.new(x,y,z, xo=seq(0,25, length=100),
yo=seq(0,20, length=100)))
## equivalent call via setting linear=FALSE in interp():
akima.spl <- with(akima, interp(x,y,z, xo=seq(0,25, length=100),
yo=seq(0,20, length=100),
linear=FALSE))
contour(akima.spl) ; points(akima)
full.pal <- function(n) hcl(h = seq(340, 20, length = n))
...
...
@@ -204,9 +212,10 @@ data(airquality)
air <- subset(airquality,
!is.na(Temp) & !is.na(Ozone) & !is.na(Solar.R))
# gives an error {duplicate ..}:
try( air.ip <- interp
.new
(air$Temp,air$Solar.R,air$Ozone) )
try( air.ip <- interp(air$Temp,air$Solar.R,air$Ozone
, linear=FALSE
) )
# use mean of duplicate points:
air.ip <- with(air, interp.new(Temp, Solar.R, log(Ozone), duplicate = "mean"))
air.ip <- with(air, interp(Temp, Solar.R, log(Ozone), duplicate = "mean",
linear = FALSE))
image(air.ip, main = "Airquality: Ozone vs. Temp and Solar.R")
with(air, points(Temp, Solar.R))
}
...
...
man/interpp.Rd
View file @
bd80a8b1
...
...
@@ -37,7 +37,8 @@ dupfun = NULL, ncp)
\item{linear}{logical -- indicating wether linear or spline
interpolation should be used. supersedes old \code{ncp} parameter}
\item{ncp}{
deprecated, use parameter \code{linear}.
deprecated, use parameter \code{linear}. Now only used by
\code{interpp.old()}.
meaning was:
number of additional points to be used in computing partial
...
...
@@ -79,10 +80,15 @@ dupfun = NULL, ncp)
Use \code{interp} if interpolation on a regular grid is wanted.
The two versions \code{interpp.old} and \code{interpp.new} refer to
Akimas Fortran code from 1978 and 1996 resp. At the moment
\code{interpp.new}
does not work porperly (it results in a segmentation fault), so it is
not used from the call wrapper \code{interp}.
Akimas Fortran code from 1978 and 1996 resp. The call wrapper \code{interpp}
chooses \code{interpp.old} for linear and \code{interpp.new} for cubic
spline interpolation.
Earlier versions (pre 0.5-1) of \code{interpp} used the parameter
\code{ncp} to choose between linear and cubic interpolation, this is now done
by setting the logical parameter \code{linear}. Use of \code{ncp} is still
possible, but is deprecated.
}
\description{
If \code{ncp} is zero, linear
...
...
@@ -122,8 +128,8 @@ data(akima)
akima.lip<-interpp(akima$x, akima$y, akima$z,c(1,5,10),c(2,6,12))
akima.lip$z
# spline interpolation
akima.
l
ip<-interpp(akima$x, akima$y, akima$z,c(1,5,10),c(2,6,12),
akima.
s
ip<-interpp(akima$x, akima$y, akima$z,c(1,5,10),c(2,6,12),
linear=FALSE)
akima.
l
ip$z
akima.
s
ip$z
}
\keyword{dplot}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment