dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #20949
Re: [Bug 706909] [NEW] [python] matrix multiplication fails in parallel
On 24/01/11 17:45, Johan Hake wrote:
> On Monday January 24 2011 09:43:45 Johan Hake wrote:
>> On Monday January 24 2011 09:33:12 Garth N. Wells wrote:
>>> 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.
>>
>> Ok.
>>
>>> A Vector could be created using the local range data from the Matrix.
>>
>> Is this possible to do using the GenericMatrix inteface?
>
> GenericVector that should be.
>
Yes, via
GenericVector::resize(std::pair<uint, uint> range)
Garth
> Johan
>
>> Johan
>>
>>> 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
>>>
>>> _______________________________________________
>>> 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