1 2 static char help[] = "Tests PetscSortIntWithPermutation().\n\n"; 3 4 #include <petscsys.h> 5 6 int main(int argc,char **argv) 7 { 8 PetscInt i; 9 PetscInt x[] = {39, 9, 39, 39, 29},index[5]; 10 PetscInt x2[] = {39, 9, 19, 39, 29, 39, 29, 39},index2[8]; 11 PetscErrorCode ierr; 12 13 ierr = PetscInitialize(&argc,&argv,(char*)0,help);if (ierr) return ierr; 14 ierr = PetscPrintf(PETSC_COMM_SELF,"1st test\n");CHKERRQ(ierr); 15 for (i=0; i<5; i++) index[i] = i; 16 ierr = PetscSortIntWithPermutation(5, x, index);CHKERRQ(ierr); 17 for (i=0; i<5; i++) {ierr = PetscPrintf(PETSC_COMM_SELF," %D %D %D\n",x[i], index[i],x[index[i]]);CHKERRQ(ierr);} 18 19 ierr = PetscPrintf(PETSC_COMM_SELF,"\n2nd test\n");CHKERRQ(ierr); 20 for (i=0; i<8; i++) index2[i] = i; 21 ierr = PetscSortIntWithPermutation(8, x2, index2);CHKERRQ(ierr); 22 for (i=0; i<8; i++) {ierr = PetscPrintf(PETSC_COMM_SELF," %D %D %D\n",x2[i], index2[i],x2[index2[i]]);CHKERRQ(ierr);} 23 ierr = PetscFinalize(); 24 return ierr; 25 } 26 27 28 29 /*TEST 30 31 test: 32 33 34 TEST*/ 35