1!----------------------------------------------------------------------- 2 program test 3 implicit none 4 include 'ceed/fortran.h' 5 6 integer ceed,err 7 integer i,x,n 8 integer*8 aoffset,boffset 9 real*8 a(10) 10 real*8 b(10) 11 real*8 diff 12 character arg*32 13 14 call getarg(1,arg) 15 16 call ceedinit(trim(arg)//char(0),ceed,err) 17 18 n=10 19 20 call ceedvectorcreate(ceed,n,x,err) 21 22 do i=1,10 23 a(i)=10+i 24 enddo 25 26 aoffset=0 27 call ceedvectorsetarray(x,ceed_mem_host,ceed_use_pointer,a,aoffset,err) 28 call ceedvectorgetarrayread(x,ceed_mem_host,b,boffset,err) 29 30 do i=1,10 31 diff=b(i+boffset)-10-i 32 if (abs(diff)>1.0D-15) then 33! LCOV_EXCL_START 34 write(*,*) 'Error reading array b(',i,')=',b(i+boffset) 35! LCOV_EXCL_STOP 36 endif 37 enddo 38 39 call ceedvectorrestorearrayread(x,b,boffset,err) 40 call ceedvectordestroy(x,err) 41 call ceeddestroy(ceed,err) 42 43 end 44!----------------------------------------------------------------------- 45