static char help[] = "Reads in a matrix and vector in ASCII slap format. Writes\n\ them using the PETSc sparse format. Input parameters are:\n\ -fin : input file\n\ -fout : output file\n\n"; #include "petscmat.h" #undef __FUNCT__ #define __FUNCT__ "main" int main(int argc,char **args) { Mat A; Vec b; char filein[PETSC_MAX_PATH_LEN],fileout[PETSC_MAX_PATH_LEN]; PetscInt i,j,m,n,nnz,start,end,*col,*row,*brow,length; PetscErrorCode ierr; PetscMPIInt size,rank; PetscScalar *val,*bval; FILE* file; PetscViewer view; PetscTruth opt; PetscInitialize(&argc,&args,(char *)0,help); /* Read in matrix and RHS */ ierr = PetscOptionsGetString(PETSC_NULL,"-fin",filein,PETSC_MAX_PATH_LEN-1,&opt);CHKERRQ(ierr); if (!opt) { SETERRQ(PETSC_ERR_ARG_WRONG, "No filename was specified for this test"); } ierr = MPI_Comm_rank(PETSC_COMM_WORLD,&rank);CHKERRQ(ierr); ierr = MPI_Comm_size(PETSC_COMM_WORLD,&size);CHKERRQ(ierr); ierr = PetscFOpen(PETSC_COMM_SELF,filein,"r",&file);CHKERRQ(ierr); fscanf(file," NUNKNS =%d NCOEFF =%d\n",&n,&nnz); fscanf(file," JA POINTER IN SLAPSV\n"); ierr = MatCreateSeqAIJ(PETSC_COMM_WORLD,n,n,20,0,&A);CHKERRQ(ierr); ierr = VecCreate(PETSC_COMM_WORLD,&b);CHKERRQ(ierr); ierr = VecSetSizes(b,PETSC_DECIDE,n);CHKERRQ(ierr); ierr = VecSetFromOptions(b);CHKERRQ(ierr); ierr = PetscMalloc((n+1)*sizeof(PetscInt),&col);CHKERRQ(ierr); for (i=0; i n) end = n; for (j=start; j