...
 
Commits (2)
Package: spam
Type: Package
Title: SPArse Matrix
Version: 2.5-0
Date: 2019-12-05
Version: 2.5-1
Date: 2019-12-12
Authors@R: c(person("Reinhard", "Furrer", role = c("aut", "cre"),
email = "reinhard.furrer@math.uzh.ch"),
person("Florian", "Gerber", role = c("aut"),
......@@ -59,4 +59,3 @@ LazyData: true
License: LGPL-2 | BSD_3_clause + file LICENSE
URL: https://www.math.uzh.ch/pages/spam/
BugReports: https://git.math.uzh.ch/reinhard.furrer/spam/issues
RoxygenNote: 6.1.1
# spam 2.5-1
BUG FIXES
* fixing fortran linking warning.
# spam 2.5-0
SIGNIFICANT USER-VISIBLE CHANGES
......
# HEADER ####################################################
# This is file spam/R/deprecated.R. #
# It is part of the R package spam, #
# --> https://CRAN.R-project.org/package=spam #
# --> https://CRAN.R-project.org/package=spam64 #
# --> https://git.math.uzh.ch/reinhard.furrer/spam #
# by Reinhard Furrer [aut, cre], Florian Gerber [aut], #
# Roman Flury [aut], Daniel Gerber [ctb], #
# Kaspar Moesinger [ctb] #
# HEADER END ################################################
validspamobject <- function( ...) {
# .Deprecated('validate_spam()')
message("`validspamobject()` is deprecated. Use `validate_spam()` directly")
validate_spam( ...)
}
spam.getOption <- function(...) {
# .Deprecated(msg="`spam.getOption( arg)` is deprecated.\n Use `getOption( spam.arg)` directly")
message("`spam.getOption( arg)` is deprecated. Use `getOption( spam.arg)` directly")
getOption(...)
}
spam.options <- function(...) {
# .Deprecated(msg="`spam.options( arg)` is deprecated.\n Use `options( spam.arg)` directly")
message("`spam.options( arg)` is deprecated. Use `options( spam.arg)` directly")
if (nargs() == 0) {
tmp <- names(options())
return(options()[ grep( "spam.", tmp)])
}
args <- list(...)
names(args) <- paste0("spam.", names(args))
do.call("options", args)
}
>spam_0.41: moved definitively to GIT. ChangeLog will consist of
`git log`
spam_0.41-0 2014-02-26 (RF)
- addressed several Rdevel CMD check --as-cran Notes.
- minor changes in tests/mle (improving speed)
- minor code tiding
- file header edits
spam_0.40-1 2014-02-20 (Florian Gerber)
- update grid_trace2() and grid_trace2.Rd
- eliminate bug in cov.mat() and correct typo in cov.Rd
add tests/covmat.R tests/covmat.Rout.save
changeset: 4:66173a00f913
tag: tip
user: Reinhard Furrer @ lappi <reinhard.furrer@math.uzh.ch>
date: Wed Aug 21 21:09:05 2013 +0200
summary: Adjusted DESCRIPTION, NEWS, ChangeLog for push to CRAN
changeset: 3:412496cbb8b3
user: Florian Gerber <florian.gerber@math.uzh.ch>
date: Tue Aug 20 15:36:34 2013 +0200
summary: gridBase NOT in dependency. comment germany.Rd about 'fields'
changeset: 2:2526f2c1d501
user: Florian Gerber <florian.gerber@math.uzh.ch>
date: Mon Aug 19 15:42:49 2013 +0200
summary: add plot grid_zoom() and grid_trace2() incl help files.
changeset: 1:2929fe7a2799
user: Florian Gerber <florian.gerber@math.uzh.ch>
date: Tue Aug 06 14:31:11 2013 +0200
summary: Test hg, small changes in spam0.30-0/man/mcmczoomPlot.Rd
changeset: 0:0029fc2741f4
user: Reinhard Furrer <reinhard.furrer@math.uzh.ch>
date: Mon Aug 05 13:53:20 2013 +0200
summary: First Version that runs...
This diff is collapsed.
This diff is collapsed.
% HEADER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This is file spam/man/history.spam.Rd. %
% It is part of the R package spam, %
% --> https://CRAN.R-project.org/package=spam %
% --> https://CRAN.R-project.org/package=spam64 %
% --> https://git.math.uzh.ch/reinhard.furrer/spam %
% by Reinhard Furrer [aut, cre], Florian Gerber [ctb], %
% Roman Flury [ctb], Daniel Gerber [ctb], %
% Kaspar Moesinger [ctb] %
% HEADER END %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\name{history}
\alias{history.spam}
\alias{spam.history}
\alias{history}
\title{Brief Overview of the History}
\description{Brief overview of \code{spam}s history}
\usage{
spam.history()
}
\details{Many years ago, I required sparse matrix algebra capacities in
\R for my research. The packages available at that time where not
necessarily satisfying for my purpose. Hence, I started writing my own
functions, somewhat inspired by the package \code{SparseM}.
Over the years, I decided to write an \R package, called \code{spam}.
In mean time, we have tree significant sparse matrix packages posted
on CRAN. I believe that all three have their own niche of users.
I believe that \code{spam} is stable, useful but definitely not fully
matured. I appreciate all comments and remarks.
There is no need to maintain here a complete list of changes. Older
versions are available on CRAN (>0.11), each coming with a proper
history file.
}
\references{See also a more detailed description at
\url{http://www.math.uzh.ch/furrer/software/spam/history.shtml}.}
\seealso{\code{\link{todo}}.}
\examples{
\dontrun{
## A complete history of changes
file.show(system.file("NEWS", package = "spam"))
file.show(system.file("0NEWS", package = "spam"))
}
}
\keyword{internal}
% HEADER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% This is file spam/man/todo.Rd. %
% It is part of the R package spam, %
% --> https://CRAN.R-project.org/package=spam %
% --> https://CRAN.R-project.org/package=spam64 %
% --> https://git.math.uzh.ch/reinhard.furrer/spam %
% by Reinhard Furrer [aut, cre], Florian Gerber [ctb], %
% Roman Flury [ctb], Daniel Gerber [ctb], %
% Kaspar Moesinger [ctb] %
% HEADER END %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\name{todo}
\alias{todo.spam}
\alias{todo}
\title{Small "ToDo" list}
\description{List of what needs to be done within \code{spam}
}
\usage{
todo()
}
\details{This is a non exhaustive list of where we need to work on spam
(of course the list is in random order):\cr
- extend demo(s)\cr
- write vignette\cr
- complete help files\cr
%Especially, there are still a few functions
%commented in various 'usage' sections (to avoid warnings when checking
%the library).\cr
- extend basic matrix operatation, comparisons, etc: \cr
\code{unique}, \code{duplicated}, ...
- improve subsetting via row extraction, incorporate matrix permutation\cr % xtrows
% - extend methods for \code{spam.chol.NgPeyton}: \cr
% e.g., \code{diag} => done
- implement other Cholesky routines (one eye glances to the LDL library). \cr
- what about an LU/SVD decomposition?\cr
% - implement \code{backsolve} and \code{forwardsolve} for \code{spam} class.\cr => done
% - it might be useful to implement certain lines of code in Fortran:
% say \code{rbind}, \code{cbind}, ...\cr => done
Any other items are welcome (\email{reinhard.furrer@math.uzh.ch}).\cr
}
\keyword{internal}
......@@ -912,8 +912,6 @@ C
C***********************************************************************
implicit none
C
logical, external :: neZERO
INTEGER NSUPER
INTEGER LINDX(*) , XSUPER(*)
INTEGER XLINDX(*) , XLNZ(*)
......@@ -943,11 +941,11 @@ C -------------------------
CDIR$ IVDEP
DO 400 IX = IXSTRT+1, IXSTOP
I = LINDX(IPNT)
IF (neZERO(RHS(I))) T = T - LNZ(IX)*RHS(I)
IF (abs(RHS(I)) .GT. 0.D0) T = T - LNZ(IX)*RHS(I)
IPNT = IPNT + 1
400 CONTINUE
IF(neZERO(T)) THEN
IF(abs(T) .GT. 0.D0) THEN
RHS(JCOL) = T/LNZ(IXSTRT)
ELSE
RHS(JCOL) = 0.D0
......@@ -1002,8 +1000,6 @@ C
C***********************************************************************
C
implicit none
logical, external :: neZERO
INTEGER NSUPER
INTEGER LINDX(*) , XSUPER(*)
......@@ -1031,7 +1027,7 @@ C ------------------------
DO 200 JCOL = FJCOL, LJCOL
IXSTOP = XLNZ(JCOL+1) - 1
IF (neZERO(RHS(JCOL))) THEN
IF (abs(RHS(JCOL)) .GT. 0.D0) THEN
T = RHS(JCOL)/LNZ(IXSTRT)
RHS(JCOL) = T
IPNT = JPNT + 1
......@@ -1094,7 +1090,6 @@ C
C***********************************************************************
C
implicit none
logical, external :: neZERO
INTEGER NSUPER
INTEGER LINDX(*) , XSUPER(*)
......@@ -1122,7 +1117,7 @@ C ------------------------
DO 200 JCOL = FJCOL, LJCOL
IXSTOP = XLNZ(JCOL+1) - 1
IF (neZERO(RHS(JCOL))) THEN
IF (abs(RHS(JCOL)) .GT. 0.D0) THEN
T = RHS(JCOL)/LNZ(IXSTRT)
RHS(JCOL) = T
IPNT = JPNT + 1
......@@ -1155,11 +1150,11 @@ C -------------------------
CDIR$ IVDEP
DO 400 IX = IXSTRT+1, IXSTOP
I = LINDX(IPNT)
IF(neZERO(RHS(I))) T = T - LNZ(IX)*RHS(I)
IF(abs(RHS(I)) .GT. 0.D0) T = T - LNZ(IX)*RHS(I)
IPNT = IPNT + 1
400 CONTINUE
IF (neZERO(T)) THEN
IF (abs(T) .GT. 0.D0) THEN
RHS(JCOL) = T/LNZ(IXSTRT)
ELSE
RHS(JCOL) = 0.D0
......
function eqZERO( a)
implicit none
logical eqZERO
double precision a
eqZERO = (abs( a) .LE. 1.1*epsilon( 0.0))
return
end function
function neZERO( a)
implicit none
logical neZERO
double precision a
neZERO = (abs( a) .GT. 1.1*epsilon( 0.0))
return
end function
function eqREAL( a, b)
implicit none
logical eqREAL
double precision a, b
eqREAL = (abs( a - b) .LE. 1.1*epsilon( 0.0))
return
end function
function neREAL( a, b)
implicit none
logical neREAL
c double precision eps
c parameter (eps = 1d-14)
double precision a, b
c neREAL = abs( a - b) .GT. eps
neREAL = (abs( a - b) .GT. 1.1*epsilon( 0.0))
return
end function
c
c\SCCS Information: @(#)
c FILE: debug.h SID: 2.3 DATE OF SID: 11/16/95 RELEASE: 2
c
c %---------------------------------%
c | See debug.doc for documentation |
c %---------------------------------%
integer logfil, ndigit, mgetv0,
& msaupd, msaup2, msaitr, mseigt, msapps, msgets, mseupd,
& mnaupd, mnaup2, mnaitr, mneigh, mnapps, mngets, mneupd,
& mcaupd, mcaup2, mcaitr, mceigh, mcapps, mcgets, mceupd
common /debug/
& logfil, ndigit, mgetv0,
& msaupd, msaup2, msaitr, mseigt, msapps, msgets, mseupd,
& mnaupd, mnaup2, mnaitr, mneigh, mnapps, mngets, mneupd,
& mcaupd, mcaup2, mcaitr, mceigh, mcapps, mcgets, mceupd
......@@ -83,8 +83,6 @@ c p power for minkowski
implicit none
logical, external :: eqREAL
double precision distfcn
external distfcn
......@@ -136,10 +134,10 @@ c in case nnz was too small, recall line to get a better estimate
endif
colindices(jja) = j
if (eqREAL(p,2)) then
if (abs(p-2) .le. 0.D0) then
entries(jja) = sqrt(tmp)
else
if (eqREAL(p,1)) then
if (abs(p-1) .le. 0.D0) then
entries(jja) = tmp
else
entries(jja) = tmp**pinv
......
......@@ -12,6 +12,32 @@ c dseigt.f
c dstqrb.f
c dsortr.f
c
c
c test for equal zero
c
function eqZERO( a)
implicit none
logical eqZERO
double precision a
eqZERO = (abs( a) .LE. 1.1*epsilon( 0.0))
return
end function
c
c test not equal to zero
c
function neZERO( a)
implicit none
logical neZERO
double precision a
neZERO = (abs( a) .GT. 1.1*epsilon( 0.0))
return
end function
c
c
c\BeginDoc
c
c\Name: dseupd
......
......@@ -85,17 +85,6 @@ c | time spent in the various stages of computation |
c | given by setting msaupd = 1. |
c %-------------------------------------------------%
c
cm include 'debug.h'
cm ndigit = -3
cm logfil = 6
cm msgets = 0
cm msaitr = 0
cm msapps = 0
cm msaupd = 0
cm msaup2 = 0
cm mseigt = 0
cm mseupd = 0
c
c %-------------------------------------------------%
c | The following sets dimensions for this problem. |
c %-------------------------------------------------%
......@@ -113,7 +102,6 @@ c
else if (iwhich .eq. 9) then
which = 'BE'
else
CcC callintpr(' Error: Invalid mode.', -1, 0, 0)
c
goto 9000
end if
......@@ -231,8 +219,6 @@ c %--------------------------%
c | Error message. Check the |
c | documentation in DSAUPD. |
c %--------------------------%
c
c call errpr (info)
c
goto 9000
c
......@@ -277,8 +263,6 @@ c %------------------------------------%
c | Error condition: |
c | Check the documentation of DSEUPD. |
c %------------------------------------%
c
c call errpr (ierr)
c
goto 9000
c
......
c *****************************************************************************
c
c print function for errorflags from __aupd/__eupd; debugging resp verbose purpose
c
subroutine errpr ( errf )
c
implicit none
c
integer errf
c
if ( errf .eq. 0 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' Normal exit', -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .gt. 0 ) then
c
if ( errf .eq. 1 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' Maximum number of iterations taken.', -1, 0, 0)
call intpr(' Increase the argument nitr or ncv.', -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
end if
c
call intpr(' ', -1, 0, 0)
call intpr(' Workload of the requested eigenvalues is too high.',
& -1, 0, 0)
call intpr(' Increase nitr and decrease ncv.', -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else
c
call intpr(' ', -1, 0, 0)
call intpr(' ERROR in the Implicitly Restarted Arnoldi Process.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
if ( errf .eq. -1 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' Dimension of input matrix is not positive.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .eq. -2 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' Requested eigenvalues must be positive.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .eq. -3 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' The number of requested eigenvalues is too high.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .eq. -4 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' The maximum number of Arnoldi update',
& -1, 0, 0)
call intpr(' iterations allowed must be greater than zero.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .eq. -5 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' WHICH must be one of LA,SA,LM,SM or LR,SR,LI,SI.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .eq. -14 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' The accuracy of the eigenvalues',
& -1, 0, 0)
call intpr(' is not sufficent enough.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else if ( errf .eq. -9999 ) then
c
call intpr(' ', -1, 0, 0)
call intpr(' Could not build an Arnoldi factorization',
& -1, 0, 0)
call intpr(' try to increase ncv and nitr.',
& -1, 0, 0)
call intpr(' ', -1, 0, 0)
c
else
c
call intpr(' ', -1, 0, 0)
call intpr(' Fatal error in fortran source, ',
& -1, 0, 0)
call intpr(' The ERRORFLAG is = ', -1, errf, 4)
call intpr(' ', -1, 0, 0)
c
end if
c
end if
c
end
c
SUBROUTINE SECOND( T )
*
REAL T
*
* -- LAPACK auxiliary routine (preliminary version) --
* Univ. of Tennessee, Univ. of California Berkeley, NAG Ltd.,
* Courant Institute, Argonne National Lab, and Rice University
* July 26, 1991
*
* Purpose
* =======
*
* SECOND returns the user time for a process in seconds.
* This version gets the time from the system function ETIME.
*
* .. Local Scalars ..
REAL T1
* ..
* .. Local Arrays ..
REAL TARRAY( 2 )
* ..
* .. External Functions ..
* REAL ETIME
* EXTERNAL ETIME
* ..
* .. Executable Statements ..
*
* T1 = ETIME( TARRAY )
* T = TARRAY( 1 )
RETURN
*
* End of SECOND
*
END
......@@ -1806,7 +1806,6 @@ c----------------------------------------------------------------------c
subroutine spamforward (n,p,x,b,l,jl,il)
implicit none
logical, external :: eqZERO
integer n, p, jl(*),il(n+1)
double precision x(n,p), b(n,p), l(*)
......@@ -1836,7 +1835,7 @@ c Reinhard Furrer June 2008, April 2012, Sept 2016, Nov 2019
c initialize k for next setting
k=0
c if first diagonal element is zero, break
if (eqZERO(l(1))) goto 5
if (abs(l(1)) .le. 0.D0) goto 5
c cycle over all columns of b
do i=1,p
......@@ -1850,7 +1849,7 @@ c first row has one element then cycle over all rows
t = t-l(j)*x(jl(j),i)
else
if (jl(j) .eq. k) then
if (eqZERO(l(j))) goto 5
if (abs(l(j)) .le. 0.D0) goto 5
c diagonal element is not zero, hence we divide and leave the loop
x(k,i) = t / l(j)
goto 3
......@@ -1867,7 +1866,6 @@ c diagonal element is not zero, hence we divide and leave the loop
c-----------------------------------------------------------------------
subroutine spamback (n,p,x,b,r,jr,ir)
implicit none
logical, external :: eqZERO
integer n, p, jr(*),ir(n+1)
double precision x(n,p), b(n,p), r(*)
......@@ -1892,7 +1890,7 @@ c--------------------------------------------------------------------
c Reinhard Furrer June 2008, April 2012, Sept 2016, Nov 2019
k = n+1
if (eqZERO( r(ir(n+1)-1))) goto 5
if (abs( r(ir(n+1)-1) ) .le. 0.D0) goto 5
do l=1,p
x(n,l) = b(n,l) / r(ir(n+1)-1)
do 3 k = n-1,1,-1
......@@ -1902,7 +1900,7 @@ c Reinhard Furrer June 2008, April 2012, Sept 2016, Nov 2019
t = t - r(j)*x(jr(j),l)
else
if (jr(j) .eq. k) then
if (eqZERO(r(j))) goto 5
if (abs(r(j)) .le. 0.D0) goto 5
c diagonal element is not zero, hence we divide and leave the loop
x(k,l) = t / r(j)
goto 3
......
c %--------------------------------%
c | See stat.doc for documentation |
c %--------------------------------%
c
c\SCCS Information: @(#)
c FILE: stat.h SID: 2.2 DATE OF SID: 11/16/95 RELEASE: 2
c
c real t0, t1, t2, t3, t4, t5
c save t0, t1, t2, t3, t4, t5
c
integer nopx, nbx, nrorth, nitref, nrstrt
real tsaupd, tsaup2, tsaitr, tseigt, tsgets, tsapps, tsconv,
& tnaupd, tnaup2, tnaitr, tneigh, tngets, tnapps, tnconv,
& tcaupd, tcaup2, tcaitr, tceigh, tcgets, tcapps, tcconv,
& tmvopx, tmvbx, tgetv0, titref, trvec
common /timing/
& nopx, nbx, nrorth, nitref, nrstrt,
& tsaupd, tsaup2, tsaitr, tseigt, tsgets, tsapps, tsconv,
& tnaupd, tnaup2, tnaitr, tneigh, tngets, tnapps, tnconv,
& tcaupd, tcaup2, tcaitr, tceigh, tcgets, tcapps, tcconv,
& tmvopx, tmvbx, tgetv0, titref, trvec
......@@ -42,7 +42,7 @@ Type 'q()' to quit R.
> library("spam")
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -255,4 +255,4 @@ default value for 'cex' in 'display' might not be the optimal choice
>
> proc.time()
user system elapsed
2.028 0.136 2.157
2.068 0.152 2.214
......@@ -58,7 +58,7 @@ Loading required package: fields
Loading required package: spam
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -71,8 +71,8 @@ The following objects are masked from 'package:base':
backsolve, forwardsolve
Loading required package: maps
See www.image.ucar.edu/~nychka/Fields for
a vignette and other supplements.
See https://github.com/NCAR/Fields for
an extensive vignette, other supplements and source code
> options(spam.structurebased=TRUE)
>
>
......@@ -284,4 +284,4 @@ See www.image.ucar.edu/~nychka/Fields for
>
> proc.time()
user system elapsed
1.512 0.156 1.678
1.564 0.212 1.777
......@@ -49,7 +49,7 @@ Type 'q()' to quit R.
> options( echo=FALSE)
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -101,4 +101,4 @@ NULL
>
> proc.time()
user system elapsed
4.616 0.196 4.801
5.084 0.220 5.308
......@@ -31,7 +31,7 @@ Type 'q()' to quit R.
> options( echo=FALSE)
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -39,4 +39,4 @@ suffix '.spam' to the function name, e.g. 'help( chol.spam)'.
>
> proc.time()
user system elapsed
1.000 0.048 1.045
1.008 0.112 1.114
......@@ -30,7 +30,7 @@ Type 'q()' to quit R.
> options( echo=FALSE)
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -49,4 +49,4 @@ suffix '.spam' to the function name, e.g. 'help( chol.spam)'.
>
> proc.time()
user system elapsed
1.504 0.192 1.697
1.512 0.224 1.737
......@@ -29,7 +29,7 @@ Type 'q()' to quit R.
> options( echo=FALSE)
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -59,4 +59,4 @@ Loading required package: evd
>
> proc.time()
user system elapsed
2.240 0.224 2.485
2.396 0.252 2.675
......@@ -31,7 +31,7 @@ Type 'q()' to quit R.
> options( echo=FALSE)
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -50,4 +50,4 @@ Class 'spam' (32-bit)
>
> proc.time()
user system elapsed
0.984 0.068 1.041
1.020 0.084 1.092
......@@ -35,7 +35,7 @@ Type 'q()' to quit R.
> options( echo=FALSE)
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -79,4 +79,4 @@ Class 'spam' (32-bit)
>
> proc.time()
user system elapsed
1.672 0.084 1.741
2.092 0.108 2.186
......@@ -39,7 +39,7 @@ Type 'q()' to quit R.
> library("spam")
Loading required package: dotCall64
Loading required package: grid
Spam version 2.5-0 (2019-12-05) is loaded.
Spam version 2.5-1 (2019-12-12) is loaded.
Type 'help( Spam)' or 'demo( spam)' for a short introduction
and overview of this package.
Help for individual functions is also obtained by adding the
......@@ -154,4 +154,4 @@ The following objects are masked from 'package:base':
>
> proc.time()
user system elapsed
1.472 0.220 1.688
1.528 0.200 1.725
This diff is collapsed.