subroutine kdsaw_xmix_r4(zxmin,zxinv,zxmix)

  ! (REAL interface) return sawtooth inversion and mixing locations

  ! items returned or locations given in normalized sqrt-tor-flux

  real, intent(out) :: zxmin       ! inner bdy of q=1 island
  real, intent(out) :: zxinv       ! inversion (q=1 surface) radius
  real, intent(out) :: zxmix       ! mixing radius

  !-----------------------------------

  real*8 zxmin_r8,zxinv_r8,zxmix_r8

  !-----------------------------------

  call kdsaw_xmix(zxmin_r8,zxinv_r8,zxmix_r8)

  zxmin=zxmin_r8
  zxinv=zxinv_r8
  zxmix=zxmix_r8

end subroutine kdsaw_xmix_r4

subroutine kdsaw_xmix(zxmin,zxinv,zxmix)

  use kdsaw_module
  implicit NONE

  ! (REAL*8 interface) return sawtooth inversion and mixing locations

  ! items returned or locations given in normalized sqrt-tor-flux

  real*8, intent(out) :: zxmin       ! inner bdy of q=1 island
  real*8, intent(out) :: zxinv       ! inversion (q=1 surface) radius
  real*8, intent(out) :: zxmix       ! mixing radius

  !-----------------------------------

  zxmin = xswmin
  zxinv = xswinv
  zxmix = xswmix

end subroutine kdsaw_xmix
