← Back to team overview

dolfin team mailing list archive

Re: [Branch ~dolfin-core/dolfin/trunk] Rev 7415: Merge start of work on consolidating assemblers.

 

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.

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
>>>
>


Follow ups

References