anchor.diff:  
   !            write(*,*) "s_length-Sdech", s_length-Sdech
               CALL CALC_ION_LOSS_CRY(IS,is2,PC,s_length-Sdech,DESt)
  -            CALL MOVE_AM_(IS,is2,NAM,s_length-Sdech,DESt,DLYi(IS2),DLRi(IS2),xp,yp,PC)
  +            CALL move_am(IS,is2,NAM,s_length-Sdech,DESt,DLYi(IS2),DLRi(IS2),xp,yp,PC)
              !next line new from sasha
               x = x + 0.5*(s_length-Sdech)*xp
               y = y + 0.5*(s_length-Sdech)*yp
  
positive.code:             y=y+0.5*yp*(s_length-Srefl)
  !            write(*,*) "s_length-Srefl", s_length-Srefl
              CALL CALC_ION_LOSS_CRY(IS,is2,PC,s_length-Srefl,DESt)
              CALL MOVE_AM_(IS,is2,NAM,s_length-Srefl,DESt,DLYi(IS2),DLRi(IS2),xp ,yp,PC)
              x = x + 0.5 * xp * (s_length - Srefl)
              y = y + 0.5 * yp * (s_length - Srefl)
              endif
  
negative.code:             x = x + 0.5* xp * (s_length - Srefl)
              y = y + 0.5* yp * (s_length - Srefl)
              CALL CALC_ION_LOSS_CRY(IS,is2,PC,s_length-Srefl,DESt)
              CALL move_am(IS,is2,NAM,s_length-Srefl,DESt,DLYi(IS2),DLRi(IS2),xp ,yp,PC)
              x = x + 0.5 * xp * (s_length - Srefl)
              y = y + 0.5 * yp * (s_length - Srefl)
            ELSE                                      !opt 2: VC
  