volume.ellipsoid: Compute the Volume (of an Ellipsoid)

Description Usage Arguments Value Author(s) See Also Examples

View source: R/ellipsoidhull.R View source: R/ellipsoidhull.R

Description

Compute the volume of geometric R object. This is a generic function and has a method for ellipsoid objects (typically resulting from ellipsoidhull().

Usage

1
2
3
volume(object, ...)
## S3 method for class 'ellipsoid'
volume(object, log = FALSE, ...)

Arguments

object

an R object the volume of which is wanted; for the ellipsoid method, an object of that class (see ellipsoidhull or the example below).

log

logical indicating if the volume should be returned in log scale. Maybe needed in largish dimensions.

...

potential further arguments of methods, e.g. log.

Value

a number, the volume V (or \log(V) if log = TRUE) of the given object.

Author(s)

Martin Maechler (2002, extracting from former clusplot code); Keefe Murphy (2019) provided code for dimensions d > 2.

See Also

ellipsoidhull for spanning ellipsoid computation.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
## example(ellipsoidhull) # which defines 'ellipsoid' object <namefoo>

myEl <- structure(list(cov = rbind(c(3,1),1:2), loc = c(0,0), d2 = 10),
                   class = "ellipsoid")
volume(myEl)# i.e. "area" here (d = 2)
myEl # also mentions the "volume"

set.seed(1)
d5 <- matrix(rt(500, df=3), 100,5)
e5 <- ellipsoidhull(d5)

Example output

[1] 70.24815
'ellipsoid' in 2 dimensions:
 center = ( 0 0 ); squared ave.radius d^2 =  10 
 and shape matrix =
     [,1] [,2]
[1,]    3    1
[2,]    1    2
  hence, area  =  70.248 

cluster documentation built on April 17, 2021, 9:07 a.m.