# unitSphere_polynomial-class: An S4 class to represent the function prod_{i=1}^n x_i^{a_i}... In multIntTestFunc: Provides Test Functions for Multivariate Integration

 unitSphere_polynomial-class 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

Klaus Herrmann

### Examples

n <- as.integer(3)
f <- new("unitSphere_polynomial",dim=n,expo=c(1,2,3))


multIntTestFunc documentation built on April 19, 2023, 5:07 p.m.