From c60ac41c4a465818144cf99501bd4ed234f25402 Mon Sep 17 00:00:00 2001
From: John Omotani <john.omotani@ukaea.uk>
Date: Mon, 27 Jan 2025 16:29:11 +0000
Subject: [PATCH] fix stricter array in reconcile boundaries

---
 moment_kinetics/src/calculus.jl | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/moment_kinetics/src/calculus.jl b/moment_kinetics/src/calculus.jl
index a55d3ec0b0..4343764786 100644
--- a/moment_kinetics/src/calculus.jl
+++ b/moment_kinetics/src/calculus.jl
@@ -528,12 +528,12 @@ end
         if irank == 0
             if coord.bc == "periodic"
                 #update the extreme lower endpoint with data from irank = nrank -1	
-                receive_buffer1 .= 0.5*(receive_buffer1 .+ dfdx_lower_endpoints)
+                @. receive_buffer1 = 0.5*(receive_buffer1 + dfdx_lower_endpoints)
             else #directly use value from Cheb
                 receive_buffer1 .= dfdx_lower_endpoints
             end
         else # enforce continuity at lower endpoint
-            receive_buffer1 .= 0.5*(receive_buffer1 .+ dfdx_lower_endpoints)
+            @. receive_buffer1 = 0.5*(receive_buffer1 + dfdx_lower_endpoints)
         end
         #now update the df1d array -- using a slice appropriate to the dimension reconciled
         assign_endpoint!(df1d,receive_buffer1,"lower",coord)
@@ -541,12 +541,12 @@ end
         if irank == nrank-1
             if coord.bc == "periodic"
                 #update the extreme upper endpoint with data from irank = 0
-                receive_buffer2 .= 0.5*(receive_buffer2 .+ dfdx_upper_endpoints)
+                @. receive_buffer2 = 0.5*(receive_buffer2 + dfdx_upper_endpoints)
             else #directly use value from Cheb
                 receive_buffer2 .= dfdx_upper_endpoints
             end
         else # enforce continuity at upper endpoint
-            receive_buffer2 .= 0.5*(receive_buffer2 .+ dfdx_upper_endpoints)
+            @. receive_buffer2 = 0.5*(receive_buffer2 + dfdx_upper_endpoints)
         end
         #now update the df1d array -- using a slice appropriate to the dimension reconciled
         assign_endpoint!(df1d,receive_buffer2,"upper",coord)
@@ -707,28 +707,28 @@ end
         if irank == 0
             if coord.bc == "periodic"
                 #update the extreme lower endpoint with data from irank = nrank -1	
-                receive_buffer1 .= 0.5*(receive_buffer1 .+ dfdx_lower_endpoints)
+                @. receive_buffer1 = 0.5*(receive_buffer1 + dfdx_lower_endpoints)
             else #directly use value from Cheb
                 receive_buffer1 .= dfdx_lower_endpoints
             end
         else # enforce continuity at lower endpoint
-            receive_buffer1 .= 0.5*(receive_buffer1 .+ dfdx_lower_endpoints)
+            @. receive_buffer1 = 0.5*(receive_buffer1 + dfdx_lower_endpoints)
         end
         #now update the df1d array -- using a slice appropriate to the dimension reconciled
-        @views df1d[:,:,1] .= receive_buffer1
+        df1d[:,:,1] .= receive_buffer1
 
         if irank == nrank-1
             if coord.bc == "periodic"
                 #update the extreme upper endpoint with data from irank = 0
-                receive_buffer2 .= 0.5*(receive_buffer2 .+ dfdx_upper_endpoints)
+                @. receive_buffer2 = 0.5*(receive_buffer2 + dfdx_upper_endpoints)
             else #directly use value from Cheb
                 receive_buffer2 .= dfdx_upper_endpoints
             end
         else # enforce continuity at upper endpoint
-            receive_buffer2 .= 0.5*(receive_buffer2 .+ dfdx_upper_endpoints)
+            @. receive_buffer2 = 0.5*(receive_buffer2 + dfdx_upper_endpoints)
         end
         #now update the df1d array -- using a slice appropriate to the dimension reconciled
-        @views df1d[:,:,end] .= receive_buffer2
+        df1d[:,:,end] .= receive_buffer2
 
     end
     # synchronize buffers
@@ -796,7 +796,7 @@ end
             apply_adv_fac!(receive_buffer1,adv_fac_lower_endpoints,dfdx_lower_endpoints,1)
         end
         #now update the df1d array -- using a slice appropriate to the dimension reconciled
-        @views df1d[:,:,1] .= receive_buffer1
+        df1d[:,:,1] .= receive_buffer1
 
         if irank == nrank-1
             if coord.bc == "periodic"
@@ -809,7 +809,7 @@ end
             apply_adv_fac!(receive_buffer2,adv_fac_upper_endpoints,dfdx_upper_endpoints,-1)
         end
         #now update the df1d array -- using a slice appropriate to the dimension reconciled
-        @views df1d[:,:,end] .= receive_buffer2
+        df1d[:,:,end] .= receive_buffer2
 
     end
     # synchronize buffers