anchor.diff:  ! SHARED variables are shared across threads
   ! PRIVATE variables are uninitialized and isolated to each thread
   ! FIRSTPRIVATE variables are initialized with their existing value and isolated to each thread
  -!$OMP PARALLEL SHARED(nstations,stations,coord_type), &
  +!$OMP PARALLEL SHARED(nstations,stations,sta_char,coord_type), &
   !$OMP          SHARED(nfaults,faults,ntensile,tensile,fault_type), &
   !$OMP          SHARED(targets), &
   !$OMP          SHARED(lame,shearmod), &
  
positive.code: ! Count number of stations and allocate memory to station array (x y z)
  nstations = line_count(station_file)
  allocate(stations(nstations,3))
  
  
  ! Read stations
  open(unit=13,file=station_file,status='old')
  do i = 1,nstations
      read(13,'(A)') input_line
      read(input_line,*,iostat=ios,err=1003,end=1004) (stations(i,j),j=1,3)
  enddo
  close(13)
  
negative.code: 
          ! Normal traction: normal (positive=dilation)
          if (normal_file.ne.'') then
              if (sta_char(iSta).eq.'#'.or.sta_char(iSta).eq.'>') then
                  write(131,'(A)') sta_char(iSta)
              else
                  write(131,*) stations(iSta,:),tnor
              endif
          endif
  
          ! Shear traction: resolved_onto_rake, max_shear_on_plane
          if (shear_file.ne.'') then
              tshrmx = sqrt(tstr*tstr+tupd*tupd)
              if (sta_char(iSta).eq.'#'.or.sta_char(iSta).eq.'>') then
                  write(132,'(A)') sta_char(iSta)
              else
                  write(132,*) stations(iSta,:),tshr,tshrmx
              endif
          endif
  
          ! Coulomb stress: coulomb
          if (coulomb_file.ne.'') then
              coul = tshr + targets(iSta,4)*tnor
              if (sta_char(iSta).eq.'#'.or.sta_char(iSta).eq.'>') then
                  write(133,'(A)') sta_char(iSta)
              else
                  write(133,*) stations(iSta,:),coul
              endif
          endif
      endif
  
  