It is only implemented for SeqAIJ, but it should arguably have a default implementation that performs an explicit transpose and then calls MatMatMatMult or MatPtAP.
Franck Houssen <[email protected]> writes: > I read the doc, and googled this before to write a dummy example. So, matRARt > is only for sequential matrices, and, matPtAP for distributed ones : correct > ? (means, I "just" used the "wrong" method) > If so, this is a major difference which does not seem (to me) to be > emphasized enough in the doc, in particular for a new user (the matRARt and > matPtAP pages are the same with R replaced with Pt). Where was it possible to > find this information ? > > Franck > > ----- Mail original ----- > >> De: "Dave May" <[email protected]> >> À: "Franck Houssen" <[email protected]>, "PETSc users list" >> <[email protected]>, "petsc-dev" <[email protected]> >> Envoyé: Mercredi 21 Juin 2017 15:11:27 >> Objet: Re: [petsc-users] How to compute RARt with A and R as distributed >> (MPI) matrices ? > >> You can assemble R^t and then use MatPtAP which supports MPIAIJ > >> On Wed, 21 Jun 2017 at 15:00, Franck Houssen < [email protected] > >> wrote: > >> > How to compute RARt with A and R as distributed (MPI) matrices ? >> > >> > This works with sequential matrices. >> >> > The doc say "currently only implemented for pairs of AIJ matrices and >> > classes >> > which inherit from AIJ": I supposed that MPIAIJ was someway inheriting from >> > AIJ, seems that it doesn't. >> > >> > Is this kind of matrix product possible with distributed matrices in PETSc >> > ? >> > Or is this a known limitation ? >> >> > Do I go the wrong way to do that (= should use another method) ? If yes, >> > what >> > is the correct one ? >> > >> > Franck >> > >> > PS: running debian/testing + gcc-6.3 + bitbucket petsc. >> > >> > >> mpirun -n 2 matRARt.exe seq >> >> > Mat Object: 1 MPI processes >> >> > type: seqaij >> >> > row 0: (0, 1.) (1, 0.) >> >> > row 1: (0, 0.) (1, 1.) >> > >> > >> mpirun -n 2 matRARt.exe mpi >> >> > [0]PETSC ERROR: --------------------- Error Message >> > -------------------------------------------------------------- >> >> > [0]PETSC ERROR: No support for this operation for this object type >> >> > [0]PETSC ERROR: Matrix of type <mpiaij> does not support RARt >>
signature.asc
Description: PGP signature
