Skip to content

Commit eb70e08

Browse files
committed
Mix fixes / adapting to renaming
1 parent 7c589a9 commit eb70e08

File tree

2 files changed

+11
-22
lines changed

2 files changed

+11
-22
lines changed

src/dct.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -172,4 +172,4 @@ end
172172

173173
*(p::DCTPlan{T,K,true}, x::StridedArray{T}) where {T,K} = mul!(x, p, x)
174174

175-
AbstractFFTs.ProjectionStyle(::DCTPlan) = AbstractFFTs.UnitaryProjectionStyle()
175+
AbstractFFTs.AdjointStyle(::DCTPlan) = AbstractFFTs.UnitaryAdjointStyle()

src/fft.jl

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1053,41 +1053,30 @@ end
10531053
#######################################################################
10541054

10551055
"""
1056-
UnitaryProjectionStyle()
1057-
1058-
Projection style for transforms that are unitary
1059-
"""
1060-
struct UnitaryProjectionStyle <: AbstractFFTs.ProjectionStyle end
1061-
1062-
"""
1063-
R2RProjectionStyle(kinds)
1056+
R2RAdjointStyle(kinds)
10641057
10651058
Projection style for real to real transforms
10661059
"""
1067-
struct R2RProjectionStyle{K} <: AbstractFFTs.ProjectionStyle
1060+
struct R2RAdjointStyle{K} <: AbstractFFTs.AdjointStyle
10681061
kinds::K
10691062
end
10701063

1071-
AbstractFFTs.ProjectionStyle(::cFFTWPlan) = AbstractFFTs.NoProjectionStyle()
1072-
AbstractFFTs.ProjectionStyle(::rFFTWPlan{T, FORWARD}) where {T} = AbstractFFTs.RealProjectionStyle()
1073-
AbstractFFTs.ProjectionStyle(P::rFFTWPlan{T, BACKWARD}) where {T} = AbstractFFTs.RealInverseProjectionStyle(P.osz[first(P.region)])
1074-
AbstractFFTs.ProjectionStyle(P::r2rFFTWPlan) = AbstractFFTs.R2RProjectionStyle(P.kinds)
1075-
1076-
AbstractFFTs._output_size(p::Plan, ::UnitaryProjectionStyle) = size(p)
1077-
AbstractFFTs._output_size(p::Plan, ::R2RProjectionStyle) = size(p)
1064+
AbstractFFTs.AdjointStyle(::cFFTWPlan) = AbstractFFTs.FFTAdjointStyle()
1065+
AbstractFFTs.AdjointStyle(::rFFTWPlan{T, FORWARD}) where {T} = AbstractFFTs.RFFTAdjointStyle()
1066+
AbstractFFTs.AdjointStyle(P::rFFTWPlan{T, BACKWARD}) where {T} = AbstractFFTs.IRFFTAdjointStyle(P.osz[first(P.region)])
1067+
AbstractFFTs.AdjointStyle(P::r2rFFTWPlan) = AbstractFFTs.R2RAdjointStyle(P.kinds)
10781068

1079-
function _mul(p::AdjointPlan{T}, x::AbstractArray, ::UnitaryProjectionStyle) where {T}
1080-
return p.p \ x
1081-
end
1069+
AbstractFFTs._output_size(p::Plan, ::R2RAdjointStyle) = size(p)
10821070

1083-
function _mul(p::AdjointPlan{T}, x::AbstractArray, PS::R2RProjectionStyle) where {T}
1071+
# TODO: this needs finishing
1072+
function AbstractFFTs.adjoint_mul(p::Plan{T}, x::AbstractArray, PS::R2RAdjointStyle) where {T}
10841073
kinds = PS.kinds
10851074
dims = fftdims(p)
10861075

10871076
N = 1
10881077
# Ref: https://www.fftw.org/fftw3_doc/1d-Real_002deven-DFTs-_0028DCTs_0029.html
10891078
# Normalization: P \ P * u = K * u
1090-
# 0, 1 , 2 : NoProjectionStyle() type: K = prod(size(N))
1079+
# 0, 1 , 2 : FFTAdjointStyle() type: K = prod(size(N))
10911080
# 3, 6 : DCTs: K = 2 * (N - 1)
10921081
# 4, 5 : DCTs: K = 2 * N
10931082
# 7, 10: DSTs: K = 2 * (N + 1)

0 commit comments

Comments
 (0)