anchor.diff:    real(kind=fPrec), intent(inout) :: yp
     real(kind=fPrec), intent(inout) :: pc
     real(kind=fPrec), intent(in)    :: length
  +  real(kind=fPrec), intent(in)    :: s_P
  +  real(kind=fPrec), intent(in)    :: x_P
   
     integer nam,zn                        ! Switch on/off the nuclear interaction (NAM) and the MCS (ZN)
     real(kind=fPrec) ymax,ymin            ! Crystal geometrical parameters
  
positive.code:   ! Check that particle hit the crystal
    if(x >= zero .and. x < c_xmax) then
  
      call cry_interact(mat,x,xp,z,zp,p,cry_length)
      s   = c_rcurv*c_sBend
      zlm = c_rcurv*c_sBend
      if(iProc /= proc_out) then
  
negative.code:         tilt_int = s_int/c_rcurv
          xp       = xp-tilt_int
  
          ! MISCUT first step (bis): transform P in new reference system
          ! Translation
          s_P_tmp = s_P_tmp - s_int
          x_P_tmp = x_P_tmp - x_int
          ! Rotation
          s_P = s_P_tmp*cos_mb(tilt_int) + x_P_tmp*sin_mb(tilt_int)
          x_P = -s_P_tmp*sin_mb(tilt_int) + s_P_tmp*cos_mb(tilt_int)
          write(*,*) "P front", s_P, x_P
  
          call cry_interact(mat,x,xp,z,zp,p,cry_length-(tilt_int*c_rcurv),s_P,x_P)
          s   = c_rcurv*sin_mb(cry_bend - tilt_int)
          zlm = c_rcurv*sin_mb(cry_bend - tilt_int)
          if(iProc /= proc_out) then
  