anchor.diff:      (with-neighbor-map (nbr info test-box-min test-box-max test-delta test-capacity)
         (cl-test-more:plan nil)
         ;; initialize
  -      (setf (mem-aref xs 0) (make-float4 1.0 1.0 1.0 0.0)
  -            (mem-aref xs 1) (make-float4 1.0 1.0 1.0 0.0)
  -            (mem-aref xs 2) (make-float4 3.0 1.0 1.0 0.0))
  +      (setf (memory-block-aref xs 0) (make-float4 1.0 1.0 1.0 0.0)
  +            (memory-block-aref xs 1) (make-float4 1.0 1.0 1.0 0.0)
  +            (memory-block-aref xs 2) (make-float4 3.0 1.0 1.0 0.0))
         ;; clear neighbor map and test it
         (clear-neighbor-map-cpu nbr info :grid-dim '(7 7 1) :block-dim '(7 1 1))
         (cl-test-more:is (number-of-particles-in-cell-cpu nbr info 0 0 0) 0)
         (cl-test-more:is (number-of-particles-in-cell-cpu nbr info 1 0 0) 0)
         ;; update neighbor map and test it
  -      (let ((n (memory-block-length xs)))
  +      (let ((n (memory-block-size xs)))
           (update-neighbor-map-cpu xs nbr info n :grid-dim '(1 1 1) :block-dim '(32 1 1))
           (cl-test-more:is (number-of-particles-in-cell-cpu nbr info 1 1 1) 2)
           (cl-test-more:is (number-of-particles-in-cell-cpu nbr info 2 1 1) 1))
         (with-memory-blocks ((x 'int 3))
           (kernel-test-neighbor-map2-cpu x nbr info 1.0 1.0 1.0)
  -        (cl-test-more:is (mem-aref x 0) 0)
  -        (cl-test-more:is (mem-aref x 1) 1)
  -        (cl-test-more:is (mem-aref x 2) 2))
  +        (cl-test-more:is (memory-block-aref x 0) 0)
  +        (cl-test-more:is (memory-block-aref x 1) 1)
  +        (cl-test-more:is (memory-block-aref x 2) 2))
         (with-memory-blocks ((x 'int 3))
           (kernel-test-neighbor-map2-cpu x nbr info 3.0 1.0 1.0)
  -        (cl-test-more:is (mem-aref x 0) 0)
  -        (cl-test-more:is (mem-aref x 1) 1)
  -        (cl-test-more:is (mem-aref x 2) 2))
  +        (cl-test-more:is (memory-block-aref x 0) 0)
  +        (cl-test-more:is (memory-block-aref x 1) 1)
  +        (cl-test-more:is (memory-block-aref x 2) 2))
         (with-memory-blocks ((x 'int 1))
           (kernel-test-neighbor-map2-cpu x nbr info 5.0 1.0 1.0)
  -        (cl-test-more:is (mem-aref x 0) 2))
  +        (cl-test-more:is (memory-block-aref x 0) 2))
         (cl-test-more:finalize)))))
   
   (defun test-neighbor-map2-gpu ()
  
positive.code:     (%update-density i rho x nbr info)))
  
  (defun %update-density-cpu (i rho x nbr info)
    (symbol-macrolet ((xi (mem-aref x i))
                      (xj (mem-aref x j))
                      (rhoi (mem-aref rho i)))
      (let ((tmp 0.0))
        (do-neighbor-particles-cpu (j nbr info xi)
          (let ((dr (float4-scale-cpu (float4-sub-cpu xi xj) simscale)))
  
negative.code:     (%update-pressure i prs rho)))
  
  (defun %update-pressure-cpu (i prs rho)
    (symbol-macrolet ((rhoi (memory-block-aref rho i))
                      (prsi (memory-block-aref prs i)))
      (setf prsi (* (- rhoi restdensity)
                    intstiff))))
  
  