1 2 static char help[]= "Tests ISLocalToGlobalMappingCreateIS() for bs > 1.\n\n"; 3 4 #include <petscis.h> 5 #include <petscviewer.h> 6 7 int main(int argc,char **argv) 8 { 9 PetscErrorCode ierr; 10 PetscInt bs = 2,n = 3,ix[3] = {1,7,9},iy[2] = {0,2},mp[2]; 11 IS isx; 12 ISLocalToGlobalMapping ltog; 13 14 ierr = PetscInitialize(&argc,&argv,(char*)0,help);if (ierr) return ierr; 15 16 CHKERRQ(ISCreateBlock(PETSC_COMM_SELF,bs,n,ix,PETSC_COPY_VALUES,&isx)); 17 CHKERRQ(ISLocalToGlobalMappingCreateIS(isx,<og)); 18 19 CHKERRQ(PetscIntView(2,iy,PETSC_VIEWER_STDOUT_WORLD)); 20 CHKERRQ(ISLocalToGlobalMappingApply(ltog,2,iy,mp)); 21 CHKERRQ(PetscIntView(2,mp,PETSC_VIEWER_STDOUT_WORLD)); 22 23 CHKERRQ(PetscIntView(2,iy,PETSC_VIEWER_STDOUT_WORLD)); 24 CHKERRQ(ISLocalToGlobalMappingApplyBlock(ltog,2,iy,mp)); 25 CHKERRQ(PetscIntView(2,mp,PETSC_VIEWER_STDOUT_WORLD)); 26 27 CHKERRQ(ISLocalToGlobalMappingDestroy(<og)); 28 CHKERRQ(ISDestroy(&isx)); 29 30 ierr = PetscFinalize(); 31 return ierr; 32 } 33 34 /*TEST 35 36 test: 37 38 TEST*/ 39