MultiIndexLimiter#

namespace MultiIndexLimiter#
class And#
#include <MultiIndexLimiter.h>

Combines two limiters through an AND operation.

This class will return true if both limiters given to the constructor return true.

class Anisotropic#
#include <MultiIndexLimiter.h>

Declares multiindices as feasible if their entries for less important dimensions are not too high.

Given a weight vector \( w = (w_i)_{i=1}^d \) with \( w_i \in [0,1] \) and a cutoff threshold \( \epsilon \in (0,1)\), this limiter declares a multiindex \( \nu = (\nu_i)_{i=1}^d \) as feasible if \( w^\nu := \prod_{i=1}^d w_i^{\nu_i} > \epsilon \). It thus implements the multiindex selection criterion for the construction of a priori anisotropic sparse grids as described in Algorithm 2 in

  • Zech, Jakob. Sparse-grid approximation of high-dimensional parametric PDEs. ETH Zurich, 2018.

class Dimension#
#include <MultiIndexLimiter.h>

Provides bounds on what dimensions are allowed to have nonzero values.

This limiter only allows terms that satisfy \(\mathbf{j}_d = 0 \) for \(d<D_L\) or \(d>=D_L+M\) for a lower bound \(D_L\) and length \(M\).

class MaxDegree#
#include <MultiIndexLimiter.h>

Provides a cap on the maximum value of each component the multiindex.

This limter only allows terms that satisfy \(\mathbf{j}_i\leq p_i\) for \(i\in \{1,2,\ldots,D\}\), where \(p\) is a vector of upper bounds.

class None#
#include <MultiIndexLimiter.h>

Returns true for any multiindex.

This class is used as a default in many places where a limiter is not always needed. IsFeasible will return true for any multiindex.

class NonzeroDiag#
#include <MultiIndexLimiter.h>

Restricts acceptable to any term that has nonzero diagonal entries.

This limiter only allows terms that satisfy \(\mathbf{j}_d \neq 0\) when the multi-index \(\mathbf{j}\in\mathbb{N}_0^d\).

class Or#
#include <MultiIndexLimiter.h>

Combines two limiters through an OR operation.

This class will return true if either of the limiters given to the constructor return true.

class Separable#
#include <MultiIndexLimiter.h>

Restricts multi-indices to refuse cross-terms.

This limiter only allows terms that satisfy \(\mathbf{j}_d = 0\) or \(\mathbf{j}_d=\|\mathbf{j}\|_1\), where \(\mathbf{j}\in\mathbb{N}_0^d\) is the multiindex.

class TotalOrder#
class Xor#
#include <MultiIndexLimiter.h>

Combines two limiters through an XOR operation.

This class will return true if exactly one of the limiters given to the constructor returns true.