-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Since quasiarrays use non-classical indexing, IndexStyle should not fall back to IndexCartesian
which assumes continuous integer indexing.
The index style of a quasiarray could be like IndexHybrid{IndexStyle(axes1),IndexStyle(axes2),...}
. The index style of a general axes is IndexSet{typeof(union(axes))}
. For example, IndexStyle(::ChebyshevU) = IndexHybrid{IndexSet{ChebyshevInterval},IndexInfLinear}
.
By defining index styles, concatenation and set operations can be well defined. A concatenation over IndexInfLinear
assumes interlacing. A concatenation over IndexSet
assumes overlay. Adding or taking average in the intersecion is not generic as +
is not defined for some types.
If one wants piecewise function, one can define IndexElementSet
that allows splicing sets.