MatMult with nonconforming error

Barry Smith bsmith at mcs.anl.gov
Mon Nov 16 10:35:19 CST 2009


    With y = A x the row partition of A MUST match the row partition  
of y and the column partition of A MUST match the row partition of x.

    There is no avoiding this,

     Barry


On Nov 16, 2009, at 10:08 AM, SUN Chun wrote:

> Hi,
>
> I was trying to do MatMult with a non-square matrix and a vector.  
> They have different local dimensions.
>
> For this particular case, my Mat is 12x48, my Vec is 48x1.When I run  
> in parallel with 2 cores, I have Mat partitioned by row in 12+0, and  
> I have Vec partitioned by row in 18+30. When I perform MatMult, I get:
>
> [0]PETSC ERROR: --------------------- Error Message  
> ------------------------------------
> [0]PETSC ERROR: Nonconforming object sizes!
> [0]PETSC ERROR: Incompatible partition of A (24) and xx (18)!
> [0]PETSC ERROR:  
> ------------------------------------------------------------------------
>
> Is it required to partition Vec and Mat such that my Vec's row  
> partition agrees my Mat's column partition? If so, is there any way  
> to get around this?
>
> Thanks,
> Chun



More information about the petsc-users mailing list