JuliaApproximation / SemiclassicalOrthogonalPolynomials.jl

A Julia repository for semiclassical orthogonal polynomials
MIT License
7 stars 3 forks source link

ForwardDiff #85

Open ioannisPApapadopoulos opened 1 year ago

ioannisPApapadopoulos commented 1 year ago

I think the following used to work. Any ideas @TSGut @dlfivefifty ?

using SemiclassicalOrthogonalPolynomials
import ForwardDiff: derivative

julia> derivative(x -> SemiclassicalJacobi{eltype(x)}(1.1,1,1,1)[x,1], 0.5)
ERROR: type ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1} not supported
Stacktrace:
  [1] error(s::String)
    @ Base .\error.jl:35
  [2] _fftfloat(#unused#::Type{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}})
    @ AbstractFFTs C:\Users\john.papad\.julia\packages\AbstractFFTs\4iQz5\src\definitions.jl:38
  [3] _fftfloat(x::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1})
    @ AbstractFFTs C:\Users\john.papad\.julia\packages\AbstractFFTs\4iQz5\src\definitions.jl:39
  [4] fftfloat(x::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1})
    @ AbstractFFTs C:\Users\john.papad\.julia\packages\AbstractFFTs\4iQz5\src\definitions.jl:34
  [5] complexfloat(x::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}})
    @ AbstractFFTs C:\Users\john.papad\.julia\packages\AbstractFFTs\4iQz5\src\definitions.jl:47
  [6] ifft(x::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, region::UnitRange{Int64})
    @ AbstractFFTs C:\Users\john.papad\.julia\packages\AbstractFFTs\4iQz5\src\definitions.jl:214
  [7] ifft(x::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}})
    @ AbstractFFTs C:\Users\john.papad\.julia\packages\AbstractFFTs\4iQz5\src\definitions.jl:66
  [8] *(P::FastTransforms.ChebyshevTransformPlan{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Nothing, false, 1, UnitRange{Int64}}, x::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\chebyshevtransform.jl:686
  [9] \(a::ContinuumArrays.TransformFactorization{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevGrid{1, ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, FastTransforms.ChebyshevTransformPlan{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Nothing, false, 1, UnitRange{Int64}}}, b::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, false}}})
    @ ContinuumArrays C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\plans.jl:26
 [10] transform_ldiv
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:260 [inlined]
 [11] transform_ldiv
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:261 [inlined]
 [12] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:305 [inlined]
 [13] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:306 [inlined]
 [14] copy
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:307 [inlined]
 [15] #materialize#13
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22 [inlined]
 [16] materialize
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22 [inlined]
 [17] #ldiv#20
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [18] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [19] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [20] adaptivetransform_ldiv(A::ChebyshevT{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, f::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, false}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\adaptivetransform.jl:34
 [21] transform_ldiv
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\adaptivetransform.jl:2 [inlined]
 [22] transform_ldiv
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:261 [inlined]
 [23] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:305 [inlined]
 [24] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:306 [inlined]
 [25] copy
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:307 [inlined]
 [26] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.OPLayout, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, ChebyshevT{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, false}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [27] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.OPLayout, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, ChebyshevT{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, false}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [28] ldiv(A::ChebyshevT{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, B::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, false}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [29] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [30] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [31] ldiv(P::Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, f::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, false}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\classical\jacobi.jl:182
 [32] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [33] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:96 [inlined]
 [34] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\ClassicalOrthogonalPolynomials.jl:100 [inlined]
 [35] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:306 [inlined]
 [36] copy
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:307 [inlined]
 [37] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.MappedOPLayout, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [38] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.MappedOPLayout, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [39] ldiv(A::QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, B::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [40] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [41] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [42] _copy_ldiv_ldiv
    @ C:\Users\john.papad\.julia\packages\LazyArrays\qiCq2\src\linalg\inv.jl:121 [inlined]
 [43] copy
    @ C:\Users\john.papad\.julia\packages\LazyArrays\qiCq2\src\linalg\inv.jl:123 [inlined]
 [44] copy
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\normalized.jl:128 [inlined]
 [45] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [46] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [47] ldiv(A::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, B::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [48] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [49] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [50] _broadcast_mul_ldiv
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:121 [inlined]
 [51] copy(L::ArrayLayouts.Ldiv{ContinuumArrays.BasisLayout, LazyArrays.BroadcastLayout{typeof(*)}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}}})
    @ ContinuumArrays C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:148
 [52] copy
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\normalized.jl:140 [inlined]
 [53] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{typeof(*)}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [54] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{typeof(*)}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [55] ldiv(A::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, B::QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [56] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [57] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [58] cholesky_jacobimatrix(w::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}}, P::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\choleskyQR.jl:46
 [59] cholesky_jacobimatrix(w::Function, P::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\choleskyQR.jl:42
 [60] semiclassical_jacobimatrix(t::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, a::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, b::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, c::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1})
    @ SemiclassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\SemiclassicalOrthogonalPolynomials\vZ0Lu\src\SemiclassicalOrthogonalPolynomials.jl:145
 [61] SemiclassicalJacobi(t::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, a::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, b::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1}, c::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1})
    @ SemiclassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\SemiclassicalOrthogonalPolynomials\vZ0Lu\src\SemiclassicalOrthogonalPolynomials.jl:126
 [62] SemiclassicalJacobi
    @ C:\Users\john.papad\.julia\packages\SemiclassicalOrthogonalPolynomials\vZ0Lu\src\SemiclassicalOrthogonalPolynomials.jl:127 [inlined]
 [63] (::var"#45#46")(x::ForwardDiff.Dual{ForwardDiff.Tag{var"#45#46", Float64}, Float64, 1})
    @ Main .\REPL[44]:1
 [64] derivative(f::var"#45#46", x::Float64)
    @ ForwardDiff C:\Users\john.papad\.julia\packages\ForwardDiff\vXysl\src\derivative.jl:14
dlfivefifty commented 1 year ago

Are you using FastTransformsForwardDiff.jl? (This should be changed to an extension)

ioannisPApapadopoulos commented 1 year ago

Ah, thanks for the pointer! I will have a look.

ioannisPApapadopoulos commented 1 year ago

Unfortunately FastTransformsForwardDiff.jl does not work either. Seem the issue is with plan_cheb2jac

ERROR: MethodError: no method matching plan_cheb2jac(::Type{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::Int64, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1})

Closest candidates are:
  plan_cheb2jac(::AbstractArray{T}, ::Any...; z...) where T
   @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:440
  plan_cheb2jac(::Type{Complex{T}}, ::Any...; z...) where T<:Real
   @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:441
  plan_cheb2jac(::Type{Float32}, ::Integer, ::Any, ::Any; normcheb, normjac)
   @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:499
  ...

Stacktrace:
  [1] plan_cheb2jac(::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::Vararg{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}; z::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:440
  [2] plan_cheb2jac(::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:440
  [3] lib_cheb2jac(::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::Vararg{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}; z::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:442
  [4] lib_cheb2jac(::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::Vararg{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\libfasttransforms.jl:442
  [5] cheb2jac(::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::Vararg{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}; z::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\FastTransforms.jl:124
  [6] cheb2jac(::Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, ::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ::Vararg{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}})
    @ FastTransforms C:\Users\john.papad\.julia\packages\FastTransforms\05i6T\src\FastTransforms.jl:124
  [7] ldiv(P::Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, f::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, IntervalSets.ClosedInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}, false}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\classical\jacobi.jl:182
  [8] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
  [9] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:96 [inlined]
 [10] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\ClassicalOrthogonalPolynomials.jl:100 [inlined]
 [11] transform_ldiv_if_columns
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:306 [inlined]
 [12] copy
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:307 [inlined]
 [13] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.MappedOPLayout, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [14] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.MappedOPLayout, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [15] ldiv(A::QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, B::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [16] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [17] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [18] _copy_ldiv_ldiv
    @ C:\Users\john.papad\.julia\packages\LazyArrays\qiCq2\src\linalg\inv.jl:121 [inlined]
 [19] copy
    @ C:\Users\john.papad\.julia\packages\LazyArrays\qiCq2\src\linalg\inv.jl:123 [inlined]
 [20] copy
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\normalized.jl:128 [inlined]
 [21] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [22] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [23] ldiv(A::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, B::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [24] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [25] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [26] _broadcast_mul_ldiv
    @ C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:121 [inlined]
 [27] copy(L::ArrayLayouts.Ldiv{ContinuumArrays.BasisLayout, LazyArrays.BroadcastLayout{typeof(*)}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}}})
    @ ContinuumArrays C:\Users\john.papad\.julia\packages\ContinuumArrays\amUIf\src\bases\bases.jl:148
 [28] copy
    @ C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\normalized.jl:140 [inlined]
 [29] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{typeof(*)}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [30] materialize(M::ArrayLayouts.Ldiv{ClassicalOrthogonalPolynomials.NormalizedOPLayout{ClassicalOrthogonalPolynomials.MappedOPLayout}, LazyArrays.BroadcastLayout{typeof(*)}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:22
 [31] ldiv(A::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, B::QuasiArrays.BroadcastQuasiMatrix{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, typeof(*), Tuple{QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}, Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}}; kwds::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ ArrayLayouts C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98
 [32] ldiv
    @ C:\Users\john.papad\.julia\packages\ArrayLayouts\diElB\src\ldiv.jl:98 [inlined]
 [33] \
    @ C:\Users\john.papad\.julia\packages\QuasiArrays\V67pc\src\matmul.jl:34 [inlined]
 [34] cholesky_jacobimatrix(w::QuasiArrays.BroadcastQuasiVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, SemiclassicalOrthogonalPolynomials.var"#5#7"{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}}, P::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\choleskyQR.jl:46
 [35] cholesky_jacobimatrix(w::Function, P::Normalized{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, QuasiArrays.SubQuasiArray{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 2, Jacobi{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, Tuple{ContinuumArrays.AffineMap{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, DomainSets.UnitInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}, Inclusion{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, ChebyshevInterval{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}}, Base.Slice{InfiniteArrays.OneToInf{Int64}}}, false}, LazyArrays.Accumulate{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, 1, typeof(*), Vector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}, AbstractVector{ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}}}})
    @ ClassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\ClassicalOrthogonalPolynomials\purtY\src\choleskyQR.jl:42
 [36] semiclassical_jacobimatrix(t::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, a::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, b::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, c::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1})
    @ SemiclassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\SemiclassicalOrthogonalPolynomials\vZ0Lu\src\SemiclassicalOrthogonalPolynomials.jl:145
 [37] SemiclassicalJacobi(t::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, a::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, b::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1}, c::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1})
    @ SemiclassicalOrthogonalPolynomials C:\Users\john.papad\.julia\packages\SemiclassicalOrthogonalPolynomials\vZ0Lu\src\SemiclassicalOrthogonalPolynomials.jl:126
 [38] SemiclassicalJacobi
    @ C:\Users\john.papad\.julia\packages\SemiclassicalOrthogonalPolynomials\vZ0Lu\src\SemiclassicalOrthogonalPolynomials.jl:127 [inlined]
 [39] (::var"#15#16")(x::ForwardDiff.Dual{ForwardDiff.Tag{var"#15#16", Float64}, Float64, 1})
    @ Main c:\Users\john.papad\.julia\dev\AnnuliOrthogonalPolynomials\test\tmp_test.jl:26
 [40] derivative(f::var"#15#16", x::Float64)
    @ ForwardDiff C:\Users\john.papad\.julia\packages\ForwardDiff\vXysl\src\derivative.jl:14
 [41] top-level scope
    @ c:\Users\john.papad\.julia\dev\AnnuliOrthogonalPolynomials\test\tmp_test.jl:26
ioannisPApapadopoulos commented 1 year ago

I'm on FastTransforms v0.15.6 if that would make any difference.

TSGut commented 1 year ago

Is this break recent? I.e. did the recent semiclassicalops changes break it?

dlfivefifty commented 1 year ago

I don't know if we ever got around to cheb2jac. You just need to add the overloads: FastTransformsForwardDiff.jl is only 50 lines of code so you should be able to adapt it to other transforms. There's no mathematics to work out: linear operators just apply to the real and dual operators seaprately