EZspline_gradient


interface EZspline_gradient
!
! Return the gradient in df. When the dimensionality is 1 then
! df is df/dx. In more than one dimension, df has rank >=1 with
! the last index yielding df/dx, df/dy ... etc. Subsequent indices
! reflect the node positions when cloud or array evaluation is
! sought, as in df(k1, k2, k3, 1) for df/dx at x(k1), y(k2), z(k3).
!
subroutine EZspline_gradient3_r8(spline_o, p1, p2, p3, df, ier)
use EZspline_obj
type(EZspline3_r8) spline_o
real(ezspline_r8), intent(in) :: p1, p2, p3
real(ezspline_r8), intent(out) :: df(3)
integer, intent(out) :: ier
end subroutine EZspline_gradient3_r8

subroutine EZspline_gradient3_array_r8(spline_o, k1, k2, k3, &
& p1, p2, p3, df, ier)
use EZspline_obj
type(EZspline3_r8) spline_o
integer, intent(in) :: k1, k2, k3
real(ezspline_r8), intent(in) :: p1(k1), p2(k2), p3(k3)
real(ezspline_r8), intent(out) :: df(k1,k2,k3,3)
integer, intent(out) :: ier
end subroutine EZspline_gradient3_array_r8

subroutine EZspline_gradient3_cloud_r8(spline_o, k, &
& p1, p2, p3, df, ier)
use EZspline_obj
type(EZspline3_r8) spline_o
integer, intent(in) :: k
real(ezspline_r8), intent(in) :: p1(k), p2(k), p3(k)
real(ezspline_r8), intent(out) :: df(k,3)
integer, intent(out) :: ier
end subroutine EZspline_gradient3_cloud_r8

subroutine EZspline_gradient2_r8(spline_o, p1, p2, df, ier)
use EZspline_obj
type(EZspline2_r8) spline_o
real(ezspline_r8), intent(in) :: p1, p2
real(ezspline_r8), intent(out) :: df(2)
integer, intent(out) :: ier
end subroutine EZspline_gradient2_r8

subroutine EZspline_gradient2_array_r8(spline_o, k1, k2, &
& p1, p2, df, ier)
use EZspline_obj
type(EZspline2_r8) spline_o
integer, intent(in) :: k1, k2
real(ezspline_r8), intent(in) :: p1(k1), p2(k2)
real(ezspline_r8), intent(out) :: df(k1, k2, 2)
integer, intent(out) :: ier
end subroutine EZspline_gradient2_array_r8

subroutine EZspline_gradient2_cloud_r8(spline_o, k, &
& p1, p2, df, ier)
use EZspline_obj
type(EZspline2_r8) spline_o
integer, intent(in) :: k
real(ezspline_r8), intent(in) :: p1(k), p2(k)
real(ezspline_r8), intent(out) :: df(k, 2)
integer, intent(out) :: ier
end subroutine EZspline_gradient2_cloud_r8

subroutine EZspline_gradient1_r8(spline_o, p1, df, ier)
use EZspline_obj
type(EZspline1_r8) spline_o
real(ezspline_r8), intent(in) :: p1
real(ezspline_r8), intent(out) :: df
integer, intent(out) :: ier
end subroutine EZspline_gradient1_r8

subroutine EZspline_gradient1_array_r8(spline_o, k1, p1, df, ier)
use EZspline_obj
type(EZspline1_r8) spline_o
integer, intent(in) :: k1
real(ezspline_r8), intent(in) :: p1(k1)
real(ezspline_r8), intent(out) :: df(k1)
integer, intent(out) :: ier
end subroutine EZspline_gradient1_array_r8

subroutine EZspline_gradient3_r4(spline_o, p1, p2, p3, df, ier)
use EZspline_obj
type(EZspline3_r4) spline_o
real(ezspline_r4), intent(in) :: p1, p2, p3
real(ezspline_r4), intent(out) :: df(3)
integer, intent(out) :: ier
end subroutine EZspline_gradient3_r4

subroutine EZspline_gradient3_array_r4(spline_o, k1, k2, k3, &
& p1, p2, p3, df, ier)
use EZspline_obj
type(EZspline3_r4) spline_o
integer, intent(in) :: k1, k2, k3
real(ezspline_r4), intent(in) :: p1(k1), p2(k2), p3(k3)
real(ezspline_r4), intent(out) :: df(k1,k2,k3,3)
integer, intent(out) :: ier
end subroutine EZspline_gradient3_array_r4

subroutine EZspline_gradient3_cloud_r4(spline_o, k, &
& p1, p2, p3, df, ier)
use EZspline_obj
type(EZspline3_r4) spline_o
integer, intent(in) :: k
real(ezspline_r4), intent(in) :: p1(k), p2(k), p3(k)
real(ezspline_r4), intent(out) :: df(k,3)
integer, intent(out) :: ier
end subroutine EZspline_gradient3_cloud_r4

subroutine EZspline_gradient2_r4(spline_o, p1, p2, df, ier)
use EZspline_obj
type(EZspline2_r4) spline_o
real(ezspline_r4), intent(in) :: p1, p2
real(ezspline_r4), intent(out) :: df(2)
integer, intent(out) :: ier
end subroutine EZspline_gradient2_r4

subroutine EZspline_gradient2_array_r4(spline_o, k1, k2, &
& p1, p2, df, ier)
use EZspline_obj
type(EZspline2_r4) spline_o
integer, intent(in) :: k1, k2
real(ezspline_r4), intent(in) :: p1(k1), p2(k2)
real(ezspline_r4), intent(out) :: df(k1, k2, 2)
integer, intent(out) :: ier
end subroutine EZspline_gradient2_array_r4

subroutine EZspline_gradient2_cloud_r4(spline_o, k, &
& p1, p2, df, ier)
use EZspline_obj
type(EZspline2_r4) spline_o
integer, intent(in) :: k
real(ezspline_r4), intent(in) :: p1(k), p2(k)
real(ezspline_r4), intent(out) :: df(k, 2)
integer, intent(out) :: ier
end subroutine EZspline_gradient2_cloud_r4

subroutine EZspline_gradient1_r4(spline_o, p1, df, ier)
use EZspline_obj
type(EZspline1_r4) spline_o
real(ezspline_r4), intent(in) :: p1
real(ezspline_r4), intent(out) :: df
integer, intent(out) :: ier
end subroutine EZspline_gradient1_r4

subroutine EZspline_gradient1_array_r4(spline_o, k1, p1, df, ier)
use EZspline_obj
type(EZspline1_r4) spline_o
integer, intent(in) :: k1
real(ezspline_r4), intent(in) :: p1(k1)
real(ezspline_r4), intent(out) :: df(k1)
integer, intent(out) :: ier
end subroutine EZspline_gradient1_array_r4

end interface


Send comments about this document to pletzer@pppl.gov. Tue Apr 24 14:01:03 2007