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