|
|
@ -304,7 +304,6 @@ module psb_z_vectordev_mod
|
|
|
|
end function asumMultiVecDeviceDoubleComplex
|
|
|
|
end function asumMultiVecDeviceDoubleComplex
|
|
|
|
end interface
|
|
|
|
end interface
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
interface axpbyMultiVecDevice
|
|
|
|
interface axpbyMultiVecDevice
|
|
|
|
function axpbyMultiVecDeviceDoubleComplex(n,alpha,deviceVecA,beta,deviceVecB) &
|
|
|
|
function axpbyMultiVecDeviceDoubleComplex(n,alpha,deviceVecA,beta,deviceVecB) &
|
|
|
|
& result(res) bind(c,name='axpbyMultiVecDeviceDoubleComplex')
|
|
|
|
& result(res) bind(c,name='axpbyMultiVecDeviceDoubleComplex')
|
|
|
@ -316,6 +315,18 @@ module psb_z_vectordev_mod
|
|
|
|
end function axpbyMultiVecDeviceDoubleComplex
|
|
|
|
end function axpbyMultiVecDeviceDoubleComplex
|
|
|
|
end interface
|
|
|
|
end interface
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
interface abgdxyzMultiVecDevice
|
|
|
|
|
|
|
|
function abgdxyzMultiVecDeviceDoubleComplex(n,alpha,beta,gamma,delta,deviceVecX,&
|
|
|
|
|
|
|
|
& deviceVecY,deviceVecZ) &
|
|
|
|
|
|
|
|
& result(res) bind(c,name='abgdxyzMultiVecDeviceDoubleComplex')
|
|
|
|
|
|
|
|
use iso_c_binding
|
|
|
|
|
|
|
|
integer(c_int) :: res
|
|
|
|
|
|
|
|
integer(c_int), value :: n
|
|
|
|
|
|
|
|
type(c_double_complex), value :: alpha, beta,gamma,delta
|
|
|
|
|
|
|
|
type(c_ptr), value :: deviceVecX, deviceVecY, deviceVecZ
|
|
|
|
|
|
|
|
end function abgdxyzMultiVecDeviceDoubleComplex
|
|
|
|
|
|
|
|
end interface
|
|
|
|
|
|
|
|
|
|
|
|
interface axyMultiVecDevice
|
|
|
|
interface axyMultiVecDevice
|
|
|
|
function axyMultiVecDeviceDoubleComplex(n,alpha,deviceVecA,deviceVecB) &
|
|
|
|
function axyMultiVecDeviceDoubleComplex(n,alpha,deviceVecA,deviceVecB) &
|
|
|
|
& result(res) bind(c,name='axyMultiVecDeviceDoubleComplex')
|
|
|
|
& result(res) bind(c,name='axyMultiVecDeviceDoubleComplex')
|
|
|
|