Hi all,first, I sent the stuff to Petsc and they want to include it (otherwise it would not make any sense to make the changes in libmesh I guess). second, I didn't include the "switch" for enableing or disableing for the configure, I just included the necessary things in linear solver / petsc_linear_solver and in linear_implicit_system. I assume it is not the most elegant way I did it ( I leave that to the pros) but it works just fine and it does not affect older code. I will make the diff now and setup a little example program to show the functionality.
to answer Jed's question (Why is a special interface needed from libmesh?) There are certain petsc functions that need to be included additionally but most important, I chose to handle the recycle space (that will be reused from one solve to the other) at the linear implicit system, so outside from petsc. This way it is easier to switch between solvers etc. without reallocating memory and the recycle space is easier to manipulate (there is a lot of freedom and potential for optimization)
Thanks, Jan Am 18.12.2010 06:23, schrieb Roy Stogner:
On Sat, 18 Dec 2010, Jed Brown wrote:On Fri, Dec 17, 2010 at 10:49, Jan Biermann <[email protected]> wrote:I just implemented two new solvers in Petsc that make use of Krylov subspace recycling, which means that if you have to solve a sequence of linear systems, the overall cost can be reduced significantly (by 10 to 100).Have you sent these to [email protected]? We would be happy to addthem. Why is a special interface needed from libmesh?Just to enable/disable the recycling, I'd assume? Our LinearSolver doesn't know a priori how related each solve is to the previous. --- Roy
<<attachment: biermann.vcf>>
------------------------------------------------------------------------------ Lotusphere 2011 Register now for Lotusphere 2011 and learn how to connect the dots, take your collaborative environment to the next level, and enter the era of Social Business. http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________ Libmesh-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-devel
