anchor.diff:    ! Do a step for a point-like interaction.
     ! Get monte-carlo interaction length.
   10 continue
  -  zlm1     = (-one*xintl(mat))*log_mb(real(rndm4(),fPrec))
  +  zlm1     = (-one*xintl(mat))*log_mb(rndm4())
     nabs_tmp = 0  ! type of interaction reset before following scattering process
     xpBef    = xp ! save angles and momentum before scattering
     zpBef    = zp
  
positive.code:         end if
          if(iexact) then
            zpj = sqrt(one-xp**2-zp**2)
            x   = x + drift_length*(xp/zpj)
            z   = z + drift_length*(zp/zpj)
            sp  = sp + drift_length
          else
            x  = x + xp * drift_length
            z  = z + zp * drift_length
            sp = sp + drift_length
          end if
        end if
  
negative.code:     ! correct TOT-CSec for energy dependence of qel
      ! TOT CS is here without a Coulomb contribution
      csect(0,ma) = csref(0,ma) + freep(ma) * (pptot - pptref)
      bn(ma)      = (bnref(ma) * csect(0,ma)) / csref(0,ma)
  
      ! also correct inel-CS
      csect(1,ma) = (csref(1,ma) * csect(0,ma)) / csref(0,ma)
  