unitSphere_polynomial-class {multIntTestFunc} | R Documentation |
An S4 class to represent the function \prod_{i=1}^n x_i^{a_i}
on S^{n-1}
Description
Implementation of the function
f \colon S^{n-1} \to R,\, \vec{x} \mapsto f(\vec{x}) = \prod_{i=1}^n x_i^{a_i},
where n \in \{1,2,3,\ldots\}
is the dimension of the integration domain S^{n-1} = \{\vec{x}\in R^n : \Vert \vec{x} \Vert_2 = 1\}
and a_i \in \{0,1,2,3,\ldots\}
, i=1,\ldots,n
, are parameters.
If at least one of the coefficients a_i
is odd, i.e., a_i\in\{1,3,5,7,\ldots\}
for at leas one i=1,\ldots,n
, the integral is zero, otherwise the integral is known to be
\int_{S^{n-1}} f(\vec{x}) d\vec{x} = 2\frac{\prod_{i=1}^n\Gamma(b_i)}{\Gamma(\sum_{i=1}^n b_i)},
where b_i = (a_i+1)/2
.
Details
Due to the difficulty of testing \Vert \vec{x} \Vert_2 = 1
in floating point arithmetic this class also implements the function "domainCheckP".
This allows to pass a list with an additional non-negative parameter "eps" representing a non-negative real number \varepsilon
and allows to test 1-\varepsilon \leq \Vert \vec{x} \Vert_2 \leq 1+\varepsilon
.
See also the documentation of the function "checkUnitSphere" that is used to perform the checks.
The instance needs to be created with two parameters representing the dimension n
and a n
-dimensional vector of integers (including 0
) representing the exponents.
Slots
dim
An integer that captures the dimension
expo
An vector that captures the exponents
Author(s)
Klaus Herrmann
Examples
n <- as.integer(3)
f <- new("unitSphere_polynomial",dim=n,expo=c(1,2,3))