On 02/13/2013 03:58 PM, Garth N. Wells wrote: > On 13 February 2013 14:36, Johan Hake <[email protected]> wrote: >> On 02/13/2013 03:14 PM, Garth N. Wells wrote: >>> On 13 February 2013 13:25, Johan Hake <[email protected]> wrote: >>>> On 02/13/2013 12:59 PM, Garth N. Wells wrote: >>>>> On 13 February 2013 11:52, Johan Hake <[email protected]> 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, [email protected] wrote: >>>>>>> Merge authors: >>>>>>> Garth Wells (garth-wells) >>>>>>> ------------------------------------------------------------ >>>>>>> revno: 7415 [merge] >>>>>>> committer: Garth N. Wells <[email protected]> >>>>>>> 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 : [email protected] >>>>>> Unsubscribe : https://launchpad.net/~dolfin >>>>>> More help : https://help.launchpad.net/ListHelp >>>> >> _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : [email protected] Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp

