Multivariate indices enumeration functions¶
Enumeration functions are bijections from to
. We detail here some particular bijections:
Hyperbolic enumeration function,
Linear enumeration function,
Anisotropic hyperbolic enumeration function,
Infinity norm enumeration function.
All these enumeration functions are illustrated in Plot enumeration function.
A possible use is to build a multivariate basis as the tensorization of univariate basis: this is the case for example in the functional chaos expansion setting (refer to Functional Chaos Expansion and Tensorized multivariate basis enumeration functions).
Let be a multi-index is defined by:
For any real number , we consider the
-hyperbolic norm (or
-norm for short) of a
multi-index
be defined by:
(1)¶
The operator is a norm if anf only if
and is
a pseudo-norm if
since it does not satisfy the triangular
inequality. However this abuse of language will be used in the
following. Note that the case
corresponds to the
definition of the length of
.
An enumeration function is a bijection from
to
,
which creates a one-to-one mapping between an integer
and a multi-index
. The function
is defined by:
The enumeration function orders the elements according to the graded reverse lexicographic order ([sullivan2015]) as follows:
,
for any
and any
we have:
which means that:
either
,
or
and : either
, or there exists
such that:
which means that in that case, either the first component of
is greater than the first component of
, or all the components of
and
are equal until the component
and the component
of
is greater than the component
of
.
Hyperbolic enumeration function¶
Let be a real positive number. Let
be the set of
multi-indices with
-norm not greater than
as
follows:
(2)¶
Moreover, let the front of be defined by:
where is a multi-index with a unit
-entry
and zero
-entries,
.
We also define the set of candidates from the elements of . The set of
the candidates is denoted by
and is defined by:
We note that for all ,
because for any
,
there exists
such that
.
The principle consists in exploring the space through the
-norm of its elements. In this purpose, we define an appropriate
increasing sequence
as follows:
The sequence is well defined because by definition, all the elements of
have a
-norm strictly greater than
.
From the sequence , we call
the sequence of cumulated strata.
The sequence
of the strata is defined by:
Note that we have and that
.
Based on this definition of strata , the elements are enumerated according to the graded reverse lexicographic order defined previously. Note that:
means that
is inside a strata of lower index than
,
means that
and
are inside the same strata.
Linear enumeration function¶
The linear enumeration function is a hyperbolic enumeration function where . It
means that
which is the length of the multi-index
.
In that case, the sequence is
.
Anisotropic hyperbolic enumeration function¶
We consider enumeration functions based on an anisotropic hyperbolic norm defined by:
(3)¶
where the weights are real positive numbers. They enable to weight
some specific marginal indices.
In this setup, we consider both schemes outlined in the previous paragraph: it is only necessary to
replace the isotropic -norm in (2) with the
-anisotropic one.
This enumerate function emphasizes multi-indices whose components are larger when the associated weights are smaller.
Infinity norm enumeration function¶
We consider the enumeration function based on the infinite norm:
(4)¶
In that case, we have .
If , then
.
OpenTURNS