Skip to content

Add new index styles #104

@putianyi889

Description

@putianyi889

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions