10436c2adSjeremylt!----------------------------------------------------------------------- 20436c2adSjeremylt program test 31f9a83abSJed Brown implicit none 4*ec3da8bcSJed Brown include 'ceed/fortran.h' 50436c2adSjeremylt 60436c2adSjeremylt integer ceed,err 71f9a83abSJed Brown integer i,x,n 80436c2adSjeremylt real*8 a(10) 90436c2adSjeremylt real*8 b(10) 100436c2adSjeremylt real*8 diff 110436c2adSjeremylt integer*8 aoffset,boffset 120436c2adSjeremylt character arg*32 130436c2adSjeremylt 140436c2adSjeremylt call getarg(1,arg) 150436c2adSjeremylt 160436c2adSjeremylt call ceedinit(trim(arg)//char(0),ceed,err) 170436c2adSjeremylt 180436c2adSjeremylt n=10 190436c2adSjeremylt 200436c2adSjeremylt call ceedvectorcreate(ceed,n,x,err) 210436c2adSjeremylt 220436c2adSjeremylt do i=1,10 230436c2adSjeremylt a(i)=0 240436c2adSjeremylt enddo 250436c2adSjeremylt 260436c2adSjeremylt aoffset=0 270436c2adSjeremylt call ceedvectorsetarray(x,ceed_mem_host,ceed_use_pointer,a,aoffset,err) 280436c2adSjeremylt call ceedvectorgetarray(x,ceed_mem_host,b,boffset,err) 290436c2adSjeremylt b(boffset+3) = -3.14 300436c2adSjeremylt call ceedvectorrestorearray(x,b,boffset,err) 310436c2adSjeremylt diff=a(3)+3.14 320436c2adSjeremylt if (abs(diff)>1.0D-15) then 330436c2adSjeremylt! LCOV_EXCL_START 340436c2adSjeremylt write(*,*) 'Error writing array a(3)=',a(3) 350436c2adSjeremylt! LCOV_EXCL_STOP 360436c2adSjeremylt endif 370436c2adSjeremylt 380436c2adSjeremylt call ceedvectordestroy(x,err) 390436c2adSjeremylt call ceeddestroy(ceed,err) 400436c2adSjeremylt 410436c2adSjeremylt end 420436c2adSjeremylt!----------------------------------------------------------------------- 43