volumential.box_operators#
Box-local (box-specific) maps, reductions and modal filters.
A box-specific operator acts on the quadrature nodes of one leaf box at a time,
independently of every other box. This module owns those operators and the
filter vectors they take; all of its public names are re-exported by
volumential.tools for backwards compatibility.
- class volumential.box_operators.BoxSpecificMap[source]#
Bases:
KernelCacheWrapperBox-specific transform that maps between datum defined on quadrature nodes. Being box-specific means that the transform for each box is independent from the rest of the boxes.
- class volumential.box_operators.DiscreteLegendreTransform(dim, degree)[source]#
Bases:
BoxSpecificMapTransform from nodal values to Legendre polynomial coefficients for all cells (leaf boxes of a boxtree Tree object). It is assumed that the traversal is built over a tree where the sources and targets coincide.
- class volumential.box_operators.InverseDiscreteLegendreTransform[source]#
Bases:
BoxSpecificMapBox-specific transform that maps box-local modal coefficients to nodal values. Inverse of
DiscreteLegendreTransform.
- class volumential.box_operators.BoxSpecificReduction[source]#
Bases:
KernelCacheWrapperBox-specific reduction that maps for each box a data vector defined on the quadrature nodes to a scalar. Being box-specific means that the reductions for each box is independent from the rest of the boxes.
- class volumential.box_operators.BoxSum(dim, degree)[source]#
Bases:
BoxSpecificReductionAdds up nodal values within each box.