# 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.