Skip to content

Commit 6fb10b9

Browse files
committed
start adding ladder operator tests
1 parent 53b0fb0 commit 6fb10b9

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed

test/test_triangle.jl

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -598,4 +598,26 @@ import MultivariateOrthogonalPolynomials: tri_forwardrecurrence, grid, TriangleR
598598
c = \(A, W'f; tolerance=1E-4)
599599
@test (W*c)[SVector(0.1,0.2)] -0.005927539175184257 # empirical
600600
end
601+
602+
@testset "ladder" begin
603+
p = (n,k,a,b,c,d,x,y) -> jacobip(n-k,2k+b+c+d+1,a,2x-1) * (1-x)^k * jacobip(k,c,b,2y/(1-x)-1)
604+
605+
a,b,c,d = 0.1,0.2,0.3,0
606+
P = JacobiTriangle(a,b,c)
607+
x,y = 𝐱 = SVector(0.1,0.2)
608+
z = 1 - x - y
609+
n,k = 3,2
610+
Pₙₖ = P[𝐱, Block(n+1)[k+1]]
611+
Pₙₖ_x = diff(P, (1,0))[𝐱,Block(n+1)[k+1]]
612+
Pₙₖ_y = diff(P, (0,1))[𝐱,Block(n+1)[k+1]]
613+
Pᵇᶜ = JacobiTriangle(a,b+1,c+1)
614+
Pₙ₋₁ₖ₋₁_y = Pᵇᶜ[𝐱, Block(n)[k]]
615+
Pₙₖᶜᵈ⁻ = p(n,k,a,b,c+1,d-1,x,y)
616+
Pₙₖᵇᵈ⁻ = p(n,k,a,b+1,c,d-1,x,y)
617+
618+
619+
@test Pₙₖ_y (k+b+c+1)*Pₙ₋₁ₖ₋₁_y #M₀₁
620+
@test (k+b+c+1)*Pₙₖ + y*Pₙₖ_y (k+b+c+1)*Pₙₖᶜᵈ⁻ #M₀₂
621+
@test (k+b+c+1)*Pₙₖ - z*Pₙₖ_y (k+b+c+1)*Pₙₖᵇᵈ⁻ #M₀₂
622+
end
601623
end

0 commit comments

Comments
 (0)