anchor.diff:  
               end do
               !$omp end do
  +            ! memory needs to be freed so this structure can be used again when removing linear winds
  +            call destroy_linear_theory_data(lt_data_m)
               !$omp end parallel
               write(*,"(A,f5.1,A$)") char(13), loops_completed/real(n_dir_values*n_spd_values)*100," %"
               write(*,*) char(10),"--------  Linear wind look up table generation complete ---------"
  
positive.code:         if (reverse) print*, "WARNING using fixed nsq for linear wind removal: 3e-6"
          !$omp parallel firstprivate(nx,ny,nz, reverse, vsmooth, winsz), default(none), &
          !$omp private(i,j,k,step, uk, vi, east, west, north, south, top, bottom), &
          !$omp private(spos, dpos, npos, nexts,nextd, nextn,n, smoothz), &
          !$omp private(wind_first, wind_second, curspd, curdir, curnsq, sweight,dweight, nweight), &
          !$omp shared(domain, spd_values, dir_values, nsq_values, u_LUT, v_LUT), &
          !$omp shared(u_perturbation, v_perturbation, linear_update_fraction, linear_contribution, nsq_calibration), &
  
negative.code:             write(*,*) "Directions:",360*dir_values/(2*pi)
              write(*,*) "Stabilities:",exp(nsq_values)
          endif
          print*, shape(domain%z), shape(domain%u), shape(domain%terrain)
          if (reverse.or.(.not.((options%lt_options%read_LUT).and.(error==0)))) then
              ! loop over combinations of U, V, and Nsq values
              loops_completed = 0
  