[petsc-users] Tensor product as matrix free method

Mathis Friesdorf mathisfriesdorf at gmail.com
Tue Apr 1 09:48:08 CDT 2014


P.S. the individual matrix S is usually rather small, say 3x3 or 6x6


On Tue, Apr 1, 2014 at 4:47 PM, Mathis Friesdorf
<mathisfriesdorf at gmail.com>wrote:

> Thanks Jed, this is great. I was trying to implement what was proposed in
> http://lists.mcs.anl.gov/pipermail/petsc-users/2011-September/009991.html,
> by you as I just realised. For this the matrices would be of varying size,
> so for three local systems, I would need:
>
> S \otimes Id \otimes Id ; Id \otimes S \otimes Id ; Id \otimes Id \otimes
> S.
>
> Realistic systems are of the order of at least 20 local systems, which
> would mean that I need the matrices of the above structure for all 20
> possible positions.
>
> Again, I really appreciate the help. Thanks, Mathis
>
>
> On Tue, Apr 1, 2014 at 4:39 PM, Jed Brown <jed at jedbrown.org> wrote:
>
>> Mathis Friesdorf <mathisfriesdorf at gmail.com> writes:
>>
>> > Thanks Jed! The libaries you are pointing to look very interesting
>> indeed.
>> > For the particular implementation I have in mind, I was hoping to get
>> away
>> > with something easier, as my time to work on this is a bit limited. All
>> I
>> > really need is a way to construct a block-diagonal matrix where each
>> block
>> > is given by the same matrix and all blocks are on the diagonal. Am I
>> wrong
>> > to assume that this should be possible to implement with TAIJ?
>>
>> That is exactly TAIJ.  How large are the diagonal blocks?  The
>> implementation is intended to be fast only for small sizes, though I
>> could make it good for large sizes as well.  In the special case of
>>
>>   (I \otimes S) X
>>
>> where I is the sparse identity and S is the dense diagonal block, this
>> involves interpreting X as a matrix rather than a vector and using dgemm.
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140401/ae8ffe80/attachment.html>


More information about the petsc-users mailing list