File: Math.sparse3Darray.Rd

package info (click to toggle)
r-cran-spatstat.sparse 3.1-0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 312 kB
  • sloc: ansic: 442; sh: 13; makefile: 2
file content (132 lines) | stat: -rwxr-xr-x 3,971 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
\name{Math.sparse3Darray}
\alias{Math.sparse3Darray}
\alias{Ops.sparse3Darray}
\alias{Complex.sparse3Darray}
\alias{Summary.sparse3Darray}
\title{S3 Group Generic Methods for Sparse Three-Dimensional Arrays}
\description{
  Group generic methods which make it possible to
  apply the familiar mathematical operators and functions
  to sparse three-dimensional arrays (objects of class
  \code{"sparse3Darray"}).
  See Details for a list of implemented functions.
}
\usage{
## S3 methods for group generics have prototypes:
\special{Math(x, \dots)}
\special{Ops(e1, e2)}
\special{Complex(z)}
\special{Summary(\dots, na.rm=FALSE)}
%NAMESPACE S3method("Math", "sparse3Darray")
%NAMESPACE S3method("Ops", "sparse3Darray")
%NAMESPACE S3method("Complex", "sparse3Darray")
%NAMESPACE S3method("Summary", "sparse3Darray")
}
\arguments{
  \item{x, z, e1, e2}{
    Sparse three-dimensional arrays (objects of class
    \code{"sparse3Darray"}). Alternatively \code{e1} or \code{e2} can be
    a single scalar, vector, sparse vector, matrix or sparse matrix.
  }
  \item{\dots}{further arguments passed to methods.}
  \item{na.rm}{
    Logical value specifying whether missing values
    should be removed. 
  }
}
\details{
  These group generics make it possible to
  perform element-wise arithmetic and logical operations
  with sparse three-dimensional arrays, or apply mathematical functions
  element-wise, or compute standard summaries such as the mean and maximum.
  
  Below is a list of mathematical functions and operators which are
  defined for sparse 3D arrays. 

  \enumerate{
    \item Group \code{"Math"}:
    \itemize{
      \item
      \code{abs}, \code{sign}, \code{sqrt},\cr
      \code{floor}, \code{ceiling}, \code{trunc},\cr
      \code{round}, \code{signif}

      \item
      \code{exp}, \code{log},  \code{expm1}, \code{log1p},\cr
      \code{cos}, \code{sin}, \code{tan},\cr
      \code{cospi}, \code{sinpi}, \code{tanpi},\cr
      \code{acos}, \code{asin}, \code{atan}

      \code{cosh}, \code{sinh}, \code{tanh},\cr
      \code{acosh}, \code{asinh}, \code{atanh}

      \item
      \code{lgamma}, \code{gamma}, \code{digamma}, \code{trigamma}
      \item \code{cumsum}, \code{cumprod}, \code{cummax}, \code{cummin}
    }

    \item Group \code{"Ops"}:
    \itemize{
      \item
      \code{"+"}, \code{"-"}, \code{"*"}, \code{"/"},
      \code{"^"}, \code{"\%\%"}, \code{"\%/\%"}

      \item \code{"&"}, \code{"|"}, \code{"!"}

      \item \code{"=="}, \code{"!="},
      \code{"<"}, \code{"<="}, \code{">="}, \code{">"}
    }

    \item Group \code{"Summary"}:
    \itemize{
      \item \code{all}, \code{any}
      \item \code{sum}, \code{prod}
      \item \code{min}, \code{max}
      \item \code{range}
    }

    \item Group \code{"Complex"}:
    \itemize{
      \item \code{Arg}, \code{Conj}, \code{Im}, \code{Mod}, \code{Re}
    }
  }
}
\seealso{
  \code{\link{sparse3Darray}},
  \code{\link{tensorSparse}}
}
\examples{
  M <- sparse3Darray(i=1:4, j=sample(1:4, replace=TRUE),
                     k=c(1,2,1,2), x=1:4, dims=c(5,5,2))
  negM <- -M
  twoM <- M + M
  Mplus <- M + 1 ## not sparse!
  posM <- (M > 0)
  range(M)
  sinM <- sin(M)
  cosM <- cos(M) ## not sparse!
  expM1 <- expm1(M)
}
\value{
  The result of group \code{"Math"} functions is another 
  three-dimensional array of the same dimensions as \code{x},
  which is sparse if the function maps 0 to 0, and otherwise is a
  full three-dimensional array.

  The result of group \code{"Ops"} operators is 
  another three-dimensional array of the same dimensions as
  \code{e1} and \code{e2}, which is sparse if both \code{e1} and
  \code{e2} are sparse.

  The result of group \code{"Complex"} functions is 
  another sparse three-dimensional array of the same dimensions as
  \code{z}.

  The result of group \code{"Summary"} functions is
  a logical value or a numeric value or a numeric vector of length 2.
}
\author{
  \spatstatAuthors.
}
\keyword{spatial}
\keyword{methods}