Skip to content

Commit 5896276

Browse files
committed
comment out matrix transforms, add chebyshev point tests
1 parent 4d4751b commit 5896276

File tree

2 files changed

+58
-45
lines changed

2 files changed

+58
-45
lines changed

src/chebyshevtransform.jl

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -119,51 +119,51 @@ end
119119

120120

121121
# Matrix inputs
122-
123-
124-
function chebyshevtransform!(X::AbstractMatrix{T}; kind::Integer=1) where T<:fftwNumber
125-
if kind == 1
126-
if size(X) == (1,1)
127-
X
128-
else
129-
X=r2r!(X,REDFT10)
130-
X[:,1]/=2;X[1,:]/=2;
131-
lmul!(1/(size(X,1)*size(X,2)),X)
132-
end
133-
elseif kind == 2
134-
if size(X) == (1,1)
135-
X
136-
else
137-
X=r2r!(X,REDFT00)
138-
lmul!(1/((size(X,1)-1)*(size(X,2)-1)),X)
139-
X[:,1]/=2;X[:,end]/=2
140-
X[1,:]/=2;X[end,:]/=2
141-
X
142-
end
143-
end
144-
end
145-
146-
function ichebyshevtransform!(X::AbstractMatrix{T}; kind::Integer=1) where T<:fftwNumber
147-
if kind == 1
148-
if size(X) == (1,1)
149-
X
150-
else
151-
X[1,:]*=2;X[:,1]*=2
152-
X = r2r(X,REDFT01)
153-
lmul!(0.25, X)
154-
end
155-
elseif kind == 2
156-
if size(X) == (1,1)
157-
X
158-
else
159-
X[1,:]*=2;X[end,:]*=2;X[:,1]*=2;X[:,end]*=2
160-
X=chebyshevtransform!(X;kind=kind)
161-
X[1,:]*=2;X[end,:]*=2;X[:,1]*=2;X[:,end]*=2
162-
lmul!((size(X,1)-1)*(size(X,2)-1)/4,X)
163-
end
164-
end
165-
end
166-
122+
#
123+
#
124+
# function chebyshevtransform!(X::AbstractMatrix{T}; kind::Integer=1) where T<:fftwNumber
125+
# if kind == 1
126+
# if size(X) == (1,1)
127+
# X
128+
# else
129+
# X=r2r!(X,REDFT10)
130+
# X[:,1]/=2;X[1,:]/=2;
131+
# lmul!(1/(size(X,1)*size(X,2)),X)
132+
# end
133+
# elseif kind == 2
134+
# if size(X) == (1,1)
135+
# X
136+
# else
137+
# X=r2r!(X,REDFT00)
138+
# lmul!(1/((size(X,1)-1)*(size(X,2)-1)),X)
139+
# X[:,1]/=2;X[:,end]/=2
140+
# X[1,:]/=2;X[end,:]/=2
141+
# X
142+
# end
143+
# end
144+
# end
145+
#
146+
# function ichebyshevtransform!(X::AbstractMatrix{T}; kind::Integer=1) where T<:fftwNumber
147+
# if kind == 1
148+
# if size(X) == (1,1)
149+
# X
150+
# else
151+
# X[1,:]*=2;X[:,1]*=2
152+
# X = r2r(X,REDFT01)
153+
# lmul!(0.25, X)
154+
# end
155+
# elseif kind == 2
156+
# if size(X) == (1,1)
157+
# X
158+
# else
159+
# X[1,:]*=2;X[end,:]*=2;X[:,1]*=2;X[:,end]*=2
160+
# X=chebyshevtransform!(X;kind=kind)
161+
# X[1,:]*=2;X[end,:]*=2;X[:,1]*=2;X[:,end]*=2
162+
# lmul!((size(X,1)-1)*(size(X,2)-1)/4,X)
163+
# end
164+
# end
165+
# end
166+
#
167167

168168

169169
## Chebyshev U

test/chebyshevtests.jl

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
using FastTransforms, Compat, Compat.Test
22

33
@testset "Chebyshev transform" begin
4+
@testset "Chebyshev points" begin
5+
@test chebyshevpoints(10; kind=1) == chebyshevpoints(Float64, 10; kind=1)
6+
@test chebyshevpoints(10; kind=2) == chebyshevpoints(Float64, 10; kind=2)
7+
for T in (Float32, Float64, ComplexF32, ComplexF64)
8+
@test chebyshevpoints(T, 0, kind=1) == chebyshevpoints(T, 0, kind=2) == T[]
9+
@test chebyshevpoints(T, 1, kind=1) == chebyshevpoints(T, 1, kind=2) == T[]
10+
11+
n = 20
12+
@inferred(chebyshevpoints(T, n, kind=1))
13+
@inferred(chebyshevpoints(T, n, kind=1))
14+
end
15+
end
16+
417
@testset "Chebyshev first kind points <-> first kind coefficients" begin
518
for T in (Float32, Float64, ComplexF32, ComplexF64)
619
n = 20

0 commit comments

Comments
 (0)