anchor.diff:                      !$omp critical (print_lock)
                       loops_completed = loops_completed+1
                       !$omp end critical (print_lock)
  -                end do
  +                ! end do
   
               end do
               !$omp end do
  
positive.code: 
          ! local variables used to calculate the LUT
          real :: u,v, layer_height, layer_height_bottom, layer_height_top, minimum_layer_size
          integer :: nx,ny,nz, i,j,k,z, nxu,nyv, error
          integer :: fftnx, fftny
          integer, dimension(3,2) :: LUT_dims
          integer :: loops_completed ! this is just used to measure progress in the LUT creation
  
negative.code:             loops_completed = 0
              write(*,*) "Percent Completed:"
              !$omp parallel default(shared) &
              !$omp private(i,j,k,ik,z, u,v, layer_height, layer_height_bottom, layer_height_top) &
              !$omp firstprivate(minimum_layer_size, n_dir_values, n_spd_values, n_nsq_values, nz,nx,ny,nxu,nyv,fftnx,fftny)
              ! $omp threadprivate(lt_data_m) declared at the top of the module
  
              ! initialization has to happen in each thread so each thread has its own copy
              ! lt_data_m is a threadprivate variable, within initialization, there are omp critical sections for fftw calls
              call initialize_linear_theory_data(lt_data_m, fftnx, fftny, domain%dx)
              !$omp do
              do ik=0, n_dir_values*n_spd_values-1
                  ! set the domain wide U and V values to the current u and v values
                  ! loop over the combined ik space to improve parallelization (more granular parallelization)
                  ! because it is one combined loop, we have to calculate the i,k indicies from the combined ik variable
                  i = ik/n_spd_values + 1
                  k = mod(ik,n_spd_values) + 1
  
                  ! do k=1, n_spd_values
  
                      ! print the current status if this is being run "interactively"
                      if (options%interactive) then
                          !$omp critical (print_lock)
                          write(*,"(A,f5.1,A$)") char(13), loops_completed/real(n_dir_values*n_spd_values)*100," %"
  