You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/chebyshevtransform.jl
+14-1Lines changed: 14 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -239,6 +239,10 @@ IChebyshevTransformPlan{T,kind,K}(F::FFTW.r2rFFTWPlan{T,K,inplace,N,R}) where {T
239
239
inv(P::ChebyshevTransformPlan{T,2,K}) where {T,K} =IChebyshevTransformPlan{T,2,K}(P.plan)
240
240
inv(P::IChebyshevTransformPlan{T,2,K}) where {T,K} =ChebyshevTransformPlan{T,2,K}(P.plan)
241
241
242
+
inv(P::ChebyshevTransformPlan{T,1,K,inplace,N}) where {T,K,inplace,N} =IChebyshevTransformPlan{T,1,kindtuple(IFIRSTKIND,N,P.plan.region...)}(inv(P.plan).p)
243
+
inv(P::IChebyshevTransformPlan{T,1,K,inplace,N}) where {T,K,inplace,N} =ChebyshevTransformPlan{T,1,kindtuple(FIRSTKIND,N,P.plan.region...)}(inv(P.plan).p)
244
+
245
+
242
246
243
247
\(P::ChebyshevTransformPlan, x::AbstractArray) =inv(P) * x
244
248
\(P::IChebyshevTransformPlan, x::AbstractArray) =inv(P) * x
@@ -526,13 +530,22 @@ function plan_ichebyshevutransform(x::AbstractArray{T,N}, ::Val{1}, dims...; kws
526
530
end
527
531
functionplan_ichebyshevutransform(x::AbstractArray{T,N}, ::Val{2}, dims...; kws...) where {T<:fftwNumber,N}
528
532
any(≤(1),size(x)) &&throw(ArgumentError("Array must contain at least 2 entries"))
# second kind Chebyshev transforms share a plan with their inverse
541
+
# so we support this via inv
542
+
inv(P::ChebyshevUTransformPlan{T,2,K}) where {T,K} =IChebyshevUTransformPlan{T,2,K}(P.plan)
543
+
inv(P::IChebyshevUTransformPlan{T,2,K}) where {T,K} =ChebyshevUTransformPlan{T,2,K}(P.plan)
544
+
545
+
inv(P::ChebyshevUTransformPlan{T,1,K,inplace,N}) where {T,K,inplace,N} =IChebyshevUTransformPlan{T,1,kindtuple(IUFIRSTKIND,N,P.plan.region...)}(inv(P.plan).p)
546
+
inv(P::IChebyshevUTransformPlan{T,1,K,inplace,N}) where {T,K,inplace,N} =ChebyshevUTransformPlan{T,1,kindtuple(UFIRSTKIND,N,P.plan.region...)}(inv(P.plan).p)
547
+
548
+
536
549
function_ichebyu1_postscale!(_, x::AbstractVector{T}) where T
0 commit comments