On Wed, 28 Aug 2013, Praveen C wrote: > I found that TransientExplicitSystem does not have any mass matrix. I wrote > my explicit dg code with TransientLinearImplicitSystem and it works. > However I end up computing mass matrix every time step
Hmm... it would be easy enough for you to add an "already_computed" flag and then skip the mass matrix assembly after the first time it's turned on. > and I am not able to solve the matrices at element level. This, on the other hand, would not be so easy. Your proposed alternative looks uglier but is probably much more efficient. > I want to use the TransientExplicitSystem. I want to store the mass matrix > as > > std::vector< DenseMatrix<Real> > > > with one small mass matrix per element. I can then solve at element level > using cholesky_solve function available in DenseMatrix. But where do I > store this matrix? Personally, I'd make a subclass of TransientExplicitSystem with that as a member object; there are lots of good options though. > Is it good to store it in the parameters and then access it in the > assemble function ? Just as long as you keep the parameters access *out* of any inner loops, by getting a reference to it at the beginning of the assembly function. String manipulation once per assembly is cheap; once per quadrature point is not. --- Roy ------------------------------------------------------------------------------ Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more! Discover the easy way to master current and previous Microsoft technologies and advance your career. Get an incredible 1,500+ hours of step-by-step tutorial videos with LearnDevNow. Subscribe today and save! http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
