dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #20946
Re: [Bug 706909] [NEW] [python] matrix multiplication fails in parallel
On 24/01/11 17:17, Johan Hake wrote:
> Isn't there a way to initialize a paralell vector with arbitrary distribution
> pattern?
>
> There is a way to general a local range from a given entity size using
> MPI.local_range. One should be able to generate a distributed Vector with this
> information.
>
This isn't guaranteed to work since using MPI.local_range may produce a
vector with a layout that is inconsistent with the matrix layout.
A Vector could be created using the local range data from the Matrix.
Garth
> Johan
>
> On Monday January 24 2011 05:17:21 Joachim Haga wrote:
>> Public bug reported:
>>
>> The python code for __mul__() assumes an empty vector suitable for
>> mult() can be created from just the dimensions of the matrix:
>>
>> if type(other) == Vector:
>> ret = Vector(self.size(0))
>>
>> This is not true in parallel. And it won't help to copy the input
>> vector, as that only works for square matrices.
>>
>> How to create a vector which is compatible with a given matrix at this
>> point (only the matrix available, not the sparsity pattern)? Would it
>> perhaps be acceptable to add methods create_rhs_vector(),
>> create_lhs_vector() to GenericMatrix?
>>
>> ** Affects: dolfin
>> Importance: Undecided
>> Status: New
>
> _______________________________________________
> Mailing list: https://launchpad.net/~dolfin
> Post to : dolfin@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dolfin
> More help : https://help.launchpad.net/ListHelp
Follow ups
References