From 2b7a219afda543a92b7ba931c61deb08b13cc48a Mon Sep 17 00:00:00 2001 From: Jorge Punter Date: Thu, 5 Mar 2026 11:04:39 +0000 Subject: [PATCH 1/4] Update rectangle.jl Added DiagTrav in 3D to rectangle example --- examples/rectangle.jl | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/examples/rectangle.jl b/examples/rectangle.jl index 4b89566..5328edc 100644 --- a/examples/rectangle.jl +++ b/examples/rectangle.jl @@ -61,8 +61,17 @@ C = Pl * F # coefficient 3-array in tensor basis c = DiagTrav(C) # arrange by total degree -# ret = 0.0 -# for n=0:N-1, k=0:n, j=0:n-k -# ret += c[Block(n+1)[k+1]] * P[0.1,n-k-j + 1] * P[0.2,k + 1] * P[0.3,j + 1] -# end -# @test ret ≈ f(0.1,0.2) \ No newline at end of file +ret = 0.0 +for n=1:N + iter=1 + for i=reverse(1:n) + k=0 + for j=reverse(1:(n-i+1)) + k+=1 + ret += c[Block(n)[iter]] * P[0.1,i] * P[0.2,j] * P[0.3,k] + iter+=1 + + end + end +end +@test ret ≈ f(0.1,0.2,0.3) \ No newline at end of file From 99e2cdffbdeff0e544b6190e85c1838c1b0ba11e Mon Sep 17 00:00:00 2001 From: Jorge Punter Date: Thu, 5 Mar 2026 11:09:12 +0000 Subject: [PATCH 2/4] Update rectangle.jl --- examples/rectangle.jl | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/rectangle.jl b/examples/rectangle.jl index 5328edc..7e69dbb 100644 --- a/examples/rectangle.jl +++ b/examples/rectangle.jl @@ -70,7 +70,6 @@ for n=1:N k+=1 ret += c[Block(n)[iter]] * P[0.1,i] * P[0.2,j] * P[0.3,k] iter+=1 - end end end From a301fb21c17061f65f4a42619667b2724c35b2ec Mon Sep 17 00:00:00 2001 From: Jorge Punter Date: Thu, 5 Mar 2026 11:40:22 +0000 Subject: [PATCH 3/4] Update rectangle.jl --- examples/rectangle.jl | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/examples/rectangle.jl b/examples/rectangle.jl index 7e69dbb..877926d 100644 --- a/examples/rectangle.jl +++ b/examples/rectangle.jl @@ -64,13 +64,13 @@ c = DiagTrav(C) # arrange by total degree ret = 0.0 for n=1:N iter=1 - for i=reverse(1:n) - k=0 - for j=reverse(1:(n-i+1)) - k+=1 - ret += c[Block(n)[iter]] * P[0.1,i] * P[0.2,j] * P[0.3,k] - iter+=1 - end + for i=reverse(1:n) + k=0 + for j=reverse(1:(n-i+1)) + k+=1 + ret += c[Block(n)[iter]] * P[0.1,i] * P[0.2,j] * P[0.3,k] + iter+=1 end + end end @test ret ≈ f(0.1,0.2,0.3) \ No newline at end of file From 5048c309585db0f3643afea3238bfc5b3f5750f1 Mon Sep 17 00:00:00 2001 From: Jorge Punter Date: Thu, 5 Mar 2026 12:11:43 +0000 Subject: [PATCH 4/4] Add function to check DiagTrav in 3D --- examples/rectangle.jl | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/examples/rectangle.jl b/examples/rectangle.jl index 877926d..c0d3dc6 100644 --- a/examples/rectangle.jl +++ b/examples/rectangle.jl @@ -61,16 +61,20 @@ C = Pl * F # coefficient 3-array in tensor basis c = DiagTrav(C) # arrange by total degree -ret = 0.0 -for n=1:N - iter=1 - for i=reverse(1:n) - k=0 - for j=reverse(1:(n-i+1)) - k+=1 - ret += c[Block(n)[iter]] * P[0.1,i] * P[0.2,j] * P[0.3,k] - iter+=1 + +function check_DiagTrav3D(c,P) + ret = 0.0 + for n=1:N + iter=1 + for i=reverse(1:n) + k=0 + for j=reverse(1:(n-i+1)) + k+=1 + ret += c[Block(n)[iter]] * P[0.1,i] * P[0.2,j] * P[0.3,k] + iter+=1 + end end end + ret end -@test ret ≈ f(0.1,0.2,0.3) \ No newline at end of file +@test check_DiagTrav3D(c,P) ≈ f(0.1,0.2,0.3) \ No newline at end of file