From 31dc1dca55097395d4856b63fe8b1104627f34d0 Mon Sep 17 00:00:00 2001 From: Sheehan Olver Date: Tue, 9 Dec 2025 11:14:24 +0000 Subject: [PATCH 1/2] Tau method example --- examples/taumethod.jl | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 examples/taumethod.jl diff --git a/examples/taumethod.jl b/examples/taumethod.jl new file mode 100644 index 0000000..eec665f --- /dev/null +++ b/examples/taumethod.jl @@ -0,0 +1,20 @@ +using ClassicalOrthogonalPolynomials + +T = ChebyshevT() +C⁴ = Ultraspherical(4) + +n = 10 # truncation size +D¹ = (C⁴\diff(T))[1:n,1:n] +D⁴ = (C⁴\diff(T,4))[1:n,1:n] +γ₀ = T[[begin,end],1:n] +γ₁ = diff(T)[[begin,end],1:n] + +z = zeros(2,n) + +A = [γ₀ z z; + z γ₀ z; + γ₁ z z; + z γ₁ z; + I -D¹ 0I; + D⁴ 0I I; + 0I D⁴ D¹] \ No newline at end of file From 881d242310f7b2946f9de8f93be76b98b3e1f96b Mon Sep 17 00:00:00 2001 From: Sheehan Olver Date: Tue, 9 Dec 2025 11:21:49 +0000 Subject: [PATCH 2/2] Update taumethod.jl --- examples/taumethod.jl | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/examples/taumethod.jl b/examples/taumethod.jl index eec665f..d793237 100644 --- a/examples/taumethod.jl +++ b/examples/taumethod.jl @@ -3,18 +3,24 @@ using ClassicalOrthogonalPolynomials T = ChebyshevT() C⁴ = Ultraspherical(4) -n = 10 # truncation size +n = 20 # truncation size +R = (C⁴\T)[1:n,1:n] # discretization of I D¹ = (C⁴\diff(T))[1:n,1:n] D⁴ = (C⁴\diff(T,4))[1:n,1:n] γ₀ = T[[begin,end],1:n] γ₁ = diff(T)[[begin,end],1:n] -z = zeros(2,n) +φ₁ = (C⁴\T)[1:n,n-1] +φ₂ = (C⁴\T)[1:n,n] -A = [γ₀ z z; - z γ₀ z; - γ₁ z z; - z γ₁ z; - I -D¹ 0I; - D⁴ 0I I; - 0I D⁴ D¹] \ No newline at end of file +Z = zeros(2,n) +𝐳₂ = zeros(2) +𝐳 = zeros(n) + +A = [γ₀ Z Z 𝐳₂ 𝐳₂; + Z γ₀ Z 𝐳₂ 𝐳₂; + γ₁ Z Z 𝐳₂ 𝐳₂; + Z γ₁ Z 𝐳₂ 𝐳₂; + R -D¹ 0I 𝐳 𝐳; + D⁴ 0I R 𝐳 𝐳; + 0I D⁴ D¹ φ₁ φ₂] \ No newline at end of file