anchor.diff:       delta=-(mRay*tmpX0-tmpY0+qRay)**2+(bb**2+aa**2*mRay**2)
        if(delta.lt.zero) return
        if((zero.lt.thetaRay.and.thetaRay.lt.pi/two).or. & ! first quadrant
  - &       (pi/two*three.lt.thetaRay.and.thetaRay.lt.two*pi)) then ! fourth quadrant
  -        xChk=(aa**2*mRay*(tmpY0-qRay)+bb**2*tmpX0+aa*bb*sqrt(delta))/(bb**2+aa**2*mRay**2)
  + &       (pi*(three/two).lt.thetaRay.and.thetaRay.lt.two*pi)) then ! fourth quadrant
  +        xChk=((aa**2*(mRay*(tmpY0-qRay))+bb**2*tmpX0)+(aa*bb)*sqrt(delta))/(bb**2+aa**2*mRay**2)
        else
  -        xChk=(aa**2*mRay*(tmpY0-qRay)+bb**2*tmpX0-aa*bb*sqrt(delta))/(bb**2+aa**2*mRay**2)
  +        xChk=((aa**2*(mRay*(tmpY0-qRay))+bb**2*tmpX0)+(-one*(aa*bb))*sqrt(delta))/(bb**2+aa**2*mRay**2)
        end if
        yChk=mRay*xChk+qRay
        nChk=sqrt(xChk**2+yChk**2)
  
positive.code:      yChk=zero
       xChk=-aa
       nChk=aa
    else if(abs(thetaRay/(pi*three/two)-one).lt.c1m6) then ! thetaRay=1.5pi
       yChk=-bb
       xChk=zero
       nChk=bb
  
negative.code:      else if(pi/two.lt.thetaRay.and.thetaRay.lt.pi) then ! second quadrant
          xTmp(1)=-xRe
          yTmp(2)=yRe
       else if(pi.lt.thetaRay.and.thetaRay.lt.pi*(three/two)) then ! third quadrant
          xTmp(1)=-xRe
          yTmp(2)=-yRe
       else ! fourth quadrant
  