Its best to use PetscInt here. Satish
On Tue, 2 Jun 2020, Evan Um wrote: > Hi Satish, > > Thanks for your reply. > When the code is compiled using the petsc library built with the option, an > error message suggests that I need to use 'long long' rather than 'int'. I > can replace variable types with long long in my codes, but I am wondering > if there is any better way. If I replace 'int' with 'long long', it means > that I have to maintain two versions of PETSC application codes for small > and big problems. > > Best, > Evan > > On Tue, Jun 2, 2020 at 1:47 PM Satish Balay <[email protected]> wrote: > > > You need PetscInt to be 64-bit-integer - so rebuild PETSc with the option: > > --with-64-bit-indices=1 > > > > Satish > > > > On Tue, 2 Jun 2020, Evan Um wrote: > > > > > Dear PETSC users, > > > > > > Using C++, I tried to build a very large sparse matrix and had a problem > > > shown below. Indices of the matrix should be "long int" rather than "int" > > > but PETSC does not allow this. How could I dodge this problem? Thanks for > > > your comments. > > > > > > Regards, > > > Evan > > > > > > fe.cpp(2009): error: argument of type "long *" is incompatible with > > > parameter of type "const PetscInt={int} *" > > > ierr=MatSetValues(Bseq, 1, &mat_b_i_partitioned[i], 1, > > > &mat_b_j_partitioned[i], &mat_b_val_partitioned[i], ADD_VALUES); > > > > > > > >
