RELEASE NOTES
spatstat 1.590
22 March 2019
We thank Lucia Cobo Sanchez, Tilman Davies, Maximilian Hesselbarth, Kassel Hingee, Mehdi Moradi, Suman Rakshit, Jan Sulavik and Luke Yates for contributions.
OVERVIEW

Extensions to adaptive intensity estimators.

‘Dartboard’ tessellation using polar coordinates.

Performance improvements.

Minor improvements and bug fixes.

Version nickname: “J’ai omis les oeufs de caille”
NEW FUNCTIONS

polartess
Tessellation using polar coordinates. 
bw.abram
Variable bandwidths for adaptive smoothing, using Abramson’s Rule. 
densityAdaptiveKernel
Calculates adaptive estimate of point process intensity
using variablebandwidth kernel estimation. 
densityVoronoi, densityVoronoi.ppp
Calculates adaptive estimate of point process intensity
using tessellation methods. This is an extension of the
old function adaptive.density. 
densityVoronoi.lpp
Voronoi or smoothed Voronoi estimator of intensity
for point pattern on a linear network. 
coords.quad
New method for ‘coords’, to extract the coordinates of the points
in a quadrature scheme. 
lineartileindex
Lowlevel function to classify points on a linear network
according to which tile of a tessellation they fall inside.
SIGNIFICANT USERVISIBLE CHANGES

latest.news
Now prints news documentation for the current major version, by default.
New argument ‘major’. 
quantess
The covariate Z can now be “rad” or “ang” representing polar coordinates.
New argument ‘origin’ specifies the origin of polar coordinates.
New argument ‘eps’ controls accuracy of calculation. 
envelope
The argument ‘simulate’ can now be a function (such as ‘rlabel’).
The function will be applied repeatedly to the original data Y,
and should yield point patterns of the same kind. 
adaptive.density
This function can now perform adaptive estimation by two methods: either
tessellationbased methods or variablebandwidth kernel estimation.
The calculations are performed by either ‘densityVoronoi’ or
‘densityAdaptiveKernel’. 
densityVoronoi
This performs the calculations of the old function ‘adaptive.density’.
New argument ‘fixed’ specifies the subsampling.
New argument ‘method’ allows a choice between the original algorithm
and the recently described ‘smoothed Voronoi’ estimator.
Default value of ‘f’ changed to ‘f=1’. 
pcf.ppp
Now accepts correction=”none”. 
pairorient
Default edge corrections now include ‘bord.modif’. 
funxy
Functions of class ‘funxy’ can now be applied to quadrature schemes. 
lohboot
Computation accelerated when the window is a rectangle. 
nncorr, nnmean, nnvario
New argument ‘na.action’. 
pp3
New argument ‘marks’. 
clusterfit
New argument ‘verbose’. 
beachcolours, beachcolourmap
Improved positioning of the yellow colour band. 
linearK, linearpcf, linearKdot, linearKcross, linearpcfcross, linearpcfdot
Computation accelerated for networks which are not connected. 
as.linnet.psp
Computation accelerated. 
as.linfun.lintess
Computation accelerated. 
selfcut.psp
Computation accelerated.
The result now has an attribute “camefrom”
indicating the provenance of each segment in the result. 
bw.stoyan
The rule has been modified so that, if the pattern is empty,
it is now treated as if it contained 1 point,
so that a finite bandwidth value is returned. 
rebound.owin
Now preserves unitnames of the objects. 
rescale.owin, rescale.ppp, rescale.psp
The geometrical type of the window is now preserved in all cases
(previously if the window was polygonal but was equivalent to a rectangle,
the rescaled window was a rectangle). 
shift.im, shift.owin, shift.ppp, shift.psp
More options for the argument ‘origin’. 
nnwhich.ppp, nnwhich.default
Accelerated, in the case k > 1. 
is.subset.owin
Improved robustness against numerical error. 
plot.im
Improved behaviour when the pixel values are almost constant. 
Finhom, Ginhom, Jinhom
A warning is issued if bias is likely to occur because of undersmoothing.
New arguments ‘warn.bias’ and ‘savelambda’. 
plot.colourmap
Now handles a colourmap defined on an interval of length zero. 
ewcdf
Computation accelerated.
New arguments ‘normalise’ and ‘adjust’.
The result does not inherit class ‘ecdf’ if normalise=FALSE. 
spatialcdf
Computation accelerated.
The result does not inherit class ‘ecdf’ if normalise=FALSE. 
effectfun
New argument ‘nvalues’. 
parres
The argument ‘covariate’ may be omitted if the model involves
only one covariate. 
alltypes
If ‘envelope=TRUE’ and the envelope computation reaches the
maximum permitted number of errors (maxnerr) in evaluating
the summary function for the simulated patterns, then instead
of triggering a fatal error, the envelope limits will be set to NA. 
simulate.kppm
Additional arguments ‘…’ are now passed to
the function that performs the simulation.
BUG FIXES

spatialcdf
The argument ‘weights’ was ignored in some cases.
Fixed. 
ppp
Points inside the window were erroneously rejected as lying outside
the window, if the window was a polygon equivalent to a rectangle
with sides longer than 10^6 units.
Fixed. 
inside.owin
All results were FALSE if the window was
a polygon equivalent to a rectangle
with sides longer than 10^6 units.
Fixed. 
sumouter
Result was incorrect (all entries were zero)
if ‘w’ was missing and ‘y’ was given.
Fixed. 
extractbranch.lpp
Point pattern coordinates were sometimes erroneously set to NA.
Fixed. 
beachcolours, beachcolourmap
The number of colours was not always equal to ‘ncolours’.
[Spotted by Tilman Davies.]
Fixed. 
is.subset.owin
Sometimes gave the wrong answer for polygonal windows
due to numerical rounding error.
Fixed. 
update.kppm
Crashed if the updating information was a point pattern
and the original model call did not include a formula.
Spotted by Luke Yates.
Fixed. 
incircle, inpoint
Crashed if the window was extremely thin.
Fixed. 
effectfun
Crashed in some obscure cases.
Fixed. 
closepairs.pp3
Crashed if distinct=FALSE and what=”all”.
Fixed. 
update.ippm
Crashed if the model was fitted using method=”logi”.
Fixed. 
plot.msr
Crashed sometimes if x was multitype and multiplot=FALSE.
Fixed. 
anova.mppm
Crashed if applied to a single model, unless the current environment
was the global environment.
Fixed. 
lurking.mppm
If ‘covariate’ was a list of images, the code crashed sometimes
with message ‘Fisher information is singular’.
Fixed. 
im
Crashed if ‘mat’ was a 1dimensional table (class ‘table’).
Fixed. 
dirichlet
Crashed if the pattern was empty or contained only 1 point.
Fixed. 
rjitter
Crashed if the pattern contained 0 or 1 points and
the argument ‘radius’ was not specified.
Fixed. 
quantess.owin
Crashed if Z was a function(x,y).
Fixed. 
quadrat.test
The pvalue was NA if one of the observed counts was zero,
for the CressieRead tests with CR not equal to 1 or 1.
Fixed. 
quadratcount.ppp
Sometimes issued an incorrect warning that data points were
outside the tessellation, when ‘tess’ was a tessellation
represented by a pixel image.
Fixed. 
as.linim.linfun
Factorvalued functions were converted to integervalued images.
Spotted by Suman Rakshit.
Fixed. 
plot.linfun
Did not display factorvalued functions correctly.
Spotted by Suman Rakshit.
Fixed. 
dclf.test, mad.test
Crashed, in rare cases, when applied to an ‘envelope’ object.
Spotted by Jan Sulavik.
Fixed. 
plot.spatialcdf, plot.ewcdf
A horizontal line was plotted at height 1, even if the CDF was unnormalised.
Fixed. 
plot.tess
The names of the tiles were sometimes reordered in the legend.
Fixed. 
rThomas, rMatClust, rCauchy, rVarGamma
If the simulation window was not a rectangle,
the attribute ‘Lambda’ was a numeric vector, rather than a pixel image.
Fixed.
Release notes are available in raw text format here.