anchor.diff:         CALL MPI_Allreduce(MPI_IN_PLACE, inverse_factor, 1, MPINTREAL, MPI_SUM, &
               & row_comm, grid_error)
   
  +       !! Determine local pivots
  +       num_local_pivots = 0
  +       DO II = JJ + 1, AMat%actual_matrix_dimension
  +          pi_i = pivot_vector(II)
  +          IF (pi_i .GE. AMat%start_column .AND. pi_i .LT. AMat%end_column) THEN
  +             num_local_pivots = num_local_pivots + 1
  +             local_pivots(num_local_pivots) = pi_i
  +          END IF
  +       END DO
  +
          !! Compute Dot Products
          !! Unlike normal cholesky, we need to pack for sending first
          fill_counter = 0
  -       DO II = JJ + 1, AMat%actual_matrix_dimension
  -          pi_i = pivot_vector(II)
  +       DO II = 1, num_local_pivots
  +          pi_i = local_pivots(II)
             local_pi_i = pi_i - AMat%start_column + 1
  -          IF (pi_i .GE. AMat%start_column .AND. pi_i .LT. AMat%end_column) THEN
  -             fill_counter = fill_counter + 1
  -             num_val = values_per_column_l(local_pi_i)
  -             values_per_column_pi(fill_counter) = num_val
  -             index_pi(:num_val,fill_counter) = index_l(:num_val,local_pi_i)
  -             values_pi(:num_val,fill_counter) = values_l(:num_val,local_pi_i)
  -          END IF
  +          fill_counter = fill_counter + 1
  +          num_val = values_per_column_l(local_pi_i)
  +          values_per_column_pi(fill_counter) = num_val
  +          index_pi(:num_val,fill_counter) = index_l(:num_val,local_pi_i)
  +          values_pi(:num_val,fill_counter) = values_l(:num_val,local_pi_i)
          END DO
          CALL DotAllHelper(recv_num_values, recv_index, recv_values, &
               & values_per_column_pi(:fill_counter), index_pi(:,:fill_counter), &
  
positive.code:        CALL PrintMatrixInformation(LMat)
         CALL ExitSubLog
      END IF
      DEALLOCATE(pivot_vector)
      DEALLOCATE(diag)
      DEALLOCATE(dense_a)
  
negative.code:        CALL WriteHeader("Linear Solver")
         CALL EnterSubLog
         CALL WriteElement(key="Method", &
              & text_value_in="Pivoted Cholesky Decomposition")
         CALL WriteElement(key="Target_Rank", int_value_in=rank_in)
         CALL PrintFixedSolverParameters(solver_parameters)
      END IF
  