[petsc-dev] Meaning of PETSc matrices with zero rows but nonzero columns?

Stefano Zampini stefano.zampini at gmail.com
Sat May 30 18:09:16 CDT 2020

> On May 31, 2020, at 1:03 AM, Jed Brown <jed at jedbrown.org> wrote:
> Stefano Zampini <stefano.zampini at gmail.com> writes:
>> If A is 0x8 and B is 8x5 then C is correct to be of size 0x5. The rows and columns of the resulting matrix have to follow the rules.
> Right, I think if you said C is 0x0 (which seems like Richard's proposal), you'd need to relax shape compatibility logic in many places, including in ways that might produce confusing errors.


In the triple matrix product case, your code will break, because the operation will no longer be associative

A 3x0, B 0x8, C 8x7 -> (ABC) is a valid 3x7 matrix (empty) 

If I understand you right, (AB)  would be  a 0x0 matrix, and it can no longer be multiplied against C

> Richard, what is the hardship in preserving the shape relations?

More information about the petsc-dev mailing list