We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 53b0fb0 commit 6fb10b9Copy full SHA for 6fb10b9
test/test_triangle.jl
@@ -598,4 +598,26 @@ import MultivariateOrthogonalPolynomials: tri_forwardrecurrence, grid, TriangleR
598
c = \(A, W'f; tolerance=1E-4)
599
@test (W*c)[SVector(0.1,0.2)] ≈ -0.005927539175184257 # empirical
600
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
623
0 commit comments