dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #26354
Re: [Branch ~dolfin-core/dolfin/trunk] Rev 7415: Merge start of work on consolidating assemblers.
-
To:
"Garth N. Wells" <gnw20@xxxxxxxxx>
-
From:
Johan Hake <hake.dev@xxxxxxxxx>
-
Date:
Wed, 13 Feb 2013 16:00:10 +0100
-
Cc:
dolfin-dev <dolfin@xxxxxxxxxxxxxxxxxxx>
-
In-reply-to:
<CAA4C66Ma5D0bpXZeHcHbjF0yN=6GC2Bovr33WRqF+oAPWQJrVg@mail.gmail.com>
-
User-agent:
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130106 Thunderbird/17.0.2
On 02/13/2013 03:58 PM, Garth N. Wells wrote:
> On 13 February 2013 14:36, Johan Hake <hake.dev@xxxxxxxxx> wrote:
>> On 02/13/2013 03:14 PM, Garth N. Wells wrote:
>>> On 13 February 2013 13:25, Johan Hake <hake.dev@xxxxxxxxx> wrote:
>>>> On 02/13/2013 12:59 PM, Garth N. Wells wrote:
>>>>> On 13 February 2013 11:52, Johan Hake <hake.dev@xxxxxxxxx> wrote:
>>>>>> Will the functionality of SymmetricAssembler reappear when the
>>>>>> assemblers are consolidated?
>>>>>>
>>>>>
>>>>> Do you mean assembling just the lhs or rhs? That's already in place.
>>>>
>>>> But can you do this in a symmetric way when you have DirichletBC?
>>>>
>>>
>>> Yes.
>>>
>>>>> Assembling two global sparse matrices will not return. It costs CPU
>>>>> time and memory, which means it was no good for large problems.
>>>>
>>>> The point with SystemAssemble was to cover the case when your system
>>>> matrix does not change but your rhs does. Then you only assemble two
>>>> matrices once and in your time loop you only assemble the rhs, and apply
>>>> a matrix vector product to obtain the symmetric new rhs.
>>>>
>>>
>>> Assembling a second global sparse matrix is overkill to do this.
>>>
>>> It can be done be just computing the local matrix for the cells that have a bc.
>>>
>>> It's supported by SystemAssembler, but needs a bit more performance polish.
>>
>> Yes, but here you assemble the system matrix in each assemble, right?
>
> Eventually no. I've just checked the interface, and the function for
> computing just A or b have disappeared from SystemAssembler. I'll add
> them back.
Ok.
Johan
> Garth
>
>> This was what you could avoid with SymmetricAssembler if you knew it was
>> only your rhs that changed.
>>
>> Johan
>>
>>> Garth
>>>
>>>> Johan
>>>>
>>>>> Garth
>>>>>
>>>>>> Johan
>>>>>>
>>>>>> On 02/13/2013 10:00 AM, noreply@xxxxxxxxxxxxx wrote:
>>>>>>> Merge authors:
>>>>>>> Garth Wells (garth-wells)
>>>>>>> ------------------------------------------------------------
>>>>>>> revno: 7415 [merge]
>>>>>>> committer: Garth N. Wells <gnw20@xxxxxxxxx>
>>>>>>> branch nick: trunk
>>>>>>> timestamp: Wed 2013-02-13 08:59:32 +0000
>>>>>>> message:
>>>>>>> Merge start of work on consolidating assemblers.
>>>>>>> removed:
>>>>>>> dolfin/fem/SymmetricAssembler.cpp
>>>>>>> dolfin/fem/SymmetricAssembler.h
>>>>>>> modified:
>>>>>>> dolfin/fem/assemble.cpp
>>>>>>> dolfin/fem/assemble.h
>>>>>>> dolfin/fem/dolfin_fem.h
>>>>>>> dolfin/swig/fem/docstrings.i
>>>>>>> dolfin/swig/modules/fem/dependencies.txt
>>>>>>> dolfin/swig/modules/fem/module.i
>>>>>>> site-packages/dolfin/compilemodules/swigimportinfo.py
>>>>>>> The size of the diff (577 lines) is larger than your specified limit of 500 lines
>>>>>>>
>>>>>>> --
>>>>>>> lp:dolfin
>>>>>>> https://code.launchpad.net/~dolfin-core/dolfin/trunk
>>>>>>>
>>>>>>> Your team DOLFIN Core Team is subscribed to branch lp:dolfin.
>>>>>>> To unsubscribe from this branch go to https://code.launchpad.net/~dolfin-core/dolfin/trunk/+edit-subscription
>>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Mailing list: https://launchpad.net/~dolfin
>>>>>> Post to : dolfin@xxxxxxxxxxxxxxxxxxx
>>>>>> Unsubscribe : https://launchpad.net/~dolfin
>>>>>> More help : https://help.launchpad.net/ListHelp
>>>>
>>
References