anchor.diff:  
   C----------------------------------------------------------------------C
   
  -      SUBROUTINE gcmdln(fltf,obsf,smooth,smoof,damp,dimen)
  +      SUBROUTINE gcmdln(fltf,obsf,smooth,smoof,damp,dimen,ofile,geo)
         IMPLICIT NONE
  -      CHARACTER*80 fltf,obsf,tag,smoof
  +      CHARACTER*80 fltf,obsf,tag,smoof,ofile
         INTEGER i,narg
         REAL*8 smooth,damp
  -      INTEGER dimen
  +      INTEGER dimen,geo
         fltf = 'none'
         obsf = 'none'
         smoof = 'none'
  +      ofile = 'none'
         dimen = 0
         smooth = -1.0d0
         damp = -1.0d0
  +      geo = 0
         narg = iargc()
         if (narg.eq.0) call usage('!! Error: no command line arguments')
         i = 0
  
positive.code:   102 continue
        close(22)
  
  C----
  C Generate Green's functions and load A matrix and b vector
  C----
  
negative.code:       do 101 i = 1,nsmoo
            read(31,*) el,nnei,(nei(j),j=1,nnei)
            A(nobs+el,el) = dble(nnei)*smooth*smooth
            if (dimen.eq.3) then
                A(nobs+el+nflt/2,el+nflt/2) = A(nobs+el,el)
            endif
            do 104 j = 1,nnei
                A(nobs+el,nei(j)) = -1.0d0*smooth*smooth
                if (dimen.eq.3) then
                    A(nobs+el+nflt/2,nei(j)+nflt/2) = A(nobs+el,nei(j))
                endif
    104     continue
    101 continue
        close(31)
  