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 real*8 val 120436c2adSjeremylt integer*8 aoffset,boffset 130436c2adSjeremylt character arg*32 140436c2adSjeremylt 150436c2adSjeremylt call getarg(1,arg) 160436c2adSjeremylt 170436c2adSjeremylt call ceedinit(trim(arg)//char(0),ceed,err) 180436c2adSjeremylt 190436c2adSjeremylt n=10 200436c2adSjeremylt val=3.0 210436c2adSjeremylt 220436c2adSjeremylt call ceedvectorcreate(ceed,n,x,err) 230436c2adSjeremylt 240436c2adSjeremylt do i=1,10 250436c2adSjeremylt a(i)=10+i 260436c2adSjeremylt enddo 270436c2adSjeremylt 280436c2adSjeremylt aoffset=0 290436c2adSjeremylt call ceedvectorsetarray(x,ceed_mem_host,ceed_use_pointer,a,aoffset,err) 300436c2adSjeremylt call ceedvectorgetarrayread(x,ceed_mem_host,b,boffset,err) 310436c2adSjeremylt 320436c2adSjeremylt do i=1,10 330436c2adSjeremylt diff=b(boffset+i)-10-i 340436c2adSjeremylt if (abs(diff)>1.0D-15) then 350436c2adSjeremylt! LCOV_EXCL_START 360436c2adSjeremylt write(*,*) 'Error reading array b(',i,')=',b(boffset+i) 370436c2adSjeremylt! LCOV_EXCL_STOP 380436c2adSjeremylt endif 390436c2adSjeremylt enddo 400436c2adSjeremylt 410436c2adSjeremylt call ceedvectorrestorearrayread(x,b,boffset,err) 420436c2adSjeremylt 430436c2adSjeremylt call ceedvectorsetvalue(x,val,err) 440436c2adSjeremylt call ceedvectorgetarrayread(x,ceed_mem_host,b,boffset,err) 450436c2adSjeremylt 460436c2adSjeremylt do i=1,10 470436c2adSjeremylt diff=b(boffset+i)-val 480436c2adSjeremylt if (abs(diff)>1.0D-15) then 490436c2adSjeremylt! LCOV_EXCL_START 500436c2adSjeremylt write(*,*) 'Error reading array b(',i,')=',b(boffset+i) 510436c2adSjeremylt! LCOV_EXCL_STOP 520436c2adSjeremylt endif 530436c2adSjeremylt enddo 540436c2adSjeremylt 550436c2adSjeremylt call ceedvectorrestorearrayread(x,b,boffset,err) 560436c2adSjeremylt 570436c2adSjeremylt call ceedvectordestroy(x,err) 580436c2adSjeremylt call ceeddestroy(ceed,err) 590436c2adSjeremylt 600436c2adSjeremylt end 610436c2adSjeremylt!----------------------------------------------------------------------- 62