[petsc-users] Coordinate format internal reordering

Enrico degregori at dkrz.de
Thu Oct 19 05:51:39 CDT 2023


Hello,

if I create an application ordering using AOCreateBasic, should I 
provide the same array for const PetscInt myapp[] and const PetscInt 
mypetsc[] in order to get the same ordering of the application within PETSC?

And once I define the ordering so that the local vector and matrix are 
defined in PETSC as in my application, how can I use it to create the 
actual vector and matrix?

Thanks in advance for the help.

Cheers,
Enrico

On 18/10/2023 13:39, Matthew Knepley wrote:
> On Wed, Oct 18, 2023 at 5:55 AM Enrico <degregori at dkrz.de 
> <mailto:degregori at dkrz.de>> wrote:
> 
>     Hello,
> 
>     I'm trying to use Petsc to solve a linear system in an application. I'm
>     using the coordinate format to define the matrix and the vector (it
>     should work better on GPU but at the moment every test is on CPU).
>     After
>     the call to VecSetValuesCOO, I've noticed that the vector is storing
>     the
>     data in a different way from my application. For example with two
>     processes in the application
> 
>     process 0 owns cells 2, 3, 4
> 
>     process 1 owns cells 0, 1, 5
> 
>     But in the vector data structure of Petsc
> 
>     process 0 owns cells 0, 1, 2
> 
>     process 1 owns cells 3, 4, 5
> 
>     This is in principle not a big issue, but after solving the linear
>     system I get the solution vector x and I want to get the values in the
>     correct processes. Is there a way to get vector values from other
>     processes or to get a mapping so that I can do it myself?
> 
> 
> By definition, PETSc vectors and matrices own contiguous row blocks. If 
> you want to have another,
> global ordering, we support that with 
> https://petsc.org/main/manualpages/AO/ 
> <https://petsc.org/main/manualpages/AO/>
> 
>    Thanks,
> 
>       Matt
> 
>     Cheers,
>     Enrico Degregori
> 
> 
> 
> -- 
> What most experimenters take for granted before they begin their 
> experiments is infinitely more interesting than any results to which 
> their experiments lead.
> -- Norbert Wiener
> 
> https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>


More information about the petsc-users mailing list