@@ -10,12 +10,12 @@ const BlockOneTo = BlockRange{1,Tuple{OneTo{Int}}}
1010
1111copy (P:: MultivariateOrthogonalPolynomial ) = P
1212
13- getindex (P :: MultivariateOrthogonalPolynomial{D} , xy :: StaticVector{D} , JR :: BlockOneTo ) where D = error (" Overload" )
14- getindex (P :: MultivariateOrthogonalPolynomial{D} , xy :: StaticVector{D} , J :: Block{1} ) where D = P[xy , Block .(OneTo (Int (J)))][J]
15- getindex (P :: MultivariateOrthogonalPolynomial{D} , xy :: StaticVector{D} , JR :: BlockRange{1} ) where D = P[xy , Block .(OneTo (Int (maximum (JR))))][JR]
16- getindex (P :: MultivariateOrthogonalPolynomial{D} , xy :: StaticVector{D} , Jj :: BlockIndex{1} ) where D = P[xy , block (Jj)][blockindex (Jj)]
17- getindex (P :: MultivariateOrthogonalPolynomial{D} , xy :: StaticVector{D} , j :: Integer ) where D = P[xy , findblockindex (axes (P,2 ), j)]
18- getindex (P :: MultivariateOrthogonalPolynomial{D} , xy :: StaticVector{D} , jr :: AbstractVector{<:Integer} ) where D = P[xy , Block .(OneTo (Int (findblock (axes (P,2 ), maximum (jr)))))][jr]
13+ _getindex ( :: Type{Tuple{IND1,IND2}} , P :: MultivariateOrthogonalPolynomial , (𝐱,JR) :: Tuple{IND1, BlockOneTo} ) where {IND1,IND2} = error (" Overload" )
14+ _getindex ( :: Type{Tuple{IND1,IND2}} , P :: MultivariateOrthogonalPolynomial , (𝐱,J) :: Tuple{IND1, Block{1}} ) where {IND1,IND2} = P[𝐱 , Block .(OneTo (Int (J)))][J]
15+ _getindex ( :: Type{Tuple{IND1,IND2}} , P :: MultivariateOrthogonalPolynomial , (𝐱,JR) :: Tuple{IND1, BlockRange{1}} ) where {IND1,IND2} = P[𝐱 , Block .(OneTo (Int (maximum (JR))))][JR]
16+ _getindex ( :: Type{Tuple{IND1,IND2}} , P :: MultivariateOrthogonalPolynomial , (𝐱,Jj) :: Tuple{IND1, BlockIndex{1}} ) where {IND1,IND2} = P[𝐱 , block (Jj)][blockindex (Jj)]
17+ _getindex ( :: Type{Tuple{IND1,IND2}} , P :: MultivariateOrthogonalPolynomial , (𝐱,j) :: Tuple{IND1,IND2} ) where {IND1,IND2} = P[𝐱 , findblockindex (axes (P,2 ), j)]
18+ _getindex ( :: Type{Tuple{IND1,IND2}} , P :: MultivariateOrthogonalPolynomial , (𝐱,jr) :: Tuple{IND1,AbstractArray{IND2}} ) where {IND1,IND2} = P[𝐱 , Block .(OneTo (Int (findblock (axes (P,2 ), maximum (jr)))))][jr]
1919
2020const FirstInclusion = BroadcastQuasiVector{<: Any , typeof (first), <: Tuple{Inclusion} }
2121const LastInclusion = BroadcastQuasiVector{<: Any , typeof (last), <: Tuple{Inclusion} }
@@ -91,3 +91,7 @@ const MAX_PLOT_BLOCKS = 200
9191grid_layout (:: AbstractMultivariateOPLayout , S, n:: Integer ) = grid (S, findblock (axes (S,2 ), n))
9292plotgrid_layout (:: AbstractMultivariateOPLayout , S, n:: Integer ) = plotgrid (S, findblock (axes (S,2 ), n))
9393plotgrid_layout (:: AbstractMultivariateOPLayout , S, B:: Block{1} ) = grid (S, min (2 B, Block (MAX_PLOT_BLOCKS)))
94+
95+
96+ grid (P:: MultivariateOrthogonalPolynomial , n:: Int ) = grid (P, findblock (axes (P,2 ),n))
97+ plan_transform (P:: MultivariateOrthogonalPolynomial , Bs:: NTuple{N,Int} , dims= ntuple (identity,Val (N))) where N = plan_transform (P, findblock .(Ref (axes (P,2 )), Bs), dims)
0 commit comments