anchor.diff:            allocate(uks(nx1*nx2*nx3)); allocate(bks(nx1*nx2*nx3))
             pmin=1e-18
             write(6,*) 'data file: ',data_file
  -          if(BINARY.ne.1) then
  +          if(BINARY.eq.0) then
                open(unit=8,file=data_file,form='formatted',status='old',action='read')
                allocate(data(dlen,nx3)); nelem=nx3
                write(6,*) 'read harm sizes', dlen, nx2, size(data)
  
positive.code: !          write(6,*) 'after read loop'
               close(unit=8)
               deallocate(data)
            else
               write(6,*) 'harmpi data size: ',dlen,nx1,nx2,nx3
               write(6,*) 'harmpi data file: ',data_file
               allocate(data(dlen,nx1*nx2*nx3))
  
negative.code:              
  !             r_arr=exp(x1_arr); th_arr=x2_arr*pi; ph_arr=x3_arr
            endif
            
            p=merge(p,pmin,p.gt.pmin)
            write(6,*) "min vals rho", minval(rho)
            write(6,*) "min vals p", minval(p)
  